/* Icons „Kante“: inline-SVG aus assets/icons, Farbe über --ic-color, Größe über --ic (ICONS.md) */
.ic {
  display: block; flex: none;
  width: var(--ic, 20px); height: var(--ic, 20px);
  color: var(--ic-color, var(--igc-blue));
  overflow: visible;
}
.ground-blue { --ic-color: var(--on-blue); }

/* Liste mit Icon: Icon in eigener Spalte, hängender Einzug, mittig zur ersten Zeile */
.ilist { --ic: 20px; --ic-gap: 12px; list-style: none; margin: 0; padding: 0; }
.ilist > li {
  display: grid;
  grid-template-columns: var(--ic) minmax(0, 1fr);
  column-gap: var(--ic-gap);
  align-items: start;
}
.ilist > li > .ic { margin-top: calc((1lh - var(--ic)) / 2); }
.ilist > li + li { margin-top: 8px; }

/* Variante mit Trennlinien (wohnung) */
.ilist--ruled > li { padding: 8px 0; border-bottom: 1px solid var(--rule); }
.ilist--ruled > li + li { margin-top: 0; }
.ground-blue .ilist--ruled > li { border-bottom-color: var(--rule-on-blue); }

/* Variante in Lead-Größe (anfrage) */
.ilist--lead { font-size: 19px; line-height: 1.4; }
.ilist--lead > li + li { margin-top: 12px; }
@media (max-width: 767px) { .ilist--lead { font-size: 17px; } }

/* Rückfall für Browser ohne lh-Einheit (vor Safari 16.4) */
@supports not (height: 1lh) {
  .ilist > li > .ic { margin-top: calc((1.45em - var(--ic)) / 2); }
}
