/* pflegereform-rechner.de: warm, menschlich, foto-getragen.
   Schrift: Atkinson Hyperlegible Next (OFL, selbst gehostet, siehe assets/fonts). Keine externen Ressourcen. */

@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-400-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 400; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-ext-400-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 700; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-700-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 700; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-ext-700-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 800; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-800-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Atkinson Hyperlegible Next"; font-style: normal; font-weight: 800; font-display: swap;
  src: url(/assets/fonts/atkinson-hyperlegible-next-latin-ext-800-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }

:root {
  --plum: #6B3A63;
  --plum-dark: #4F2A49;
  --ink: #2B2130;
  --smoke: #5F5664;
  --mist: #F5F1F6;
  --sage: #E3ECE5;
  --line: #E2DAE4;
  --white: #FFFFFF;
  --sans: "Atkinson Hyperlegible Next", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --r-ctl: 14px;
  --r-flaeche: 24px;
  --measure: 65ch;
  --rand: 20px;
}
@media (min-width: 768px) { :root { --rand: 32px; } }

*, *::before, *::after { box-sizing: border-box; }

html {
  font-size: 19px;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scrollbar-color: var(--plum) var(--mist);
  scroll-padding-top: 16px;
}
@media (min-width: 768px) { html { font-size: 20px; } }

body {
  margin: 0;
  background: var(--white);
  color: var(--ink);
  font-family: var(--sans);
  font-size: 1rem;
  line-height: 1.6;
  overflow-wrap: break-word;
}
::selection { background: rgba(107, 58, 99, .18); }
input, select, textarea, button { caret-color: var(--plum); accent-color: var(--plum); font: inherit; }

p, ul, ol, dl { margin: 0 0 1rem; }
ul, ol { padding-left: 1.3em; }
li { margin-bottom: .5rem; }
strong, b { font-weight: 700; }

h1, h2, h3, h4 { color: var(--ink); margin: 0; text-wrap: balance; letter-spacing: 0; }
h1 { font-size: clamp(32px, 6vw, 56px); font-weight: 800; line-height: 1.1; letter-spacing: -0.01em; }
h2 { font-size: clamp(26px, 3.6vw, 36px); font-weight: 700; line-height: 1.2; }
h3 { font-size: 1.2rem; font-weight: 700; line-height: 1.3; margin: 2rem 0 .5rem; }
h4 { font-size: 1.05rem; font-weight: 700; line-height: 1.35; margin: 0 0 .25rem; }

a { color: var(--plum); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: .18em; }
a:hover { color: var(--plum-dark); text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--plum); outline-offset: 2px; }

.skip { position: absolute; left: var(--rand); top: -80px; z-index: 10; background: var(--white); color: var(--plum); padding: 12px 16px; border-radius: var(--r-ctl); }
.skip:focus { top: 8px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
main { display: block; }
.klein { font-size: .85rem; line-height: 1.5; color: var(--smoke); }
.text { max-width: var(--measure); }

/* ---------- Kopf ---------- */
.kopf-innen { max-width: 1264px; margin: 0 auto; padding: 4px var(--rand); display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; }
.marke { display: inline-flex; align-items: center; min-height: 48px; font-weight: 700; font-size: 1rem; white-space: nowrap; color: var(--ink); text-decoration: none; }
.marke:hover { color: var(--plum); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .18em; }
.site-nav ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 32px; }
.site-nav li { margin: 0; }
.site-nav a { white-space: nowrap; display: inline-flex; align-items: center; min-height: 48px; font-weight: 700; }
.n-kurz { display: inline; }
.n-lang, .n-gross { display: none; }
@media (min-width: 768px) {
  .n-kurz { display: none; }
  .n-lang { display: inline; }
  .n-gross { display: block; }
}

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; text-align: center;
  min-height: 58px; padding: 12px 28px; border: 2px solid var(--plum); border-radius: var(--r-ctl);
  background: var(--plum); color: var(--white); font-weight: 700; font-size: 1.05rem; line-height: 1.3;
  text-decoration: none; cursor: pointer;
}
.btn:hover { background: var(--plum-dark); border-color: var(--plum-dark); color: var(--white); text-decoration: none; }
.btn-sek { background: var(--white); color: var(--plum); }
.btn-sek:hover { background: var(--mist); color: var(--plum-dark); border-color: var(--plum-dark); }

