
.zs-zutritt-overview{
  --zs-primary:#21479b;
  --zs-secondary:#1495e1;
  --zs-card-bg:#fff;
  --zs-text:#18324a;
  --zs-muted:#5d6b7d;
  --zs-button-bg:#21479b;
  --zs-button-text:#fff;
  --zs-radius:18px;
  --zs-shadow:0 10px 24px rgba(19,34,56,.08);
  --zs-cols:3;
}
.zs-zutritt-head{margin:0 0 28px}
.zs-zutritt-head h2{
  margin:0 0 12px;
  color:var(--zs-primary);
  font-size:clamp(28px,3.1vw,44px);
  line-height:1.14;
  font-weight:700;
}
.zs-zutritt-head p{
  margin:0;
  max-width:900px;
  color:var(--zs-muted);
  font-size:18px;
  line-height:1.8;
}
.zs-zutritt-grid{
  display:grid;
  grid-template-columns:repeat(var(--zs-cols),minmax(0,1fr));
  gap:22px;
}
.zs-zutritt-card{
  background:var(--zs-card-bg);
  border-radius:var(--zs-radius);
  box-shadow:var(--zs-shadow);
  overflow:hidden;
  height:100%;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(20,149,225,.08);
}
.zs-zutritt-card-top{
  height:8px;
  background:linear-gradient(90deg,var(--zs-primary),var(--zs-secondary));
}
.zs-zutritt-card-inner{
  padding:24px 24px 22px;
  display:flex;
  flex-direction:column;
  height:100%;
}
.zs-zutritt-card h3{
  margin:0 0 12px;
  color:var(--zs-text);
  font-size:24px;
  line-height:1.25;
  font-weight:700;
}
.zs-zutritt-card p{
  margin:0 0 20px;
  color:var(--zs-muted);
  font-size:16px;
  line-height:1.8;
  flex:1 1 auto;
}
.zs-zutritt-btn{
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:10px;
  text-decoration:none !important;
  background:var(--zs-button-bg);
  color:var(--zs-button-text) !important;
  border-radius:999px;
  padding:12px 18px;
  font-weight:700;
  line-height:1;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  box-shadow:0 8px 18px rgba(33,71,155,.18);
}
.zs-zutritt-btn:hover,
.zs-zutritt-btn:focus{
  transform:translateY(-1px);
  opacity:.96;
  color:var(--zs-button-text) !important;
}
.zs-zutritt-btn svg{
  width:18px;
  height:18px;
}
@media (max-width: 1024px){
  .zs-zutritt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width: 767px){
  .zs-zutritt-head p{font-size:16px; line-height:1.7}
  .zs-zutritt-grid{grid-template-columns:1fr; gap:16px}
  .zs-zutritt-card-inner{padding:20px 18px}
  .zs-zutritt-card h3{font-size:22px}
}
