/* FALK Theme 6.3.5 – Ergänzungen: Werkseiten (Problem → Lösung → Ratgeber), Preisangabe, Formulare, Service, Barrierefreiheit.
   Farben und Schriften nach FALK Design-Master. Goldtext nur auf Navy (#D6B36A) bzw. Dark Gold (#79551C) auf hellem Grund. */

/* Kopfzeile: Wortmarke neben dem Icon */
.falk-brand__name { font: 700 15px/1 var(--fr-display); letter-spacing: .02em; color: var(--fr-ivory); white-space: nowrap; }
.falk-brand__name span { color: var(--fr-gold); font-weight: 600; margin-left: .28em; }
@media (max-width: 380px) { .falk-brand__name span { display: none; } }

/* Preisangabe */
.falk-price { margin: 18px 0 4px; font-size: 20px; color: var(--falk-text); }
.falk-price strong { font-family: var(--fr-display); font-size: 22px; letter-spacing: -.01em; }
.falk-price span { font-size: 15px; color: var(--falk-muted); margin-left: 6px; }
.falk-price-note { font-size: 14px; line-height: 1.5; color: var(--falk-muted); max-width: 52ch; }
.falk-card-price { margin: 10px 0 0; font-weight: 700; font-size: 16px; }
.falk-product-values { list-style: none; margin: 18px 0 22px; padding: 0; display: grid; gap: 8px; }
.falk-product-values li { position: relative; padding-left: 26px; }
.falk-product-values li::before { content: ""; position: absolute; left: 0; top: .55em; width: 12px; height: 7px; border-left: 2.5px solid var(--falk-gold); border-bottom: 2.5px solid var(--falk-gold); transform: rotate(-45deg) translateY(-50%); }