/* ---------- Hero ---------- */
.hero { position: relative; }
.hero-foto { height: 58vw; background: var(--mist); overflow: hidden; }
.hero-foto img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 70% 40%; color: transparent; }
.blatt { position: relative; margin-top: -28px; background: var(--white); border-radius: 24px 24px 0 0; padding: 28px var(--rand) 40px; }
.blatt h1 { margin-bottom: 1rem; }
.einstieg { max-width: 34em; margin-bottom: 1.5rem; }
.hero-aktion { margin: 0 0 .75rem; }
.hero-aktion .btn { width: 100%; }
.zusage { font-size: 16px; line-height: 1.5; color: var(--smoke); margin-bottom: 1.5rem; }
.stand { font-size: 16px; line-height: 1.5; color: var(--smoke); max-width: 34em; margin-bottom: 0; }
@media (min-width: 600px) { .hero-aktion .btn { width: auto; min-width: 20rem; } }
@media (min-width: 960px) {
  .hero { max-width: 1264px; margin: 16px auto 80px; padding: 0 var(--rand); }
  .hero-foto { height: 600px; border-radius: 28px; }
  .blatt h1 { font-size: clamp(32px, 3.5vw, 46px); }
  .blatt {
    position: absolute; left: calc(var(--rand) + 40px); bottom: -40px; margin: 0; width: 600px; max-width: calc(100% - 2 * var(--rand));
    padding: 40px; border-radius: var(--r-flaeche);
    box-shadow: 0 2px 4px rgba(43,33,48,.06), 0 24px 48px -16px rgba(43,33,48,.22);
  }
  .hero-aktion .btn { width: auto; min-width: 20rem; }
}

/* ---------- Rechner ---------- */
.rechner { background: var(--mist); padding: 56px 0 64px; scroll-margin-top: 0; }
.rechner-innen { max-width: 1264px; margin: 0 auto; padding: 0 var(--rand); }
.rechner-innen > * { max-width: 880px; }
.rechner h2 { margin-bottom: .5rem; }
.formular-intro { color: var(--smoke); max-width: var(--measure); margin-bottom: 2rem; }
.field { border: 0; margin: 0 0 2rem; padding: 0; min-width: 0; }
.field[hidden] { display: none; }
legend, .feld-label { display: block; padding: 0; margin: 0 0 .75rem; font-weight: 700; font-size: 1.1rem; line-height: 1.4; max-width: var(--measure); }
legend { float: left; width: 100%; }
legend + * { clear: both; }
.hint { font-size: 16px; line-height: 1.5; color: var(--smoke); margin: .5rem 0 0; max-width: var(--measure); }
.error { display: flex; align-items: flex-start; gap: 8px; margin: .75rem 0 0; font-size: 16px; line-height: 1.5; font-weight: 700; color: var(--plum-dark); max-width: var(--measure); }
.error[hidden] { display: none; }
.fehler-icon { flex: 0 0 20px; width: 20px; height: 20px; margin-top: 2px; fill: none; stroke: currentColor; stroke-width: 1.75; stroke-linecap: round; }
.error-summe { background: var(--white); color: var(--plum-dark); border: 2px solid var(--plum); border-radius: var(--r-ctl); padding: 16px 20px; margin: 0 0 2rem; }
.error-summe[hidden] { display: none; }
.error-summe p { display: flex; gap: 8px; margin: 0 0 .5rem; font-weight: 700; }
.error-summe ul { margin: 0; padding-left: 1.2em; }
.error-summe li { margin: 0 0 4px; }
.error-summe a { color: var(--plum-dark); }

