/* schliessanlagen — page layout only (tokens from theme.css; no colours, no new sizes). */

/* 01 · Hero key tree: Einzelschlüssel chips inside each Hauptschlüssel node */
.snl-tree__keys { justify-content: center; gap: var(--sp-2); margin-top: var(--sp-2); }
.snl-tree__keys .chip { min-height: 0; padding: 4px 12px 4px 9px; }
.snl-tree .keytree__node { padding-inline: var(--sp-3); }
@media (max-width: 56.24em) {
	.snl-tree { max-width: 34rem; }
}

/* 02 · Anlagentypen: chips sit at the card foot so the three cards line up */
.snl-types .card__foot { gap: var(--sp-2); margin-top: auto; padding-top: var(--sp-3); }
.snl-more { margin-top: var(--sp-7); color: var(--c-muted); }

/* 04 · Schließplan grid: compact table that fits the half column and phones */
.snl-plan { align-items: start; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 56.25em) { .snl-plan { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } }
.snl-plan__table { min-width: 0; }
.snl-plan__table th, .snl-plan__table td { padding: 12px 14px; }
.snl-plan__table td { text-align: center; vertical-align: middle; }
.snl-plan__table thead th:not(:first-child) { text-align: center; }
@media (max-width: 30em) {
	.snl-plan__long { display: none; }
	.snl-plan__table { font-size: var(--fs-sm); }
	.snl-plan__table th, .snl-plan__table td { padding: 10px 8px; }
}
.snl-plan__figure figcaption { margin-top: var(--sp-3); }

/* 05 · Ablauf: the estate photo stays beside the timeline on desktop */
.snl-flow { align-items: start; }
.snl-flow__steps .step__n { flex: none; }
.snl-flow__steps .step__body { flex: 1 1 0%; min-width: 0; }
.snl-flow__steps .step:last-child { padding-bottom: 0; }
@media (min-width: 56.25em) {
	.snl-flow__media { position: sticky; top: calc(var(--admin-bar) + var(--header-h-s) + var(--sp-6)); }
}

/* 06 · Sicherungskarte: rules in one column beside the head; patent note as the panel footer · 07 hint */
.snl-hint { max-width: 860px; margin-top: var(--sp-7); }
.snl-hint--center { margin-inline: auto; }
@media (min-width: 62em) {
	.snl-rules { grid-template-columns: minmax(0, 1fr); align-self: center; }
}
.snl-rules__foot { flex-wrap: nowrap; align-items: flex-start; }
.snl-rules__foot .badge { flex: none; }
.snl-rules__foot p { font-size: var(--fs-base); line-height: 1.6; }

/* 08 · Kostenlose Beratung: the one phone card wider, the mail card beside it */
.snl-consult { display: grid; gap: var(--gap); }
@media (min-width: 56.25em) {
	.snl-consult { grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); align-items: stretch; }
	.snl-consult__mail { justify-content: center; }
}
.snl-consult__address { display: flex; align-items: center; gap: var(--sp-3); font-weight: 600; overflow-wrap: anywhere; }
.snl-consult__address .i { flex: none; width: 22px; height: 22px; color: var(--c-accent-text); }
