
.configurator-hero { overflow: hidden; }
.configurator-hero-grid { align-items: center; }
.button-row { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.configurator-status-card {
  padding: 34px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(16, 41, 55, 0.08);
}
.configurator-status-card ol { margin: 18px 0 0; padding-left: 20px; display: grid; gap: 12px; }
.configurator-section { padding: 76px 0; }
.configurator-family-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
.configurator-family-card {
  display: grid;
  gap: 16px;
  padding: 28px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(16, 41, 55, 0.08);
}
.configurator-family-card.is-active {
  outline: 2px solid rgba(0, 115, 159, 0.25);
}
.configurator-family-card h3,
.configurator-family-card p { margin: 0; }
.configurator-options { display: flex; gap: 10px; flex-wrap: wrap; }
.configurator-options span {
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(0, 115, 159, 0.06);
  font-weight: 700;
}
.configurator-note {
  margin-top: 26px;
  padding: 24px;
  border-radius: 24px;
  background: rgba(0, 115, 159, 0.06);
}
.configurator-note h3,
.configurator-note p { margin: 0; }
.configurator-note h3 { margin-bottom: 8px; }
.configurator-teaser-section { padding: 56px 0; }
.configurator-teaser-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 28px;
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(16, 41, 55, 0.08);
}
.configurator-teaser-box h2,
.configurator-teaser-box p { margin: 0; }
@media (max-width: 860px) {
  .configurator-family-grid { grid-template-columns: 1fr; }
  .configurator-teaser-box { align-items: flex-start; flex-direction: column; }
}


.configurator-family-overview {
  padding: 56px 0 12px;
}

#konfigurator-live {
  scroll-margin-top: 110px;
}