.kacheln { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.kacheln.drei { grid-template-columns: repeat(3, 1fr); }
@media (min-width: 768px) { .kacheln.vier { grid-template-columns: repeat(4, 1fr); } .kacheln.zwei { grid-template-columns: repeat(2, minmax(0, 18rem)); } .kacheln.drei { grid-template-columns: repeat(3, minmax(0, 12rem)); } }
.kachel {
  position: relative; display: flex; align-items: center; justify-content: center; text-align: center;
  min-height: 64px; padding: 10px 12px; background: var(--white); border: 1.5px solid var(--line); border-radius: var(--r-ctl);
  line-height: 1.3; cursor: pointer; margin: 0; font-weight: 400;
}
.kachel input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.kachel:hover { border-color: var(--plum); }
.kachel:has(input:checked) { background: var(--plum); border-color: var(--plum); color: var(--white); font-weight: 700; }
.kachel:has(input:focus-visible) { outline: 3px solid var(--plum); outline-offset: 2px; }
.kachel:has(input[aria-invalid="true"]) { border-color: var(--plum-dark); border-width: 2px; }
.kachel.breit { justify-content: flex-start; text-align: left; gap: 14px; padding: 14px 16px; max-width: var(--measure); }
.kachel .box { position: relative; flex: 0 0 24px; width: 24px; height: 24px; border: 2px solid var(--plum); border-radius: 8px; background: var(--white); }
.kachel input:checked + .box::after { content: ""; position: absolute; left: 6px; top: 1px; width: 7px; height: 13px; border: solid var(--plum); border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }

.betrag-feld { position: relative; max-width: 16rem; }
.betrag-feld input { display: block; width: 100%; height: 56px; padding: 0 44px 0 16px; background: var(--white); color: var(--ink); border: 1.5px solid var(--line); border-radius: var(--r-ctl); font-size: 1.15rem; font-variant-numeric: tabular-nums; -moz-appearance: textfield; appearance: textfield; }
.betrag-feld input::-webkit-outer-spin-button, .betrag-feld input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.betrag-feld input:hover { border-color: var(--plum); }
.betrag-feld input[aria-invalid="true"] { border-color: var(--plum-dark); border-width: 2px; }
.einheit { position: absolute; right: 16px; top: 50%; transform: translateY(-50%); color: var(--smoke); font-weight: 700; pointer-events: none; }

.aktion { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 2.5rem; }
.aktion .btn:first-child { min-width: 14rem; }
.aktion .klein { margin: 0; flex: 1 1 14rem; }
.aktion .btn-sek { min-height: 48px; padding: 8px 20px; font-size: 1rem; border-color: var(--line); color: var(--plum); }
@media (max-width: 767px) { .aktion .btn:first-child { width: 100%; } .aktion .klein { flex-basis: 100%; } }

/* ---------- Ergebnis ---------- */
.ergebnis { margin-top: 3rem; }
.ergebnis:empty { display: none; }
.ergebnis-inhalt { background: var(--sage); border-radius: var(--r-flaeche); padding: 32px 20px 36px; animation: einblenden 320ms ease-out both; }
@media (min-width: 768px) { .ergebnis-inhalt { padding: 48px 48px 52px; } }
@keyframes einblenden { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.ergebnis-satz { font-size: 1.25rem; font-weight: 700; line-height: 1.35; margin: 0 0 .75rem; }
.ergebnis-satz:focus { outline: none; }
.ergebnis-satz:focus-visible { outline: 3px solid var(--plum); outline-offset: 4px; }
.betrag { display: block; font-size: clamp(40px, 9vw, 64px); font-weight: 800; line-height: 1.1; padding: .05em 0; font-variant-numeric: tabular-nums; }
.ergebnis-meta { color: var(--smoke); margin-bottom: 1rem; }
.ergebnis .hinweis { max-width: var(--measure); font-size: 16px; line-height: 1.5; background: none; padding: 0; margin-bottom: 1rem; }
.beruhigung { max-width: var(--measure); font-weight: 700; }
.erg-block > h3 { margin: 2.5rem 0 .75rem; font-size: 1.4rem; }
.erg-block > .klein { max-width: var(--measure); }
.leistungen, .vergleich { list-style: none; margin: 0; padding: 0; }
.leistungen > li, .vergleich > li { margin: 0; padding: 20px 0; border-top: 1px solid var(--line); }
.leistungen > li:last-child, .vergleich > li:last-child { border-bottom: 1px solid var(--line); }
.leistungen p, .vergleich p { max-width: var(--measure); }
.leistungen p:last-child, .vergleich li > p:last-child { margin-bottom: 0; }
.l-kopf { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 4px 24px; margin-bottom: .5rem; }
.l-name { margin: 0; font-size: 1.15rem; flex: 1 1 10rem; min-width: 0; hyphens: auto; }
.l-betrag { margin: 0; font-size: 1.25rem; font-weight: 800; max-width: none; font-variant-numeric: tabular-nums; flex: 0 1 auto; }
.l-klein { font-size: 16px; line-height: 1.5; color: var(--smoke); margin-bottom: .5rem; }
.v-name { margin-bottom: .5rem; }
.v-spalten { display: grid; gap: 8px 32px; margin-bottom: .5rem; }
.v-spalten p { margin: 0; }
@media (min-width: 640px) { .v-spalten { grid-template-columns: 1fr 1fr; } }
.l { display: block; font-size: 15px; color: var(--smoke); line-height: 1.4; }
.schritte { max-width: var(--measure); padding-left: 1.5em; }
.schritte li { padding-left: .35em; margin-bottom: .9rem; }
.schritte li::marker { font-weight: 800; color: var(--plum-dark); }
.mehr { margin-top: 1rem; }
.mehr dl { margin: 1rem 0 0; }
.mehr dt { font-weight: 700; margin-top: 1rem; }
.mehr dd { margin: 0; max-width: var(--measure); }
.mehr .vergleich { margin-top: 0; }

/* ---------- Anzeigen ---------- */
.anzeigen { margin: 3rem 0 1.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line); }
.anz-label { font-size: 15px; color: var(--smoke); margin: 0 0 .25rem; }
.anzeigen-kopf { margin: 0 0 .25rem; font-size: 1.4rem; }
.anz-hinweis { font-size: 16px; line-height: 1.5; color: var(--smoke); max-width: var(--measure); }
.eintrag { padding: 20px 0; border-top: 1px solid var(--line); }
.eintrag-titel { font-size: 1.1rem; margin: 0 0 .5rem; }
.eintrag p { max-width: var(--measure); }
.eintrag .btn { min-height: 52px; padding: 10px 22px; font-size: 1rem; }
@media (max-width: 767px) { .eintrag .btn { width: 100%; } }
.brief .anzeigen { border-top-color: var(--line); }

/* ---------- Abschnitte Startseite ---------- */
.abschnitt { padding: 56px 0; }
.abschnitt.flaeche { background: var(--mist); }
.abschnitt-innen { max-width: 1264px; margin: 0 auto; padding: 0 var(--rand); }
.abschnitt h2 { margin-bottom: 1rem; }
.abschnitt .text h3 { margin-top: 2rem; }

.aenderungen { list-style: none; margin: 2rem 0 2.5rem; padding: 0; display: grid; gap: 0 56px; }
@media (min-width: 900px) { .aenderungen { grid-template-columns: 1fr 1fr; } }
.aenderungen > li { margin: 0; padding: 22px 0; border-top: 1px solid var(--line); }
.aenderungen h3 { margin: 0 0 .75rem; font-size: 1.15rem; }
.vgl { margin: 0 0 .5rem; max-width: var(--measure); }
.erkl { margin: .75rem 0 0; max-width: var(--measure); color: var(--smoke); font-size: 16px; line-height: 1.5; }

.ratgeber-liste { list-style: none; margin: 1.5rem 0 0; padding: 0; max-width: 800px; }
.ratgeber-liste li { margin: 0; padding: 18px 0; border-top: 1px solid var(--line); }
.ratgeber-liste li:last-child { border-bottom: 1px solid var(--line); }
.ratgeber-liste a { font-weight: 700; font-size: 1.1rem; line-height: 1.35; }
.ratgeber-liste p { margin: .25rem 0 0; color: var(--smoke); max-width: var(--measure); }

details { border-bottom: 1px solid var(--line); margin: 0; }
details:first-of-type { border-top: 1px solid var(--line); }
summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 12px 0; font-weight: 700; cursor: pointer; list-style: none; }
summary::-webkit-details-marker { display: none; }
summary:hover { color: var(--plum); }
summary .pm { flex: 0 0 auto; width: 20px; height: 20px; }
summary .pm path { stroke: currentColor; stroke-width: 2; fill: none; stroke-linecap: round; }
details[open] > summary .pm .v { display: none; }
details > div { padding: 0 0 .5rem; }
details > div > p { max-width: var(--measure); }

