
.sf {
  clear: both;
  font-family: 'Space Mono', ui-monospace, Menlo, Consolas, 'Courier New', monospace;
  font-size: 12px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.02em;
  text-align: left;
  -webkit-font-smoothing: antialiased;
}
@media (min-width: 1000px) { .sf { font-size: 11.5px; } }

.sf-innen { max-width: 45em; margin: 0 auto; padding: 2.9em 41px 5em; }
.sf-innen:after, .sf-spalten:after { content: ""; display: table; clear: both; }

.sf-nav { float: left; width: 62%; }
.sf-kontakt { float: right; width: 38%; padding-left: 3.4em; -webkit-box-sizing: border-box; box-sizing: border-box; }
.sf-liste { float: left; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-columns: auto; -moz-columns: auto; columns: auto; }
.sf-spalten .sf-liste { width: 57.5%; padding-right: 2em; }
.sf-spalten .sf-liste + .sf-liste { width: 42.5%; padding-right: 0; padding-left: 2em; }
@supports (display: flex) {
  @media (min-width: 800px) {
    .sf-innen { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; }
    .sf-innen:after { display: none; }
    .sf-nav, .sf-kontakt { float: none; -webkit-box-flex: 0; -ms-flex: 0 0 auto; flex: 0 0 auto; }
    .sf-kontakt { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -ms-flex-direction: column; flex-direction: column; }
    .sf-kontakt > p.sf-angabe { margin-top: auto; }
    .sf-kontakt > p:last-child { margin-bottom: 0; }
    .sf-nav .sf-liste > li:last-child { margin-bottom: 0; }
  }
}
@media (max-width: 799px) {
  .sf-kontakt, .sf-nav { float: none; width: auto; padding-left: 0; padding-right: 0; }
  .sf-kontakt { margin-top: 3.7em; }
}
@media (max-width: 439px) {
  .sf-spalten .sf-liste, .sf-spalten .sf-liste + .sf-liste { float: none; width: auto; padding-left: 0; padding-right: 0; }
}

.sf-kopf, .sf-kontakt p, .sf-name, .sf-besch { white-space: nowrap; }

.sf-kopf { margin: 0 0 1.4em; font-size: 1.25em; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase; font-variant: normal; }

.sf p { margin: 0 0 0.6em; }
.sf ul { list-style: none; margin: 0; padding: 0; }
.sf li { margin: 0 0 1.4em; }

.sf a { text-decoration: none; }
.sf-name { font-size: 1.05em; font-weight: 400; border-bottom: 1px solid; }
.sf-besch { display: block; margin-top: 0.35em; font-size: 0.9em; }
.sf a[aria-current] .sf-name { border-bottom-color: transparent; }

.sf-person { display: inline-block; font-size: 1em; font-weight: 400; margin-bottom: 0em; }
.sf-angabe { font-size: 1em; }
.sf-klein { font-size: 1em; }

html.sf-allein, html.sf-allein body { margin: 0; padding: 0; min-height: 100%; }
html.sf-allein body {
  display: -webkit-box; display: -ms-flexbox; display: flex;
  -webkit-box-align: center; -ms-flex-align: center; align-items: center;
  min-height: 100vh; min-height: 100dvh;
}
html.sf-allein .sf { width: 100%; position: relative; top: -5vh; }
html.sf-allein .sf-innen { padding-top: 5.1em; padding-bottom: 5.1em; }

html.ende-kreis { overscroll-behavior-y: none; }
html.ende-kreis .sf { min-height: 100vh; --sf-kreis-schaetzung: 14.93em; }
html.ende-kreis .sf-innen {
  -webkit-box-sizing: content-box; box-sizing: content-box;
  position: -webkit-sticky; position: sticky;
  top: calc((100vh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2 + -5vh + 2.2em);
}
@media (max-width: 799px) { html.ende-kreis .sf { --sf-kreis-schaetzung: 32.9em; } }
@media (max-width: 439px) { html.ende-kreis .sf { --sf-kreis-schaetzung: 44.35em; } }
@supports (top: max(0px, 1px)) {
  html.ende-kreis .sf-innen { top: calc(max(0px, (100vh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em); }
  html.ende-kreis .sf { min-height: calc(100vh + max(0px, 0px - (max(0px, (100vh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em))); }
  html.ende-kreis .sf-innen { padding-bottom: max(0px, min(5em, 100vh - (max(0px, (100vh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em) - 2.9em - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)))); }
}
@supports (min-height: 1dvh) {
  html.ende-kreis .sf { min-height: 100dvh; }
  html.ende-kreis .sf-innen { top: calc((100dvh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2 + -5vh + 2.2em); }
}
@supports (min-height: 1dvh) and (top: max(0px, 1px)) {
  html.ende-kreis .sf-innen { top: calc(max(0px, (100dvh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em); }
  html.ende-kreis .sf { min-height: calc(100dvh + max(0px, 0px - (max(0px, (100dvh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em))); }
  html.ende-kreis .sf-innen { padding-bottom: max(0px, min(5em, 100dvh - (max(0px, (100dvh - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)) - 10.2em) / 2) + -5vh + 2.2em) - 2.9em - var(--sf-kreis-inhalt, var(--sf-kreis-schaetzung)))); }
}

@media print { .sf { display: none !important; } }