/* Problem → Lösung */
.falk-pitch { display: grid; grid-template-columns: minmax(0, 1fr) 56px minmax(0, 1fr); gap: 0; align-items: stretch; margin: 48px 0; }
.falk-pitch__problem, .falk-pitch__solution { padding: clamp(24px, 3.5vw, 40px); border-radius: var(--fr-radius-xl); }
.falk-pitch__problem { background: #11273D; border: 1px solid rgba(203, 215, 225, .18); }
.falk-pitch__solution { background: var(--fr-ivory); color: var(--fr-text); }
.falk-pitch__solution .falk-kicker { color: var(--fr-gold-dark); }
.falk-pitch__problem .falk-kicker { color: var(--fr-gold); }
.falk-pitch h3 { font-size: clamp(22px, 2.4vw, 30px); line-height: 1.18; margin-bottom: 16px; }
.falk-pitch__arrow { display: flex; align-items: center; justify-content: center; font: 700 28px/1 var(--fr-display); color: var(--fr-gold); }
.falk-checklist--problem li { color: var(--falk-text); }
.falk-pitch__consequence { margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(203, 215, 225, .2); color: var(--falk-muted); font-size: 17px; }
.falk-product-next { display: flex; flex-wrap: wrap; gap: 18px 32px; align-items: center; justify-content: space-between; margin: 28px 0; padding: clamp(22px, 3vw, 34px); border-radius: var(--fr-radius-l); background: #11273D; }
.falk-product-next p { color: var(--falk-muted); max-width: 60ch; }
@media (max-width: 860px) { .falk-pitch { grid-template-columns: 1fr; gap: 10px; } .falk-pitch__arrow { transform: rotate(90deg); height: 36px; } }

/* Formulare (Kontakt, allgemein) */
.falk-contact { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: clamp(28px, 5vw, 64px); align-items: start; }
.falk-contact__facts { list-style: none; padding: 0; margin: 28px 0 0; display: grid; gap: 14px; font-size: 17px; }
.falk-contact__facts strong { display: block; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--fr-gold); margin-bottom: 2px; }
.falk-form { display: grid; gap: 20px; padding: clamp(22px, 3vw, 36px); border-radius: var(--fr-radius-xl); background: var(--fr-ivory); color: var(--fr-text); }
.falk-form label { display: block; margin-bottom: 6px; font-size: 16px; font-weight: 700; }
.falk-form input[type="text"], .falk-form input[type="email"], .falk-form select, .falk-form textarea { width: 100%; min-height: 48px; padding: 12px 14px; border: 1.5px solid var(--fr-field); border-radius: 12px; background: var(--fr-white); color: var(--fr-text); font: 400 17px/1.4 var(--fr-body); }
.falk-form textarea { min-height: 160px; resize: vertical; }
.falk-form input:focus-visible, .falk-form select:focus-visible, .falk-form textarea:focus-visible { outline: 3px solid var(--fr-gold-dark); outline-offset: 2px; }
.falk-form small, .falk-form__note { display: block; margin-top: 6px; font-size: 14px; color: var(--fr-text-2); }
.falk-form__row--check { display: grid; grid-template-columns: 24px 1fr; gap: 12px; align-items: start; }
.falk-form__row--check input { width: 24px; height: 24px; margin: 2px 0 0; accent-color: var(--fr-navy); }
.falk-form__row--check label { margin: 0; font-weight: 400; }
.falk-form__trap { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.falk-form .falk-btn { justify-self: start; }
.falk-form-message { grid-column: 1 / -1; padding: 16px 20px; border-radius: var(--fr-radius-m); font-weight: 600; background: var(--fr-ivory); color: var(--fr-text); border-left: 6px solid var(--fr-gold-dark); }
.falk-form-message--ok { border-left-color: #2F6B4F; }
.falk-form-message--error { border-left-color: #B45309; }
@media (max-width: 860px) { .falk-contact { grid-template-columns: 1fr; } }

/* FAQ, Service, Prosa */
.falk-faq-group { margin: 0 0 40px; }
.falk-faq-group h2 { font-size: clamp(24px, 2.6vw, 32px); margin-bottom: 14px; }
.falk-faq details { border-bottom: 1px solid rgba(203, 215, 225, .22); }
body:not(.falk-dark-context) .falk-faq details { border-color: var(--fr-line); }
.falk-faq summary { cursor: pointer; padding: 18px 40px 18px 0; min-height: 48px; font-weight: 700; font-size: 18px; list-style: none; position: relative; }
.falk-faq summary::-webkit-details-marker { display: none; }
.falk-faq summary::after { content: "+"; position: absolute; right: 6px; top: 50%; transform: translateY(-50%); font: 600 24px/1 var(--fr-display); color: var(--fr-gold); }
.falk-faq details[open] summary::after { content: "–"; }
.falk-faq details p { padding: 0 0 20px; max-width: 70ch; }
.falk-faq-more { margin-top: 12px; }
.falk-help-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.falk-help-card { position: relative; display: block; padding: 28px 28px 52px; border-radius: var(--fr-radius-l); background: #11273D; border: 1px solid rgba(203, 215, 225, .16); color: var(--falk-text); text-decoration: none; transition: transform .18s var(--fr-ease), border-color .18s var(--fr-ease); }
.falk-help-card:hover { transform: translateY(-3px); border-color: var(--fr-gold); text-decoration: none; }
.falk-help-card h2 { font-size: 22px; margin-bottom: 8px; }
.falk-help-card p { color: var(--falk-muted); font-size: 16px; }
.falk-help-card span { position: absolute; left: 28px; bottom: 22px; color: var(--fr-gold); font: 700 22px/1 var(--fr-display); }
@media (max-width: 980px) { .falk-help-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .falk-help-grid { grid-template-columns: 1fr; } }
.falk-prose { max-width: 760px; }
.falk-prose h2 { font-size: clamp(24px, 2.6vw, 32px); margin: 2em 0 .6em; }
.falk-prose ul { padding-left: 1.3em; display: grid; gap: .5em; }

/* 404 und Suche: hilfreiche Wege */
.falk-empty .falk-help-grid { margin-top: 32px; text-align: left; }

/* Hoher Kontrast / erzwungene Farben */
@media (forced-colors: active) {
  .falk-btn, .falk-form, .falk-help-card, .falk-pitch__problem, .falk-pitch__solution { border: 1px solid CanvasText; }
  .falk-faq summary::after { color: CanvasText; }
}

/* Kontrast-Korrekturen im dunklen Seitenrahmen (aus Renderprüfung) */
body.falk-dark-context .falk-lead,
body.falk-dark-context .falk-product-subtitle { color: var(--falk-muted); }
body.falk-dark-context .falk-entry-content a.falk-btn { color: var(--fr-navy); text-decoration: none; }
body.falk-dark-context .falk-entry-content a.falk-btn--ghost { color: var(--fr-ivory); background: transparent; }
body.falk-dark-context .falk-entry-content a.falk-btn--ghost:hover { background: rgba(246, 244, 238, .12); }
body.falk-dark-context .falk-entry-content a.falk-link { color: var(--fr-gold); text-decoration: none; }
.falk-tile--dark .falk-tile__note a { color: var(--fr-gold); text-decoration: underline; text-underline-offset: .18em; }
.falk-pitch > * { margin-top: 0 !important; }
.falk-pitch__solution .falk-lead, .falk-pitch__solution p { color: var(--fr-text-2); }

/* ======================================================================
   Werkseiten und Hubs: Layout (in v4–v7 ohne Stilregeln ausgeliefert)
   ====================================================================== */
.falk-product-detail { display: grid; gap: clamp(28px, 4vw, 48px); }
.falk-product-detail > section { margin: 0; }
.falk-product-hero { display: grid; grid-template-columns: minmax(220px, 340px) minmax(0, 1fr); gap: clamp(28px, 5vw, 64px); align-items: center; padding-top: 8px; }
.falk-product-hero__media img { display: block; width: 100%; height: auto; border-radius: 10px; box-shadow: 0 24px 60px rgba(0, 0, 0, .45); }
.falk-product-hero h2 { font-size: clamp(30px, 4vw, 48px); line-height: 1.08; margin: 10px 0 8px; color: var(--fr-ivory); }
.falk-product-subtitle { font-size: 19px; margin-bottom: 14px; }
.falk-product-hero .falk-lead { margin: 0 0 4px; font-size: clamp(19px, 1.8vw, 22px); }
.falk-product-statusline { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; }
.falk-product-statusline small { color: var(--falk-muted); font-size: 14px; }
.falk-status-badge { display: inline-flex; align-items: center; min-height: 28px; padding: 0 12px; border-radius: 980px; font: 700 12px/1 var(--fr-body); letter-spacing: .06em; text-transform: uppercase; border: 1px solid; }
.falk-status-badge.is-live { color: #A8DEC2; border-color: rgba(168, 222, 194, .6); background: rgba(135, 199, 168, .12); }
.falk-status-badge.is-pending { color: var(--fr-gold); border-color: rgba(214, 179, 106, .6); background: rgba(214, 179, 106, .1); }
.falk-product-hero .falk-actions { margin-top: 6px; }
.falk-product-hero .falk-share { margin-top: 24px; padding-top: 16px; border-top: 1px solid rgba(203, 215, 225, .18); }
.falk-product-hero .falk-share a, .falk-product-hero .falk-share button { background: transparent; color: var(--falk-text); border-color: rgba(203, 215, 225, .3); min-height: 40px; }
.falk-topic-panel { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; min-height: 360px; padding: 32px; text-align: center; border-radius: 14px; background: linear-gradient(160deg, #17354D, #0B1F33); border: 1px solid rgba(214, 179, 106, .35); }
.falk-topic-panel img { width: 76px; height: auto; }
.falk-topic-panel strong { font: 700 24px/1.2 var(--fr-display); color: var(--fr-ivory); }
.falk-topic-panel span { color: var(--fr-gold); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: 13px; }

.falk-checklist { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.falk-checklist li { position: relative; padding-left: 30px; }
.falk-checklist li::before { content: ""; position: absolute; left: 3px; top: .5em; width: 13px; height: 7px; border-left: 2.5px solid var(--fr-gold); border-bottom: 2.5px solid var(--fr-gold); transform: rotate(-45deg); }
.falk-checklist--problem li::before { width: 12px; height: 12px; border: 0; background: linear-gradient(45deg, transparent 43%, #E8A87C 43%, #E8A87C 57%, transparent 57%), linear-gradient(-45deg, transparent 43%, #E8A87C 43%, #E8A87C 57%, transparent 57%); transform: none; top: .42em; }
.falk-pitch__solution .falk-checklist li::before { border-color: var(--fr-gold-dark); }

.falk-product-fit { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(20px, 3vw, 40px); padding: clamp(24px, 4vw, 44px); border-radius: var(--fr-radius-xl); background: #11273D; }
.falk-product-fit h3, .falk-product-steps h3, .falk-product-faq h3, .falk-product-final h3, .falk-product-material h3, .falk-product-next h3, .falk-callout h3 { font-size: clamp(22px, 2.4vw, 30px); line-height: 1.15; margin: 4px 0 14px; color: var(--fr-ivory); }
.falk-product-steps > header { margin-bottom: 18px; }
.falk-step-grid article { background: #11273D; }
.falk-step-grid h4 { font: 700 20px/1.25 var(--fr-body); margin: 18px 0 8px; color: var(--fr-ivory); }
.falk-step-grid p { font-size: 16px; color: var(--falk-muted); }
.falk-step-grid span { font-family: var(--fr-display); font-weight: 700; color: var(--fr-gold); }
.falk-step-grid article { min-height: 0; }
.falk-callout { padding: clamp(22px, 3vw, 34px); border-radius: var(--fr-radius-l); border: 1px solid rgba(214, 179, 106, .4); background: rgba(214, 179, 106, .07); }
.falk-callout ul { margin: 0; padding-left: 1.2em; display: grid; gap: 8px; }
.falk-product-material, .falk-product-final, .falk-product-preview { display: flex; flex-wrap: wrap; gap: 18px 32px; align-items: center; justify-content: space-between; padding: clamp(24px, 3.5vw, 40px); border-radius: var(--fr-radius-xl); background: var(--fr-ivory); color: var(--fr-text); }
.falk-product-material h3, .falk-product-final h3, .falk-product-preview h3 { color: var(--fr-text); }
.falk-product-material .falk-kicker, .falk-product-final .falk-kicker, .falk-product-preview .falk-kicker { color: var(--fr-gold-dark); }
.falk-product-material p, .falk-product-final p, .falk-product-preview p { color: var(--fr-text-2); max-width: 62ch; }
.falk-product-final { background: linear-gradient(135deg, #17354D, #0B1F33); border: 1px solid rgba(214, 179, 106, .45); color: var(--falk-text); }
.falk-product-final h3 { color: var(--fr-ivory); } .falk-product-final p { color: var(--falk-muted); } .falk-product-final .falk-kicker { color: var(--fr-gold); }
body.falk-dark-context .falk-product-material a.falk-btn, body.falk-dark-context .falk-product-preview a.falk-btn { background: var(--fr-navy); color: var(--fr-ivory); }
body.falk-dark-context .falk-product-final a.falk-btn { background: var(--fr-ivory); color: var(--fr-navy); }
.falk-product-faq .falk-faq { max-width: 860px; }
.falk-product-faq a { color: var(--falk-gold-light); }

/* Hubs: Aufgaben-Raster, Themenbild, Produktband, Einleitung */
.falk-core-hero { padding: clamp(8px, 2vw, 24px) 0 clamp(18px, 3vw, 28px); max-width: 860px; }
.falk-core-hero h2 { font-size: clamp(30px, 4.2vw, 52px); line-height: 1.08; margin: 6px 0 16px; color: var(--fr-ivory); }
.falk-core-hero p { color: var(--falk-muted); font-size: 19px; }
.falk-topic-visual { margin: 0 0 clamp(24px, 3vw, 36px); overflow: hidden; border-radius: var(--fr-radius-xl); aspect-ratio: 16 / 9; box-shadow: 0 24px 60px rgba(0, 0, 0, .35); }
.falk-topic-visual img { display: block; width: 100%; height: 100%; object-fit: cover; }
.falk-task-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 0 0 clamp(28px, 4vw, 44px); }
.falk-task-grid a { display: flex; flex-direction: column; gap: 6px; padding: 24px; border-radius: var(--fr-radius-l); background: #11273D; border: 1px solid rgba(203, 215, 225, .16); color: var(--falk-text); text-decoration: none; transition: transform .18s var(--fr-ease), border-color .18s var(--fr-ease); }
.falk-task-grid a:hover { transform: translateY(-3px); border-color: var(--fr-gold); text-decoration: none; }
.falk-task-grid span { font: 700 15px/1 var(--fr-display); color: var(--fr-gold); }
.falk-task-grid h3 { font: 700 20px/1.25 var(--fr-body); letter-spacing: 0; color: var(--fr-ivory); }
.falk-task-grid p { font-size: 16px; color: var(--falk-muted); }
.falk-topic-product { display: flex; flex-wrap: wrap; gap: 18px 32px; align-items: center; justify-content: space-between; padding: clamp(24px, 3.5vw, 40px); border-radius: var(--fr-radius-xl); background: var(--fr-ivory); color: var(--fr-text); }
.falk-topic-product h2 { font-size: clamp(24px, 3vw, 34px); color: var(--fr-text); }
.falk-topic-product .falk-kicker { color: var(--fr-gold-dark); } .falk-topic-product p { color: var(--fr-text-2); max-width: 60ch; }
body.falk-dark-context .falk-topic-product a.falk-btn { background: var(--fr-navy); color: var(--fr-ivory); }
@media (max-width: 980px) { .falk-task-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .falk-product-hero { grid-template-columns: minmax(180px, 260px) minmax(0, 1fr); } }
@media (max-width: 720px) {
  .falk-product-hero { grid-template-columns: 1fr; text-align: left; }
  .falk-product-hero__media { max-width: 240px; }
  .falk-product-fit { grid-template-columns: 1fr; }
  .falk-task-grid { grid-template-columns: 1fr; }
  .falk-step-grid { grid-template-columns: 1fr; }
}
body.falk-dark-context .falk-pitch__solution .falk-kicker,
body.falk-dark-context .falk-product-material .falk-kicker,
body.falk-dark-context .falk-product-preview .falk-kicker,
body.falk-dark-context .falk-topic-product .falk-kicker { color: var(--fr-gold-dark); }
body.falk-dark-context .falk-pitch__solution h3, body.falk-dark-context .falk-pitch__solution p { color: var(--fr-text); }
body.falk-dark-context .falk-pitch__solution p { color: var(--fr-text-2); }
.falk-step-grid > *, .falk-product-fit > *, .falk-product-detail > *, .falk-help-grid > * { margin-top: 0 !important; }
.falk-pitch__solution .falk-checklist { margin-top: 20px; }

.falk-price-line { font-weight: 700; color: var(--fr-text); }
.falk-tile--dark .falk-price-line { color: var(--fr-ivory); }

/* ======================================================================
   Lesehilfe (Schriftgröße, Kontrast, Zeilenabstand, Bewegung)
   ====================================================================== */
.falk-readhelp-btn { font: 700 15px/1 var(--fr-display); letter-spacing: -.02em; }
.falk-readhelp-btn span[aria-hidden] { font-size: 17px; }
.falk-readhelp { position: fixed; z-index: 1100; top: 60px; right: max(12px, calc((100vw - 1024px) / 2)); width: min(380px, calc(100vw - 24px)); max-height: calc(100vh - 80px); overflow-y: auto; padding: 22px; border-radius: var(--fr-radius-l); background: var(--fr-ivory); color: var(--fr-text); box-shadow: 0 24px 60px rgba(0, 0, 0, .4); border: 1px solid var(--fr-line); font-size: 17px; }
.admin-bar .falk-readhelp { top: 92px; }
.falk-readhelp[hidden] { display: none; }
.falk-readhelp h2 { font-size: 22px; margin-bottom: 4px; }
.falk-readhelp h2:focus { outline: none; }
.falk-readhelp > p { font-size: 15px; color: var(--fr-text-2); margin-bottom: 16px; }
.falk-readhelp fieldset { border: 0; margin: 0 0 16px; padding: 0; }
.falk-readhelp legend { font-weight: 700; margin-bottom: 8px; padding: 0; }
.falk-readhelp__sizes { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.falk-readhelp__sizes button { min-height: 48px; border: 1.5px solid var(--fr-navy); border-radius: 12px; background: var(--fr-white); color: var(--fr-navy); font: 700 16px/1.1 var(--fr-body); cursor: pointer; }
.falk-readhelp__sizes button[aria-pressed="true"] { background: var(--fr-navy); color: var(--fr-ivory); }
.falk-readhelp label.falk-switch { display: flex; align-items: center; gap: 12px; min-height: 48px; font-weight: 600; cursor: pointer; }
.falk-readhelp input[type="checkbox"] { width: 24px; height: 24px; accent-color: var(--fr-navy); flex: none; }
.falk-readhelp__actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.falk-readhelp__actions button { min-height: 44px; padding: 0 18px; border-radius: 980px; border: 1.5px solid var(--fr-navy); background: transparent; color: var(--fr-navy); font: 600 16px/1 var(--fr-body); cursor: pointer; }
.falk-readhelp__actions button:first-child { background: var(--fr-navy); color: var(--fr-ivory); }
.falk-readhelp small { display: block; margin-top: 12px; font-size: 13px; color: var(--fr-text-2); }

/* Schriftgröße */
html[data-falk-size="1"] body { font-size: 20px; }
html[data-falk-size="1"] .falk-entry-content, html[data-falk-size="1"] .falk-faq details p, html[data-falk-size="1"] .falk-checklist li { font-size: 21px; }
html[data-falk-size="1"] .falk-card__excerpt, html[data-falk-size="1"] .falk-trust p, html[data-falk-size="1"] .falk-step-grid p, html[data-falk-size="1"] .falk-task-grid p, html[data-falk-size="1"] .falk-help-card p, html[data-falk-size="1"] .falk-price-note, html[data-falk-size="1"] .falk-home-topic p { font-size: 18px; }
html[data-falk-size="1"] .falk-footer, html[data-falk-size="1"] .falk-footer a { font-size: 15px; }
html[data-falk-size="1"] .falk-form label, html[data-falk-size="1"] .falk-form input, html[data-falk-size="1"] .falk-form select, html[data-falk-size="1"] .falk-form textarea { font-size: 19px; }
html[data-falk-size="2"] body { font-size: 23px; }
html[data-falk-size="2"] .falk-entry-content, html[data-falk-size="2"] .falk-faq details p, html[data-falk-size="2"] .falk-checklist li { font-size: 24px; }
html[data-falk-size="2"] .falk-card__excerpt, html[data-falk-size="2"] .falk-trust p, html[data-falk-size="2"] .falk-step-grid p, html[data-falk-size="2"] .falk-task-grid p, html[data-falk-size="2"] .falk-help-card p, html[data-falk-size="2"] .falk-price-note, html[data-falk-size="2"] .falk-home-topic p { font-size: 21px; }
html[data-falk-size="2"] .falk-footer, html[data-falk-size="2"] .falk-footer a { font-size: 17px; }
html[data-falk-size="2"] .falk-form label, html[data-falk-size="2"] .falk-form input, html[data-falk-size="2"] .falk-form select, html[data-falk-size="2"] .falk-form textarea { font-size: 22px; }
html[data-falk-size="2"] .falk-kicker, html[data-falk-size="2"] .falk-card__kicker { font-size: 17px; }
html[data-falk-size="2"] .falk-card__title, html[data-falk-size="2"] .falk-task-grid h3 { font-size: 24px; }
html[data-falk-size="2"] .falk-btn, html[data-falk-size="2"] .falk-link { font-size: 19px; }
html[data-falk-size="1"] .falk-btn, html[data-falk-size="1"] .falk-link { font-size: 18px; }

/* Zeilenabstand */
html[data-falk-spacing="1"] body, html[data-falk-spacing="1"] .falk-entry-content { line-height: 1.95; letter-spacing: .012em; word-spacing: .06em; }
html[data-falk-spacing="1"] .falk-entry-content > * + * { margin-top: 1.5em; }
html[data-falk-spacing="1"] li + li { margin-top: .6em; }

/* Hoher Kontrast */
html[data-falk-contrast="1"] { --fr-text-2: #17232F; --fr-gold-dark: #4E3306; --fr-line: #5F5B50; --fr-field: #2B3640; --falk-muted: #FFFFFF; --falk-muted-2: #F4F7FA; --fr-mist: #FFFFFF; --falk-line: rgba(255, 255, 255, .6); }
html[data-falk-contrast="1"] a { text-decoration: underline; text-underline-offset: .18em; text-decoration-thickness: 2px; }
html[data-falk-contrast="1"] .falk-btn, html[data-falk-contrast="1"] .falk-nav__list a { text-decoration: none; }
html[data-falk-contrast="1"] :focus-visible { outline: 4px solid #FFD66B; outline-offset: 3px; box-shadow: 0 0 0 7px #0B1F33; }
html[data-falk-contrast="1"] .falk-card, html[data-falk-contrast="1"] .falk-home-topic, html[data-falk-contrast="1"] .falk-form, html[data-falk-contrast="1"] .falk-help-card, html[data-falk-contrast="1"] .falk-task-grid a, html[data-falk-contrast="1"] .falk-step-grid article { border: 2px solid currentColor; }
html[data-falk-contrast="1"] .falk-faq details { border-bottom-width: 2px; }
html[data-falk-contrast="1"] .falk-status-badge { border-width: 2px; color: #FFFFFF; }
html[data-falk-contrast="1"] .falk-home-topic p, html[data-falk-contrast="1"] .falk-card__excerpt, html[data-falk-contrast="1"] .falk-footer, html[data-falk-contrast="1"] .falk-footer a { color: #0B1F33; }
html[data-falk-contrast="1"] .falk-tile--dark .falk-tile__sub, html[data-falk-contrast="1"] .falk-tile--dark .falk-tile__note { color: #FFFFFF; }

/* Bewegung reduzieren */
html[data-falk-motion="1"] *, html[data-falk-motion="1"] *::before, html[data-falk-motion="1"] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
html[data-falk-motion="1"] .falk-reveal-pending { opacity: 1 !important; transform: none !important; }
@media print { .falk-readhelp, .falk-readhelp-btn { display: none !important; } }
@media (max-width: 860px) { .falk-readhelp { right: 12px; top: 58px; } }
.falk-product-formats { margin: 14px 0 0; font-weight: 600; color: var(--falk-text); }
html[data-falk-contrast="1"] .falk-brand, html[data-falk-contrast="1"] .falk-brand:hover { text-decoration: none; }

/* Lebenssituationen (Rentner-Hub) */
.falk-situations { margin: 0 0 clamp(28px, 4vw, 44px); }
.falk-situations h2 { font-size: clamp(26px, 3vw, 36px); margin: 4px 0 18px; color: var(--fr-ivory); }
.falk-situation-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.falk-situation { display: flex; flex-direction: column; gap: 8px; padding: 24px; border-radius: var(--fr-radius-l); background: var(--fr-ivory); color: var(--fr-text); text-decoration: none; border: 2px solid transparent; transition: transform .18s var(--fr-ease), border-color .18s var(--fr-ease); }
.falk-situation:hover { transform: translateY(-3px); border-color: var(--fr-gold); text-decoration: none; }
.falk-situation h3 { font: 700 21px/1.25 var(--fr-body); letter-spacing: 0; color: var(--fr-text); }
.falk-situation p { font-size: 17px; color: var(--fr-text-2); flex: 1; }
.falk-situation span { font-weight: 700; color: var(--fr-gold-dark); }
body.falk-dark-context .falk-entry-content .falk-situation { color: var(--fr-text); text-decoration: none; }
@media (max-width: 980px) { .falk-situation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .falk-situation-grid { grid-template-columns: 1fr; } }
html[data-falk-size="1"] .falk-situation p { font-size: 19px; } html[data-falk-size="2"] .falk-situation p { font-size: 22px; } html[data-falk-size="2"] .falk-situation h3 { font-size: 24px; }
.falk-situation-grid > *, .falk-task-grid > * { margin-top: 0 !important; }
.falk-entry-content > .falk-callout, .falk-entry-content .falk-situations + .falk-callout { margin: 0 0 clamp(28px, 4vw, 44px); }
.falk-product-detail > .falk-callout { margin: 0; }

/* Startseite kompakt (v11) */
.falk-home-library .falk-section__head { align-items: flex-end; }
.falk-library { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); margin-top: 8px; }
.falk-book { display: flex; flex-direction: column; gap: 12px; }
.falk-book__cover { display: block; border-radius: 8px; overflow: hidden; box-shadow: 0 14px 34px rgba(11, 31, 51, .28); aspect-ratio: 5 / 8; background: #11273D; }
.falk-book__cover img { display: block; width: 100%; height: 100%; object-fit: cover; }
.falk-book h3 { font: 700 17px/1.25 var(--fr-body); letter-spacing: 0; margin: 0; }
.falk-book h3 a { color: inherit; text-decoration: none; }
.falk-book h3 a:hover { text-decoration: underline; }
.falk-book .falk-kicker { margin: 0 0 4px; }
.falk-book__meta { margin: 4px 0 0; font-size: 15px; color: var(--fr-text-2); }
.falk-book .falk-price-line { margin: 6px 0 0; font-size: 15px; }
.falk-home-soon { margin-top: 16px; font-size: 17px; }
.falk-duo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 4vw, 56px); }
.falk-duo h2 { font-size: clamp(24px, 2.6vw, 32px); margin: 4px 0 10px; }
.falk-duo .falk-chips { margin: 14px 0 18px; }
.falk-trust-line { list-style: none; margin: 24px 0 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px 28px; font-size: 17px; }
.falk-trust-line li { padding-top: 14px; border-top: 2px solid var(--fr-gold); }
.falk-trust-line strong { display: block; font-size: 18px; margin-bottom: 4px; }
@media (max-width: 1100px) { .falk-library { grid-template-columns: repeat(3, minmax(0, 1fr)); } .falk-trust-line { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 720px) {
  .falk-library { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
  .falk-duo, .falk-trust-line { grid-template-columns: 1fr; }
  .falk-home-topic img { aspect-ratio: 16 / 7; object-fit: cover; }
}
html[data-falk-size="1"] .falk-book h3 { font-size: 19px; } html[data-falk-size="2"] .falk-book h3 { font-size: 21px; }

@media (max-width: 639px) {
  .falk-home-topics__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .falk-home-topic > div { padding: 14px; }
  .falk-home-topic h3 { font-size: 1.02rem; margin-bottom: 8px; }
  .falk-home-topic p { display: none; }
}
.falk-footer__slogan { font: 700 20px/1.3 var(--fr-display); color: var(--fr-ivory); margin: 0 0 14px; }
.falk-footer__slogan::first-letter { color: var(--fr-gold); }
.falk-datenstand__table td, .falk-datenstand__table th { vertical-align: top; }
.falk-datenstand__table small { color: var(--falk-muted); }

/* Startseite: Feinschliff */
.falk-kicker--slogan { text-transform: none; letter-spacing: 0; font: 700 clamp(17px, 2vw, 21px)/1.3 var(--fr-body); color: var(--fr-gold-dark); }
.falk-home-library, .falk-home-tools, .falk-home-trust { padding-block: clamp(32px, 4vw, 52px); }
.falk-home-library .falk-price-note { max-width: none; background: none; border: 0; padding: 0; margin: 18px 0 0; color: var(--fr-text-2); }
.falk-duo .falk-chips { justify-content: flex-start; }
.falk-trust-line span { display: block; }
.falk-home .falk-section__head h2 { font-size: clamp(26px, 3vw, 38px); }
@media (max-width: 720px) {
  .falk-home .falk-cards > :nth-child(3) { display: none; }
  .falk-hero { padding-block: 28px 24px; }
  .falk-home .falk-section--ivory { padding-block: 32px; }
}

/* Ratgeber-Reihen (v12) */
.falk-slogan-link { color: inherit; font-weight: 800; text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: .2em; white-space: nowrap; }
.falk-kicker--slogan .falk-slogan-link { color: var(--fr-navy); }
.falk-footer__slogan .falk-slogan-link { color: var(--fr-gold); }
.falk-series-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(14px, 2vw, 24px); margin-top: 10px; }
.falk-series { display: flex; flex-direction: column; gap: 10px; padding: clamp(18px, 2.4vw, 28px); border-radius: var(--fr-radius-l); background: var(--fr-white); border: 1px solid var(--fr-line); }
.falk-series h3 { font: 800 clamp(24px, 2.6vw, 32px)/1.1 var(--fr-display); letter-spacing: -.01em; margin: 0; }
.falk-series h3 a { color: var(--fr-navy); text-decoration: none; }
.falk-series h3 a:hover { text-decoration: underline; }
.falk-series .falk-kicker { margin: 0; }
.falk-series__text { margin: 0; font-size: 16px; color: var(--fr-text-2); }
.falk-series__covers { display: flex; gap: 10px; margin: 6px 0 2px; }
.falk-series__covers a { flex: 0 1 31%; max-width: 31%; border-radius: 6px; overflow: hidden; box-shadow: 0 10px 24px rgba(11, 31, 51, .26); aspect-ratio: 5 / 8; background: #11273D; }
.falk-series__covers img { display: block; width: 100%; height: 100%; object-fit: cover; }
.falk-series__list { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 10px; font-size: 17px; }
.falk-series__list a { font-weight: 700; color: var(--fr-navy); }
.falk-series__list em { font-style: normal; color: var(--fr-gold-dark); font-size: 15px; font-weight: 600; }
.falk-series__list .falk-price-line { display: block; margin: 2px 0 0; font-size: 15px; font-weight: 600; }
.falk-footer__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.falk-footer__series h2 a { color: inherit; text-decoration: none; }
.falk-footer__series h2 a:hover { text-decoration: underline; }
.falk-footer__series-kicker { margin: -6px 0 10px; font-size: 14px; color: var(--falk-muted); }
.falk-footer__series small { color: var(--falk-muted); font-size: 13px; }
@media (max-width: 1100px) { .falk-series-grid { grid-template-columns: 1fr; } .falk-series__covers a { flex-basis: 22%; max-width: 22%; } .falk-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .falk-footer__grid { grid-template-columns: 1fr; } .falk-series__covers a { flex-basis: 26%; max-width: 26%; } }
html[data-falk-size="1"] .falk-series__list { font-size: 19px; } html[data-falk-size="2"] .falk-series__list { font-size: 22px; } html[data-falk-size="2"] .falk-series__text { font-size: 19px; }

/* Download-Karten: kein Überlauf auf schmalen Bildschirmen (aus Renderprüfung v12) */
.falk-download-grid, .falk-download-grid--care { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.falk-download-card { min-width: 0; overflow-wrap: anywhere; }
.falk-download-card > div { min-width: 0; }
@media (min-width: 1100px) { .falk-download-grid--care { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 720px) { .falk-download-grid, .falk-download-grid--care { grid-template-columns: minmax(0, 1fr); } .falk-download-card { padding: 20px; min-height: 0; } }
.falk-datenstand__table { min-width: 640px; }
/* Tabellen-Scrollbereich: Screenreader-Texte dürfen nicht aus dem Bereich ragen; lange Wörter in Überschriften umbrechen */
.falk-table-scroll { position: relative; }
.falk-page-head h1, .falk-article-head h1 { overflow-wrap: anywhere; hyphens: auto; }
@media (max-width: 480px) { .falk-page-head h1 { font-size: clamp(28px, 8.2vw, 40px); } }
/* Fußbereich ist hell: Farben für hellen Grund (Korrektur aus Renderprüfung v12) */
.falk-footer__slogan { color: var(--fr-navy); font: 800 clamp(18px, 2vw, 22px)/1.3 var(--fr-display); }
.falk-footer__slogan::first-letter { color: inherit; }
.falk-footer__slogan .falk-slogan-link, .falk-kicker--slogan .falk-slogan-link { color: var(--fr-gold-dark); }
.falk-footer__series-kicker, .falk-footer__series small { color: var(--fr-text-2); }
.falk-footer__series-kicker { margin: -4px 0 10px; font-size: 13px; }
.falk-footer__series small { font-size: 13px; }
@media (min-width: 1101px) { .falk-series .falk-kicker { min-height: 2.6em; } }

/* ======================================================================
   Rechner im dunklen Seitenrahmen: Kontrast (aus Rechner-Scan v12)
   ====================================================================== */
body.falk-dark-context .falk-pg-landing .falk-pg-kicker,
body.falk-dark-context .falk-immo-landing .falk-immo-kicker { color: var(--fr-gold); }
body.falk-dark-context .falk-pg-info,
body.falk-dark-context .falk-pg-info h2,
body.falk-dark-context .falk-pg-info p,
body.falk-dark-context .falk-pg-info li,
body.falk-dark-context .falk-pg-info summary,
body.falk-dark-context .falk-pg-sources,
body.falk-dark-context .falk-pg-sources h2,
body.falk-dark-context .falk-pg-sources p,
body.falk-dark-context .falk-pg-sources li { color: var(--falk-text); }
body.falk-dark-context .falk-pg-info details { border-color: rgba(203, 215, 225, .28); }
body.falk-dark-context .falk-pg-info a,
body.falk-dark-context .falk-pg-sources a { color: var(--fr-gold); }
/* Ergebnis-Kasten: Plugin-CSS setzt weißen Text, Theme-Regeln überschrieben ihn */
body .falk-pg-resultHero, body .falk-pg-resultHero p, body .falk-pg-resultHero strong, body .falk-pg-resultHero small { color: #FFFFFF; }
body .falk-pg-resultHero span { color: #F2D58D; }
body .falk-pg-resultHero small { opacity: 1; color: #E4EBF2; }
/* Tabellenkopf der Rechner: Text und Grund dürfen nicht dieselbe Farbe haben */
body .falk-immo-landing th, body .falk-immo-snapshot th { color: var(--fr-navy); background: #E9E4D6; }
/* Pflegerechner: Kicker im dunklen Hero (Plugin setzt dunkles Gold mit !important) */
body .falk-pg-landing .falk-pg-hero .falk-pg-kicker { color: #D6B36A !important; }
/* Ergebnis-Kasten Pflegerechner: Text auf dunklem Grund sicher lesbar (hat Vorrang vor Plugin- und Theme-Regeln) */
body .falk-pg-landing .falk-pg-resultHero p,
body .falk-pg-landing .falk-pg-resultHero strong,
body .falk-pg-landing .falk-pg-resultHero small,
body .falk-pg-snapshot .falk-pg-resultHero p,
body .falk-pg-snapshot .falk-pg-resultHero strong { color: #FFFFFF !important; opacity: 1 !important; }
body .falk-pg-landing .falk-pg-resultHero span,
body .falk-pg-snapshot .falk-pg-resultHero span { color: #F2D58D !important; }
body .falk-pg-landing .falk-pg-resultHero small { color: #E4EBF2 !important; }