.quellen { list-style: none; padding: 0; }
.quellen li { margin: 0; overflow-wrap: anywhere; }
.quellen a { display: inline-flex; align-items: center; min-height: 44px; font-size: 16px; }
.quellen .klein { font-size: 14px; }

/* ---------- Tabellen (Ratgeber, Verfahren) ---------- */
.tabelle-wrap { margin: 1rem 0 1.5rem; }
table { width: 100%; border-collapse: collapse; font-size: 16px; line-height: 1.5; font-variant-numeric: tabular-nums; }
caption { text-align: left; font-weight: 700; padding: 0 0 8px; }
th, td { padding: 12px 12px; text-align: left; vertical-align: top; border: 0; }
th:first-child, td:first-child { padding-left: 0; }
th:last-child, td:last-child { padding-right: 0; }
thead th { font-weight: 700; color: var(--smoke); border-bottom: 1.5px solid var(--line); }
tbody th { font-weight: 700; }
tbody tr + tr { border-top: 1px solid var(--line); }
.erledigt { font-weight: 700; color: var(--ink); }
.geplant { font-weight: 700; color: var(--smoke); }
@media (max-width: 899px) {
  .tabelle thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
  .tabelle, .tabelle tbody, .tabelle tr, .tabelle th, .tabelle td { display: block; width: 100%; }
  .tabelle tr { padding: 12px 0; }
  .tabelle th, .tabelle td { padding: 2px 0; }
  .tabelle tbody th { padding-bottom: 6px; }
  .tabelle td[data-label] { display: grid; grid-template-columns: minmax(6.5rem, 36%) 1fr; gap: 16px; }
  .tabelle td[data-label]::before { content: attr(data-label); font-weight: 700; font-size: 15px; color: var(--smoke); }
}

/* ---------- Ratgeberseiten, Rechtstexte ---------- */
.brief { max-width: calc(var(--measure) + 2 * var(--rand)); margin: 0 auto; padding: 40px var(--rand) 72px; }
.brief > h1 { margin-bottom: 1.25rem; }
.brief > h2 { margin: 3rem 0 .75rem; font-size: clamp(22px, 3vw, 28px); }
.brief > h3 { margin: 2rem 0 .5rem; }
.lead { font-size: 1.2rem; line-height: 1.5; }
.hinweis, .merke { background: var(--mist); border-radius: var(--r-ctl); padding: 16px 20px; margin: 1.5rem 0; font-size: 17px; line-height: 1.55; }
.hinweis { font-size: 17px; }
.merke h2 { font-size: 1.15rem; margin: 0 0 .5rem; font-weight: 700; }
.merke ul { margin-bottom: .25rem; }
.cta-rechner { margin: 3rem 0 2rem; padding: 24px 20px; background: var(--mist); border-radius: var(--r-flaeche); }
.cta-rechner p { margin-bottom: 1rem; }
@media (max-width: 767px) { .cta-rechner .btn { width: 100%; } }
.weiter { list-style: none; padding: 0; }
.weiter li { margin: 0 0 .5rem; }

/* ---------- Fuß ---------- */
.fuss-wrap { background: var(--ink); color: #EDE6EF; padding: 48px 0 40px; font-size: 16px; line-height: 1.55; }
.fuss-innen { max-width: 1264px; margin: 0 auto; padding: 0 var(--rand); }
.fuss { display: grid; gap: 28px; }
@media (min-width: 768px) { .fuss { grid-template-columns: 1fr 1fr 1.6fr; gap: 40px; } }
.fuss-wrap h2 { font-size: 1rem; font-weight: 700; line-height: 1.5; color: #FFFFFF; margin: 0 0 .25rem; }
.fuss-wrap p { margin: 0 0 .5rem; }
.fuss-wrap ul { list-style: none; margin: 0; padding: 0; }
.fuss-wrap li { margin: 0; }
.fuss-wrap a { color: #EDE6EF; display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; }
.fuss-wrap a:hover { color: #FFFFFF; }
.fuss-wrap :focus-visible { outline-color: #FFFFFF; }
.werbehinweis { margin: 32px 0 0; padding-top: 16px; border-top: 1px solid rgba(237, 230, 239, .28); max-width: 70ch; }

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media print {
  .site-nav, .btn, .anzeigen, .hero-foto { display: none; }
}
