/* flexgold-Landingpage + Wissensartikel (trigonus.de) – eigenständig, alle Regeln unter .fg
   Das Theme setzt html{font-size:62.5%}: 1rem = 10 px bei Browser-Standard 16 px.
   Größen deshalb in rem × 1,6 (1.7rem ≈ 17 px), damit die Browser-Schriftgröße (14/18/20 px) durchschlägt.
   Farben: Elfenbein #F7F3EA, Anthrazit #1E2430, Metallgold #B08D3C (Text-Gold #7A5C14 für kleine Schrift). */

.fg {
  --fg-ivory: #F7F3EA; --fg-ivory-2: #EFE8D8; --fg-paper: #FFFDF8; --fg-goldwash: #F3E7C6;
  --fg-ink: #1E2430; --fg-ink-2: #3A4252; --fg-muted: #555C6B;
  --fg-gold: #B08D3C; --fg-gold-btn: #C9A04A; --fg-gold-btn-h: #D6AE57; --fg-gold-edge: #6F5519; --fg-gold-text: #7A5C14;
  --fg-night: #1E2430; --fg-night-2: #283041; --fg-night-line: #3A4458;
  --fg-on-dark: #F2EEE5; --fg-on-dark-2: #C9CFDA; --fg-gold-on-dark: #E2C274;
  --fg-line: #D9CFB8; --fg-focus: #2F62A8; --fg-pending: #B4561F;
  --fg-serif: Georgia, "Iowan Old Style", "Palatino Linotype", "Book Antiqua", "Times New Roman", serif;
  --fg-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --fg-top: 0px;
  display: block; background: var(--fg-ivory); color: var(--fg-ink);
  font-family: var(--fg-sans); font-size: 1.7rem; line-height: 1.6; text-align: left;
  -webkit-font-smoothing: antialiased; overflow-wrap: break-word;
}
.fg *, .fg *::before, .fg *::after { box-sizing: border-box; }
.fg img, .fg video { max-width: 100%; display: block; }
.fg img { height: auto; }
.fg picture { display: block; }
.fg a { color: var(--fg-ink); text-decoration: underline; text-decoration-color: var(--fg-gold); text-decoration-thickness: 2px; text-underline-offset: .2em; }
.fg a:hover { color: var(--fg-gold-text); }
.fg a:focus-visible, .fg button:focus-visible, .fg input:focus-visible, .fg select:focus-visible, .fg summary:focus-visible, .fg [tabindex]:focus-visible {
  outline: 3px solid var(--fg-focus); outline-offset: 2px; }
.fg p { margin: 0 0 1em; font-size: 1em; line-height: 1.6; color: inherit; }
.fg ul, .fg ol { margin: 0 0 1em; padding-left: 1.2em; }
.fg li { margin: 0 0 .45em; font-size: 1em; line-height: 1.55; color: inherit; }
.fg h1, .fg h2, .fg h3 { font-family: var(--fg-serif); color: var(--fg-ink); font-weight: 700; line-height: 1.16; margin: 0 0 .55em; letter-spacing: -.005em; text-transform: none; padding: 0; border: 0; background: none; }
.fg h1 { font-size: clamp(3.3rem, 3.7vw, 4.8rem); }
.fg h2 { font-size: clamp(2.7rem, 3.3vw, 4rem); }
.fg h3 { font-size: clamp(2.05rem, 2vw, 2.5rem); }
.fg strong, .fg b { font-weight: 700; }
.fg small { font-size: .85em; }
.fg sup { font-size: .7em; line-height: 0; }
.fg sup a { text-decoration: none; font-weight: 700; }
.fg figure { margin: 0; }
.fg blockquote { margin: 0; padding: 0; border: 0; font-size: inherit; background: none; }
.fg blockquote::before, .fg blockquote::after { content: none; }
.fg-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.fg-wrap { max-width: 1180px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); }
.fg-wrap--narrow { max-width: 880px; }
.fg-section { padding: clamp(44px, 6.5vw, 88px) 0; }
.fg [id] { scroll-margin-top: calc(var(--fg-top) + 80px); }
.fg-tint { background: var(--fg-ivory-2); }
.fg .fg-h2-s { font-size: clamp(2.2rem, 2.4vw, 2.8rem); }
.fg-overline { font-family: var(--fg-sans); text-transform: uppercase; letter-spacing: .1em; font-size: 1.45rem; font-weight: 700; color: var(--fg-gold-text); margin: 0 0 .9em; line-height: 1.4; }
.fg .fg-overline--rank { display: flex; align-items: center; gap: .8em; font-size: clamp(1.6rem, 1.6vw, 2rem); letter-spacing: .14em; }
.fg-overline--rank::before { content: ""; flex: 0 0 48px; height: 3px; background: var(--fg-gold); }
.fg .fg-lead { font-size: 1.18em; color: var(--fg-ink-2); max-width: 36em; }
.fg .fg-intro { font-size: 1.12em; color: var(--fg-ink-2); max-width: 44em; }
.fg-prose { max-width: 42em; }
.fg .fg-micro { font-size: 1.45rem; color: var(--fg-muted); line-height: 1.5; margin: .5em 0 0; }
.fg .fg-fn { font-size: 1.45rem; color: var(--fg-muted); line-height: 1.5; max-width: 60em; }
.fg .fg-src { font-size: 1.45rem; color: var(--fg-muted); margin: 0; }

/* ---------- Buttons und Textaktionen ---------- */
.fg .fg-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5em; min-height: 48px; padding: .7em 1.35em;
  border-radius: 6px; font-family: var(--fg-sans); font-weight: 700; font-size: 1.7rem; line-height: 1.2; text-decoration: none;
  cursor: pointer; border: 2px solid var(--fg-gold-edge); background: var(--fg-gold-btn); color: var(--fg-ink);
  box-shadow: 0 2px 0 var(--fg-gold-edge); transition: background .15s, transform .15s; text-align: center; white-space: normal; }
.fg .fg-btn:hover { background: var(--fg-gold-btn-h); color: var(--fg-ink); transform: translateY(-1px); }
.fg .fg-btn--ghost { background: transparent; border-color: var(--fg-ink); box-shadow: none; }
.fg .fg-btn--ghost:hover { background: rgba(30, 36, 48, .07); }
.fg .fg-btn--l { min-height: 54px; font-size: 1.8rem; padding: .8em 1.6em; }
.fg .fg-btn--s { min-height: 42px; font-size: 1.5rem; padding: .45em 1em; }
.fg .fg-link { font-weight: 700; }
.fg .fg-textcta { font-weight: 600; margin-top: 1.4em; }
.fg-textcta a { font-weight: 700; }
.fg-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; margin-top: 1.2em; }

/* ---------- Freigabe-Markierung [D] ---------- */
.fg-pending { outline: 2px dashed var(--fg-pending); outline-offset: 3px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.fg div.fg-pending, .fg p.fg-pending, .fg li.fg-pending { position: relative; padding-top: 1.7em; }
.fg div.fg-pending::before, .fg p.fg-pending::before, .fg li.fg-pending::before { content: attr(data-frage); position: absolute; top: 0; left: 0;
  font: 700 1.2rem/1.4 var(--fg-sans); color: #fff; background: var(--fg-pending); padding: 0 .5em; border-radius: 3px; width: auto; height: auto; border: 0; transform: none; }

/* ---------- Hero ---------- */
.fg-hero { padding: clamp(20px, 3.5vw, 44px) 0 clamp(32px, 5vw, 60px); background: linear-gradient(160deg, var(--fg-ivory) 40%, #EFE5CF 100%); }
.fg-hero__grid { display: grid; gap: 28px; align-items: center; grid-template-columns: minmax(0, 1fr); }
.fg-hero h1 { margin-bottom: .4em; }
.fg-hero h1 span { color: var(--fg-gold-text); display: block; }
.fg-hero .fg-lead { margin-bottom: 1.1em; }
.fg-hero__cta { display: flex; flex-wrap: wrap; gap: 14px 28px; align-items: flex-start; margin: 0 0 1.2em; }
.fg-hero__primary, .fg-hero__secondary { display: flex; flex-direction: column; gap: 10px; }
.fg .fg-hero__primary .fg-micro { max-width: 17em; margin: 0; }
.fg-mini-berater { display: flex; align-items: center; gap: 10px; font-size: 1.45rem; line-height: 1.35; color: var(--fg-ink-2); }
.fg-mini-berater picture { flex: 0 0 40px; }
.fg-mini-berater img { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 2px solid var(--fg-paper); box-shadow: 0 0 0 1px var(--fg-line); }
.fg-chips { list-style: none; padding: 0 !important; margin: 0 0 .6em; display: flex; flex-wrap: wrap; gap: 8px; }
.fg-chips li { margin: 0; display: inline-flex; align-items: center; gap: .5em; padding: .3em .8em; border: 1px solid var(--fg-line); border-radius: 999px; background: var(--fg-paper); font-size: 1.45rem; font-weight: 600; }
.fg-chips li::before { content: ""; width: .45em; height: .8em; border: solid var(--fg-gold-text); border-width: 0 2.5px 2.5px 0; transform: rotate(45deg) translateY(-.1em); flex: 0 0 auto; }
.fg-hero__img img { width: 100%; border-radius: 10px; box-shadow: 0 18px 40px -18px rgba(30, 36, 48, .55); aspect-ratio: 16 / 9; object-fit: cover; }
@media (min-width: 900px) {
  .fg-hero__grid { grid-template-columns: 1.15fr .85fr; gap: 44px; }
  .fg-hero__img img { aspect-ratio: 3 / 2; }
}

/* ---------- Kapitel-/Aktionsleiste ---------- */
.fg-bar { background: var(--fg-paper); border-top: 1px solid var(--fg-line); border-bottom: 1px solid var(--fg-line); z-index: 60; }
.fg-bar__in { display: flex; align-items: center; gap: 16px; min-height: 52px; }
.fg-chapters { display: flex; gap: 4px; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; flex: 1 1 auto; white-space: nowrap; margin: 0 -8px; padding: 6px 0; min-width: 0; }
.fg-chapters::-webkit-scrollbar { display: none; }
.fg .fg-chapters a { flex: 0 0 auto; padding: .45em .7em; font-size: 1.5rem; font-weight: 600; text-decoration: none; border-radius: 4px; color: var(--fg-ink-2); }
.fg .fg-chapters a:hover, .fg .fg-chapters a.is-active { background: var(--fg-goldwash); color: var(--fg-ink); }
.fg-bar__actions { display: none; align-items: center; gap: 12px; flex: 0 0 auto; }
.fg .fg-bar__tel { font-size: 1.45rem; font-weight: 700; text-decoration: none; white-space: nowrap; }
.fg .fg-hide-s { display: none; }
@media (min-width: 900px) {
  .fg-bar { position: -webkit-sticky; position: sticky; top: var(--fg-top); box-shadow: 0 6px 16px -14px rgba(30, 36, 48, .6); }
  .fg-bar__actions { display: flex; }
}
@media (min-width: 1180px) { .fg .fg-hide-s { display: inline; } }

/* ---------- Auf einen Blick ---------- */
.fg-glance { padding-top: clamp(32px, 4vw, 56px); }
.fg .fg-kpis { list-style: none; padding: 0; margin: 0 0 32px; display: grid; grid-template-columns: 1fr; gap: 12px; }
.fg-kpis li { margin: 0; background: var(--fg-paper); border: 1px solid var(--fg-line); border-top: 3px solid var(--fg-gold); border-radius: 8px; padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.fg-kpis strong { font-family: var(--fg-serif); font-size: clamp(2.5rem, 2.6vw, 3.1rem); line-height: 1.1; color: var(--fg-gold-text); font-variant-numeric: tabular-nums; }
.fg-kpis span { font-size: 1.55rem; line-height: 1.45; color: var(--fg-ink-2); }
@media (min-width: 440px) { .fg .fg-kpis { grid-template-columns: 1fr 1fr; } }
@media (min-width: 900px) { .fg .fg-kpis { grid-template-columns: repeat(3, 1fr); gap: 16px; } }
.fg-dieter { display: grid; gap: 20px; align-items: center; }
.fg-dieter__fig { display: flex; gap: 18px; align-items: flex-start; }
.fg-dieter__fig picture { flex: 0 0 88px; }
.fg-dieter__fig img { width: 88px; height: 88px; border-radius: 50%; object-fit: cover; }
.fg-dieter blockquote { font-family: var(--fg-serif); font-style: italic; font-size: 1.15em; line-height: 1.5; margin: 0 0 .5em; color: var(--fg-ink); }
.fg .fg-dieter figcaption p { font-size: 1.45rem; color: var(--fg-muted); margin: 0; }
.fg-trust { min-height: 24px; }
@media (min-width: 900px) { .fg-dieter { grid-template-columns: 1fr 260px; gap: 40px; } }

/* ---------- Dunkle Fläche Kaufkraft ---------- */
.fg .fg-dark { background: var(--fg-night); color: var(--fg-on-dark); }
.fg .fg-dark h2, .fg .fg-dark h3 { color: #fff; }
.fg .fg-dark .fg-prose p { color: var(--fg-on-dark); }
.fg .fg-dark a { color: #fff; text-decoration-color: var(--fg-gold-on-dark); }
.fg .fg-dark a:hover { color: var(--fg-gold-on-dark); }
.fg .fg-motto { font-family: var(--fg-serif); font-size: clamp(2.5rem, 3.4vw, 4rem); line-height: 1.25; font-weight: 700; color: var(--fg-gold-on-dark);
  margin: 1.3em 0 1.4em; padding: .1em 0 .1em .8em; border-left: 5px solid var(--fg-gold); max-width: 30em; }
.fg .fg-motto span { display: block; color: #fff; }
.fg-calc { background: var(--fg-night-2); border: 1px solid var(--fg-night-line); border-radius: 12px; padding: clamp(20px, 3vw, 36px); margin-top: 8px; }
.fg-calc__form { display: grid; gap: 18px; margin-bottom: 18px; }
@media (min-width: 820px) { .fg-calc__form { grid-template-columns: 1fr 1.2fr 1.2fr; align-items: end; } }
.fg .fg-field { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; border: 0; min-width: 0; font-weight: 400; font-size: 1.6rem; }
.fg .fg-field > span, .fg .fg-field legend { font-size: 1.5rem; font-weight: 700; padding: 0; margin: 0 0 2px; color: inherit; border: 0; line-height: 1.4; }
.fg-field small { font-weight: 400; color: inherit; opacity: .85; font-size: .9em; }
.fg .fg-field input[type="text"], .fg .fg-field input[type="tel"], .fg .fg-field input[type="email"], .fg .fg-field input[type="number"], .fg .fg-field select, .fg .fg-field textarea {
  width: 100%; min-height: 48px; padding: .5em .7em; font: 400 1.7rem/1.3 var(--fg-sans); color: var(--fg-ink); background: #fff;
  border: 1.5px solid #8A8F99; border-radius: 6px; box-shadow: none; margin: 0; height: auto; }
.fg .fg-input-eur { display: flex; align-items: center; gap: 8px; font-weight: 700; font-size: 1.7rem; }
.fg-input-eur input { flex: 1 1 auto; }
.fg .fg-field input[type="range"] { width: 100%; accent-color: var(--fg-gold); min-height: 36px; margin: 0; }
.fg .fg-seg { flex-direction: row; flex-wrap: wrap; gap: 0; }
.fg-seg legend { width: 100%; float: left; }
.fg-seg label { flex: 1 1 0; margin: 0; position: relative; cursor: pointer; font-weight: 400; }
.fg-seg input { position: absolute; opacity: 0; inset: 0; margin: 0; }
.fg-seg span { display: flex; align-items: center; justify-content: center; min-height: 48px; padding: .3em .5em; border: 1.5px solid #8A8F99; margin-left: -1.5px; font-weight: 600; font-size: 1.55rem; background: #fff; color: var(--fg-ink); white-space: nowrap; }
.fg-seg label:first-of-type span { border-radius: 6px 0 0 6px; margin-left: 0; }
.fg-seg label:last-of-type span { border-radius: 0 6px 6px 0; }
.fg-seg input:checked + span { background: var(--fg-gold-btn); border-color: var(--fg-gold-edge); position: relative; z-index: 1; }
.fg-seg input:focus-visible + span { outline: 3px solid var(--fg-focus); outline-offset: 2px; }
.fg .fg-calc__result { font-size: clamp(1.9rem, 2vw, 2.3rem); line-height: 1.45; margin: 4px 0 14px; color: #fff; }
.fg-calc__result strong { color: var(--fg-gold-on-dark); font-family: var(--fg-serif); font-size: 1.2em; font-variant-numeric: tabular-nums; white-space: nowrap; }
.fg .fg-calc__gold { color: var(--fg-on-dark-2); font-size: 1.55rem; }
.fg .fg-textcta--light { color: var(--fg-on-dark); }
.fg .fg-textcta--light a { color: var(--fg-gold-on-dark); text-decoration-color: currentColor; }
.fg .fg-textcta--light a:hover { color: #fff; }
.fg .fg-dark .fg-fn { color: var(--fg-on-dark-2); margin: 1em 0 0; }
.fg .fg-card--light { background: var(--fg-ivory); color: var(--fg-ink); border-radius: 12px; padding: clamp(20px, 3vw, 36px); margin-top: 28px; border-left: 5px solid var(--fg-gold); }
.fg .fg-dark .fg-card--light h3 { color: var(--fg-ink); }
.fg .fg-card--light p { color: var(--fg-ink); max-width: 46em; }
.fg .fg-card--light p:last-child { margin-bottom: 0; }

/* ---------- Warum Gold ---------- */
.fg-proofs { display: grid; gap: 18px; margin-top: 28px; }
@media (min-width: 820px) { .fg-proofs { grid-template-columns: 1fr 1fr; gap: 22px; } }
.fg-proof { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: clamp(18px, 2.5vw, 28px); }
.fg .fg-proof h3 { font-size: clamp(2rem, 1.9vw, 2.3rem); }
.fg-proof p:last-child { margin-bottom: 0; }
/* IGWT-Karte: mehr Luft unten und Abstand zur Goldlinie des folgenden Morgan-Zitats (nur dieser Übergang; .fg figure setzt sonst margin 0). */
.fg-proofs > #in-gold-we-trust { padding-bottom: clamp(26px, 3.4vw, 40px); }
.fg .fg-quote#morgan { margin-top: clamp(32px, 4.5vw, 56px); }
.fg-chart { margin: 14px 0 0; }
.fg-chart svg { width: 100%; max-width: 480px; height: auto; display: block; overflow: visible; }
.fg-chart__axis { stroke: #8A8F99; stroke-width: 1; }
.fg-chart__target { stroke: var(--fg-gold-text); stroke-width: 1.5; stroke-dasharray: 5 4; }
.fg-chart__line { fill: none; stroke: var(--fg-ink); stroke-width: 2.5; stroke-linejoin: round; }
.fg-chart__pt { fill: var(--fg-gold-btn); stroke: var(--fg-ink); stroke-width: 1.5; }
.fg-chart__lbl, .fg-chart__val { font-family: var(--fg-sans); font-size: 11px; fill: var(--fg-ink-2); }
.fg-chart__val { font-weight: 700; fill: var(--fg-ink); }
.fg-chart__lbl--target { fill: var(--fg-gold-text); font-weight: 700; }
.fg-chart figcaption { font-size: 1.4rem; color: var(--fg-muted); margin-top: 8px; }
@media (max-width: 520px) { .fg-chart__lbl, .fg-chart__val { font-size: 12px; } }
.fg-quote { margin: clamp(40px, 6vw, 72px) 0 0; padding: clamp(36px, 5vw, 64px) 0; background: var(--fg-ivory-2); border-top: 3px solid var(--fg-gold); border-bottom: 3px solid var(--fg-gold); text-align: center; }
.fg .fg-quote blockquote { font-family: var(--fg-serif); font-style: italic; font-weight: 700; font-size: clamp(3rem, 5.2vw, 6rem); line-height: 1.12; color: var(--fg-ink); margin: 0 auto .3em; max-width: 18em; }
.fg .fg-quote__de { font-family: var(--fg-serif); font-size: clamp(2rem, 2.4vw, 2.8rem); color: var(--fg-gold-text); margin-bottom: .8em; }
.fg-quote figcaption { font-size: 1.6rem; color: var(--fg-ink-2); margin-bottom: .6em; }
.fg .fg-quote__ctx { font-size: 1.6rem; font-style: italic; color: var(--fg-ink-2); }
.fg .fg-quote__fn { font-size: 1.4rem; color: var(--fg-muted); margin: 0; }

/* ---------- Layout-Helfer ---------- */
.fg-split { display: grid; gap: 28px; align-items: start; }
.fg-split > * { min-width: 0; }
@media (min-width: 900px) {
  .fg-split { grid-template-columns: 1fr 1fr; gap: 48px; }
  .fg-split--img { grid-template-columns: 1fr 1.05fr; align-items: center; }
  .fg-split--trust { grid-template-columns: 1.6fr 1fr; }
}
.fg-figure img { border-radius: 10px; width: 100%; }
.fg-figure figcaption { font-size: 1.35rem; color: var(--fg-muted); margin-top: 6px; }

/* ---------- Tabellen ---------- */
.fg .fg-table { width: 100%; border-collapse: collapse; margin: 0 0 22px; background: var(--fg-paper); font-size: 1.55rem; line-height: 1.45; border: 1px solid var(--fg-line); }
.fg .fg-table caption { caption-side: top; text-align: left; font-weight: 700; font-size: 1.6rem; padding: 0 0 8px; color: var(--fg-ink); }
.fg .fg-table th, .fg .fg-table td { padding: 10px 12px; border: 0; border-bottom: 1px solid var(--fg-line); text-align: left; vertical-align: top; color: var(--fg-ink); background: none; }
.fg .fg-table thead th { background: var(--fg-ivory-2); font-size: 1.45rem; }
.fg .fg-table tbody th { font-weight: 700; }
.fg .fg-table .is-gold, .fg .fg-table tr.is-gold > * { background: var(--fg-goldwash); }
.fg-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 0 0 22px; border-radius: 6px; max-width: 100%; }
.fg .fg-scroll .fg-table { margin: 0; }
.fg .fg-table--compare { min-width: 760px; }
.fg .fg-table--compare tbody th, .fg .fg-table--compare thead th:first-child { position: -webkit-sticky; position: sticky; left: 0; background: var(--fg-ivory-2); z-index: 1; min-width: 130px; }
.fg .fg-table--compare th.is-gold { background: var(--fg-gold-btn); }
@media (max-width: 599px) {
  .fg .fg-table--stack, .fg .fg-table--stack tbody, .fg .fg-table--stack tr, .fg .fg-table--stack th, .fg .fg-table--stack td { display: block; width: 100%; }
  .fg .fg-table--stack { border: 0; background: none; }
  .fg .fg-table--stack caption { display: block; }
  .fg .fg-table--stack thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .fg .fg-table--stack tr { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 8px; margin: 0 0 10px; overflow: hidden; }
  .fg .fg-table--stack tbody th { background: var(--fg-ivory-2); border-bottom: 1px solid var(--fg-line); }
  .fg .fg-table--stack td { display: flex; justify-content: space-between; gap: 12px; border-bottom: 0; }
  .fg .fg-table--stack td[data-label]::before { content: attr(data-label); font-weight: 400; color: var(--fg-muted); flex: 0 1 50%; }
}

/* ---------- Sicherheit ---------- */
.fg .fg-turn { font-family: var(--fg-serif); font-style: italic; font-size: clamp(2.2rem, 2.6vw, 3rem); line-height: 1.3; color: var(--fg-gold-text); margin-bottom: 1.2em; max-width: 28em; }
.fg .fg-features { list-style: none; padding: 0; margin: 36px 0 24px; display: grid; gap: 14px; }
@media (min-width: 720px) { .fg .fg-features { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1080px) { .fg .fg-features { grid-template-columns: repeat(3, 1fr); gap: 18px; } }
.fg-features li { margin: 0; display: flex; gap: 14px; align-items: flex-start; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: 16px; font-size: 1.6rem; }
.fg-features strong { display: block; font-size: 1.7rem; margin-bottom: 2px; }
.fg-ico { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%; background: var(--fg-goldwash); color: var(--fg-gold-text); display: inline-flex; align-items: center; justify-content: center; }
.fg .fg-ico svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.fg .fg-partner { font-size: 1.5rem; color: var(--fg-muted); max-width: 60em; }

/* ---------- Flexibel + Kacheln ---------- */
.fg .fg-flex { list-style: none; padding: 0; margin: 24px 0 32px; display: grid; gap: 12px 32px; }
@media (min-width: 820px) { .fg .fg-flex { grid-template-columns: 1fr 1fr; } }
.fg-flex li { margin: 0; padding-left: 30px; position: relative; }
.fg-flex li::before { content: ""; position: absolute; left: 4px; top: .25em; width: .5em; height: .9em; border: solid var(--fg-gold-text); border-width: 0 3px 3px 0; transform: rotate(45deg); }
.fg-tiles { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 12px; padding: clamp(18px, 3vw, 32px); }
.fg-tiles__row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
@media (min-width: 820px) { .fg-tiles__row { grid-template-columns: repeat(4, 1fr); } }
.fg .fg-tile { display: flex; align-items: center; justify-content: center; text-align: center; min-height: 64px; padding: .6em .8em; border: 2px solid var(--fg-line);
  border-radius: 8px; background: var(--fg-ivory); font-weight: 700; font-size: 1.6rem; line-height: 1.3; text-decoration: none; color: var(--fg-ink); }
.fg .fg-tile:hover { border-color: var(--fg-gold); color: var(--fg-ink); }
.fg .fg-tile[aria-expanded="true"] { background: var(--fg-goldwash); border-color: var(--fg-gold-edge); }
.fg-tilebox { margin-top: 14px; padding: 16px 18px; background: var(--fg-goldwash); border-radius: 8px; }
.fg-tilebox p { margin: 0 0 .5em; }
.fg .fg-tilebox .fg-textcta { margin: .4em 0 0; }

/* ---------- Kosten ---------- */
.fg .fg-more { font-weight: 700; }
.fg-pair { display: grid; gap: 16px; margin: 8px 0 32px; }
@media (min-width: 720px) { .fg-pair { grid-template-columns: 1fr 1fr; gap: 22px; } }
.fg-pair__item { background: var(--fg-paper); border: 1px solid var(--fg-line); border-top: 3px solid var(--fg-gold); border-radius: 10px; padding: 18px 20px; display: flex; flex-direction: column; gap: 6px; }
.fg-pair__item > strong { font-family: var(--fg-serif); font-size: clamp(3rem, 3.6vw, 4.4rem); line-height: 1.05; color: var(--fg-gold-text); font-variant-numeric: tabular-nums; }
.fg-pair__item s { color: var(--fg-muted); text-decoration-thickness: 3px; }
.fg-pair__item > span { font-size: 1.55rem; color: var(--fg-ink-2); }

/* ---------- Schritte ---------- */
.fg .fg-steps { list-style: none; padding: 0; margin: 24px 0; counter-reset: fgstep; display: grid; gap: 14px; }
@media (min-width: 720px) { .fg .fg-steps { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1080px) { .fg .fg-steps { grid-template-columns: repeat(4, 1fr); } }
.fg-steps li { counter-increment: fgstep; margin: 0; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: 18px; }
.fg-steps li::before { content: counter(fgstep); display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--fg-ink); color: #fff; font: 700 1.8rem/1 var(--fg-serif); margin-bottom: 10px; }
.fg-steps strong { display: block; }
.fg .fg-together { font-size: 1.12em; font-family: var(--fg-serif); font-style: italic; }

/* ---------- FAQ ---------- */
.fg-faq { border-top: 1px solid var(--fg-line); margin: 20px 0; }
.fg-faq details { border-bottom: 1px solid var(--fg-line); }
.fg-faq summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 16px 2px; font-family: var(--fg-serif); font-weight: 700; font-size: clamp(1.8rem, 1.8vw, 2.1rem); line-height: 1.35; }
.fg-faq summary::-webkit-details-marker { display: none; }
.fg-faq summary::after { content: "+"; font: 400 2.8rem/1 var(--fg-sans); color: var(--fg-gold-text); flex: 0 0 auto; }
.fg-faq details[open] summary::after { content: "–"; }
.fg-faq details > div { padding: 0 2px 14px; max-width: 46em; }
.fg .fg-faq__more { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; font-weight: 600; }

/* ---------- Trigonus ---------- */
.fg .fg-plus { list-style: none; padding: 0; margin: 20px 0 0; }
.fg-plus li { padding: 12px 0 12px 34px; position: relative; border-top: 1px solid var(--fg-line); margin: 0; }
.fg-plus li::before { content: ""; position: absolute; left: 6px; top: 1.05em; width: .5em; height: .9em; border: solid var(--fg-gold-text); border-width: 0 3px 3px 0; transform: rotate(45deg); }
.fg .fg-plus li.fg-pending { padding-top: 2.2em; }
.fg-card { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 12px; padding: 24px; }
.fg-contactcard { text-align: center; }
.fg-contactcard img { width: 132px; height: 132px; border-radius: 50%; object-fit: cover; margin: 0 auto 12px; }
.fg .fg-contactcard img.fg-contactcard__portrait { width: 100%; max-width: 280px; height: auto; aspect-ratio: 4 / 5; border-radius: 10px; object-position: 50% 20%; }
.fg .fg-contactcard p { font-size: 1.55rem; }

/* ---------- Abschluss + Kontakt ---------- */
.fg-final { background: linear-gradient(180deg, var(--fg-goldwash) 0%, var(--fg-ivory) 70%); }
.fg-final__grid { display: grid; gap: 28px; align-items: center; }
.fg-ways { display: grid; gap: 16px; }
@media (min-width: 680px) { .fg-ways { grid-template-columns: 1fr 1fr; } .fg-way--slim { grid-column: 1 / -1; } }
.fg-way { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 12px; padding: 22px; display: flex; flex-direction: column; gap: 12px; box-shadow: 0 10px 24px -20px rgba(30, 36, 48, .6); }
.fg .fg-way h3 { margin: 0; }
.fg .fg-way p { margin: 0; }
.fg .fg-way .fg-btn { margin-top: auto; align-self: flex-start; }
.fg-way--main:first-child { border-top: 4px solid var(--fg-gold); }
.fg-way--slim { flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px 20px; padding: 16px 22px; box-shadow: none; }
.fg .fg-way--slim h3 { font-size: 1.9rem; }
.fg-way__who { display: flex; gap: 12px; align-items: center; }
.fg-way__who picture { flex: 0 0 56px; }
.fg-way__who img { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; }
.fg-final__img { display: none; }
.fg-final__img img { border-radius: 12px; width: 100%; }
@media (min-width: 1000px) { .fg-final__grid { grid-template-columns: 1.55fr 1fr; gap: 40px; } .fg-final__img { display: block; } }
.fg .fg-final__line { font-family: var(--fg-serif); font-style: italic; font-size: 1.15em; margin: 28px 0; max-width: 40em; }
.fg-form-wrap { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 12px; padding: clamp(18px, 3vw, 34px); max-width: 820px; position: relative; }
.fg-form__switch { display: inline-flex; border: 1.5px solid #8A8F99; border-radius: 8px; overflow: hidden; margin-bottom: 18px; flex-wrap: wrap; }
.fg-form__switch label { margin: 0; position: relative; cursor: pointer; font-weight: 400; }
.fg-form__switch input { position: absolute; opacity: 0; inset: 0; margin: 0; }
.fg-form__switch span { display: block; padding: .6em 1.1em; font-weight: 700; font-size: 1.55rem; min-height: 44px; }
.fg-form__switch input:checked + span { background: var(--fg-ink); color: #fff; }
.fg-form__switch input:focus-visible + span { outline: 3px solid var(--fg-focus); outline-offset: -3px; }
.fg .fg-form h3 { margin-bottom: .6em; }
.fg-form__grid { display: grid; gap: 14px; margin-bottom: 18px; }
@media (min-width: 600px) { .fg-form__grid { grid-template-columns: 1fr 1fr; } .fg-field--wide { grid-column: 1 / -1; } }
.fg [hidden] { display: none !important; }
.fg .fg-hp { position: absolute !important; left: -9999px !important; top: auto; width: 1px; height: 1px; overflow: hidden; }
.fg .fg-form .fg-btn { width: 100%; }
@media (min-width: 600px) { .fg .fg-form .fg-btn { width: auto; } }
.fg .fg-form__err { margin-top: 12px; padding: 12px 14px; background: #FBEDE4; border-left: 4px solid var(--fg-pending); color: var(--fg-ink); }
.fg-thanks { display: flex; gap: 16px; align-items: flex-start; }
.fg-thanks picture { flex: 0 0 72px; }
.fg-thanks img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; }
.fg .fg-thanks__head { font-family: var(--fg-serif); font-size: 2.2rem; font-weight: 700; line-height: 1.3; }
.fg .fg-direct { margin: 18px 0 0; font-weight: 600; }
/* Formular 2026-10-14 (Doku legacy_trigonus_work/flexgold/22-form-wow/10-formular.md): großes Textfeld, sichtbare Bestätigung */
.fg .fg-field textarea { min-height: calc(6 * 1.45em + 1.2em); line-height: 1.45; resize: vertical; display: block; }
.fg .fg-field textarea::placeholder { color: #6B707A; opacity: 1; }
.fg .fg-field input:focus-visible, .fg .fg-field select:focus-visible, .fg .fg-field textarea:focus-visible { outline: 3px solid var(--fg-focus); outline-offset: 1px; border-color: var(--fg-ink); }
.fg-form, .fg-thanks { transition: opacity .28s ease, transform .28s ease; }
.fg-form.is-leaving { opacity: 0; transform: translateY(-6px); }
.fg-form__err, .fg-thanks { scroll-margin-top: calc(var(--fg-top, 0px) + 90px); scroll-margin-bottom: 90px; }
.fg .fg-thanks { background: #fff; border: 1px solid var(--fg-line); border-left: 5px solid var(--fg-gold); border-radius: 10px; padding: clamp(16px, 2.6vw, 26px); box-shadow: 0 10px 28px rgba(28, 31, 38, .08); }
.fg-thanks:focus { outline: none; }
.fg-thanks:focus-visible { outline: 3px solid var(--fg-focus); outline-offset: 3px; }
.fg-thanks.is-entering { opacity: 0; transform: translateY(10px); }
.fg .fg-thanks__kicker { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 6px; font-size: 1.45rem; font-weight: 700; letter-spacing: .02em; color: var(--fg-gold-text); }
.fg-thanks__kicker svg { width: 22px; height: 22px; padding: 3px; border-radius: 50%; background: var(--fg-gold); color: #fff; flex: 0 0 auto; }
.fg-form__err:focus { outline: none; }
.fg-form__err.is-flash { animation: fg-err-flash .9s ease-out 1; }
@keyframes fg-err-flash { 0% { box-shadow: 0 0 0 0 rgba(176, 90, 40, .45); } 100% { box-shadow: 0 0 0 12px rgba(176, 90, 40, 0); } }
@media (max-width: 479px) { .fg-thanks { flex-direction: column; } .fg-thanks picture { flex-basis: auto; } }

/* ---------- Fuß ---------- */
.fg .fg-teaser { display: flex; flex-direction: column; gap: 6px; background: var(--fg-paper); border: 1px solid var(--fg-line); border-left: 4px solid var(--fg-gold); border-radius: 10px; padding: 18px 20px; text-decoration: none; margin-bottom: 22px; }
.fg .fg-teaser .fg-overline { margin: 0; }
.fg .fg-teaser strong { font-family: var(--fg-serif); font-size: 2rem; line-height: 1.3; text-decoration: underline; text-decoration-color: var(--fg-gold); text-underline-offset: .2em; }
.fg .fg-teaser span:last-child { color: var(--fg-ink-2); font-size: 1.55rem; }
.fg .fg-legal { font-size: 1.4rem; }
.fg .fg-tafel { font-size: 1.55rem; color: var(--fg-ink-2); line-height: 1.5; margin: -6px 0 18px; }
.fg .fg-tafel a { white-space: nowrap; }
.fg-video video { width: 100%; height: auto; border-radius: 10px; background: #000; }
.fg-video figcaption { font-size: 1.4rem; color: var(--fg-muted); margin-top: 6px; }

/* ---------- Mobile Aktionsleiste ---------- */
.fg-mbar { display: none; }
@media (max-width: 899px) {
  .fg { padding-bottom: calc(64px + env(safe-area-inset-bottom)); }
  .fg-mbar { display: grid; grid-template-columns: 1.45fr 1fr; position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); gap: 8px; background: rgba(255, 253, 248, .97); border-top: 1px solid var(--fg-line);
    box-shadow: 0 -6px 18px -12px rgba(30, 36, 48, .6); transform: translateY(110%); transition: transform .2s; }
  .fg-mbar.is-on { transform: none; }
  .fg .fg-mbar a { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 6px; font-weight: 700; font-size: 1.65rem; text-decoration: none; color: var(--fg-ink); }
  .fg .fg-mbar__cta { background: var(--fg-gold-btn); border: 2px solid var(--fg-gold-edge); }
  .fg .fg-mbar__tel { border: 2px solid var(--fg-ink); }
}

/* ---------- Theme-Kopf auf dieser Seite mobil verdichten (nur ohne tg-kopf26; mit tg-kopf26 gilt der Kopf der Startseite, voll mobil) ---------- */
@media (max-width: 767px) {
  body:has(main.fg):not(.tg-kopf26) #wrapper { position: relative; }
  body:has(main.fg):not(.tg-kopf26) .header_section { padding: 8px 0 !important; min-height: 0 !important; height: auto !important; }
  body:has(main.fg):not(.tg-kopf26) .header_section .logo { margin: 0 !important; padding: 0 !important; }
  body:has(main.fg):not(.tg-kopf26) .header_section .logo p, body:has(main.fg):not(.tg-kopf26) .header_section .head-contact-info { display: none !important; }
  body:has(main.fg):not(.tg-kopf26) .header_section .logo img { max-height: 44px; width: auto !important; margin: 0 !important; }
  body:has(main.fg):not(.tg-kopf26) .header_section .row > [class*="col-"]:last-child { display: none; }
  body:has(main.fg):not(.tg-kopf26) .navigation_menu { position: absolute !important; top: 4px; right: 6px; left: auto !important; width: auto !important; background: transparent !important; border: 0 !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; box-shadow: none !important; z-index: 9995; }
  body:has(main.fg):not(.tg-kopf26) .navigation_menu.affix { position: fixed !important; }
  body:has(main.fg):not(.tg-kopf26) .navigation_menu .navbar, body:has(main.fg):not(.tg-kopf26) .navigation_menu .container { min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
  body:has(main.fg):not(.tg-kopf26) .navigation_menu .navbar-toggle { margin: 4px 0 !important; }
  body:has(main.fg):not(.tg-kopf26) .navigation_menu .navbar-collapse.in, body:has(main.fg):not(.tg-kopf26) .navigation_menu .navbar-collapse.collapsing { background: #fff; width: 88vw; max-height: 80vh; overflow: auto; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }
}

/* ---------- Bewegung ---------- */
@media (prefers-reduced-motion: reduce) {
  .fg *, .fg-mbar { transition: none !important; scroll-behavior: auto !important; }
  .fg-form__err.is-flash { animation: none; }
}

/* ---------- Druckansicht (Fix 2026-10-10, Doku legacy_trigonus_work/99-druck-merkzettel-fix.md) ---------- */
@media print {
  @page { size: A4; margin: 12mm; }
  body:has(main.fg) .header_section, body:has(main.fg) .navigation_menu, body:has(main.fg) #header_shadow, body:has(main.fg) .footer_section, body:has(main.fg) footer:not(.fg footer),
  body:has(main.fg) .enigma_footer_widget_area, body:has(main.fg) .enigma_footer_area,
  body:has(main.fg) #cmplz-cookiebanner-container, body:has(main.fg) .cmplz-cookiebanner, body:has(main.fg) #cmplz-manage-consent,
  body:has(main.fg) #dio-api-client-wrapper, body:has(main.fg) [id^="fancybox"], body:has(main.fg) #wpadminbar,
  .fg-bar, .fg-mbar, .fg-video, .fg-hero__img, .fg-tiles, .fg-form-wrap, .fg-final__img, .fg-calc__form, .fg-textcta, .fg-chapters, .fg-ways, .fg-share, .trustpilot-widget, .trustoo-widget { display: none !important; }
  body:has(main.fg), body:has(main.fg) #wrapper { background: #fff !important; margin: 0 !important; padding: 0 !important; box-shadow: none !important; width: auto !important; max-width: none !important; }
  .fg { background: #fff; font-size: 11pt; padding: 0; }
  .fg .fg-dark, .fg .fg-dark h2, .fg .fg-dark h3, .fg .fg-dark p, .fg .fg-dark li, .fg .fg-dark strong, .fg .fg-dark span, .fg .fg-motto, .fg .fg-motto span, .fg .fg-calc__result, .fg .fg-calc__result strong { background: #fff !important; color: #000 !important; }
  .fg-calc { background: #fff; border-color: #999; }
  .fg-section { padding: 10pt 0; }
  /* Theme-Bootstrap haengt im Druck die URL an jeden Link: in Knoepfen und Fliesstext unterdruecken */
  .fg a[href]::after, .fg abbr[title]::after { content: none !important; }
  /* Knoepfe sind auf Papier nicht klickbar: nur der Hero-Knopf bleibt, mit lesbarer Registrierungsadresse */
  .fg .fg-btn, .fg a.fg-btn, .fg button { display: none !important; }
  .fg .fg-hero a.fg-btn[href*="go.flexgold.com"] { display: inline-block !important; border: 1.5pt solid #000 !important; background: #fff !important; color: #000 !important; box-shadow: none !important; min-height: 0; padding: 4pt 8pt; }
  .fg .fg-hero a.fg-btn[href*="go.flexgold.com"]::after { content: ": go.flexgold.com/c/1WDEM" !important; font-weight: 400; }
  .fg details::details-content { content-visibility: visible; display: block; }
  .fg details > summary::after, .fg details > summary::before { display: none !important; }
  .fg img { max-height: 75mm; width: auto !important; max-width: 100%; object-fit: contain; }
  .fg-proof, .fg-features li, .fg-kpis li, .fg .fg-table tr, .fg-faq details, .fg-fit > div, .fg-answer, .fg-author, .fg figure, .fg-steps li { break-inside: avoid; page-break-inside: avoid; }
  .fg h1, .fg h2, .fg h3 { break-after: avoid; page-break-after: avoid; break-inside: avoid; page-break-inside: avoid; }
  .fg .fg-scroll { overflow: visible !important; }
  .fg .fg-table--compare { min-width: 0 !important; width: 100%; font-size: 8.5pt; }
  .fg .fg-scroll-hint { display: none !important; }
  .fg .fg-table--compare tbody th, .fg .fg-table--compare thead th:first-child { position: static !important; }
}

/* ---------- Wissensartikel ---------- */
.fg-article { padding: clamp(24px, 4vw, 56px) 0 clamp(48px, 6vw, 80px); }
.fg-wrap--article { max-width: 820px; }
.fg-article section { margin-top: clamp(36px, 5vw, 56px); }
.fg-article h1 { font-size: clamp(3rem, 3.8vw, 4.6rem); }
.fg-article h2 { font-size: clamp(2.5rem, 2.8vw, 3.2rem); }
.fg .fg-back { font-size: 1.5rem; margin-bottom: 1.4em; }
.fg-answer { background: var(--fg-paper); border: 1px solid var(--fg-line); border-left: 5px solid var(--fg-gold); border-radius: 10px; padding: clamp(18px, 3vw, 28px); margin: 28px 0; }
.fg .fg-answer h2 { font-size: 2.2rem; margin-bottom: .4em; }
.fg .fg-answer p { margin: 0; }
.fg-toc { background: var(--fg-ivory-2); border-radius: 10px; padding: 16px 22px; }
.fg .fg-toc p { margin: 0 0 .4em; }
.fg .fg-toc ol { margin: 0; padding-left: 1.4em; }
.fg .fg-toc li { margin: .2em 0; }
.fg .fg-checks { list-style: none; padding: 0; }
.fg-checks li { padding-left: 30px; position: relative; }
.fg-checks li::before { content: ""; position: absolute; left: 4px; top: .25em; width: .5em; height: .9em; border: solid var(--fg-gold-text); border-width: 0 3px 3px 0; transform: rotate(45deg); }
.fg .fg-inline-cta { font-weight: 700; background: var(--fg-goldwash); padding: 12px 16px; border-radius: 8px; }
.fg-fit { display: grid; gap: 14px; margin: 18px 0 24px; }
@media (min-width: 760px) { .fg-fit { grid-template-columns: repeat(3, 1fr); } }
.fg-fit > div { background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: 18px; }
.fg-fit > div.is-gold { background: var(--fg-goldwash); border-color: var(--fg-gold); }
.fg .fg-fit h3 { font-size: 2rem; }
.fg .fg-fit p { margin: 0; font-size: 1.6rem; }
.fg-author { display: flex; gap: 18px; align-items: flex-start; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 12px; padding: 20px; margin: 40px 0 24px; }
.fg-author picture { flex: 0 0 88px; }
.fg-author img { width: 88px; height: 88px; border-radius: 50%; object-fit: cover; }
.fg .fg-author p { font-size: 1.55rem; margin: 0 0 .5em; }
.fg-article .fg-table { margin-top: 12px; }

/* ---------- Korrekturen Runde 1b ---------- */
.fg output { display: inline; padding: 0; margin: 0; font: inherit; color: inherit; line-height: inherit; }
.fg #warum-gold { padding-bottom: 0; }
@media (max-width: 1499px) { .fg .fg-hide-s { display: none; } }
.fg-seg input, .fg-form__switch input { width: 100%; height: 100%; z-index: 2; cursor: pointer; }
.fg .fg-qlist { padding-left: 1.4em; }
.fg .fg-qlist li { margin-bottom: .8em; }
.fg .fg-qlist strong { display: block; }

/* ---------- Runde 2: Auftraggeber-Feedback 09.10.2026 ---------- */
/* Kein Trustpilot auf dieser Seite (auch nicht im Theme-Footer); Bewertungen über Trustlocal */
body:has(main.fg) .trustpilot-widget { display: none !important; }
.fg-trust { margin-top: 8px; }
/* Hero-Zitat */
.fg-hero__quote { margin: 0 0 .6em; }
.fg .fg-hero__quote blockquote { margin: 0; padding: 0; border: 0; background: none; quotes: none; }
.fg .fg-hero__quote blockquote::before, .fg .fg-hero__quote blockquote::after { content: none; }
.fg .fg-hero__quote h1 { margin: 0 0 .25em; font-size: clamp(3.4rem, 5vw, 5.8rem); line-height: 1.08; }
.fg-hero__quote figcaption { font-size: 1.5rem; color: var(--fg-ink-2); line-height: 1.45; }
.fg-hero__orig { display: block; font-style: italic; color: var(--fg-muted); }
.fg .fg-micro--onboard { color: var(--fg-ink-2); }
.fg .fg-micro--onboard strong { color: var(--fg-ink); }
/* KPI-Karte breit (Zollfreilager) */
.fg-kpis li.fg-kpis__wide { grid-column: 1 / -1; padding: 0; overflow: hidden; display: grid; grid-template-columns: 1fr; gap: 0; }
.fg-kpis__wide img { width: 100%; height: 100%; max-height: 260px; object-fit: cover; }
.fg-kpis__wide > div { padding: 16px 18px; display: flex; flex-direction: column; gap: 6px; }
.fg-kpis__wide small { font-size: 1.25rem; color: var(--fg-muted); }
@media (min-width: 720px) { .fg-kpis li.fg-kpis__wide { grid-template-columns: 2fr 3fr; } .fg-kpis__wide img { max-height: none; min-height: 220px; } .fg-kpis__wide > div { padding: 22px 26px; justify-content: center; } }
/* Bild breit (Kaufkraft) */
.fg-figure--wide { margin: 28px 0 8px; }
.fg-dark .fg-figure figcaption { color: var(--fg-on-dark-2); font-family: var(--fg-serif); font-style: italic; font-size: 1.6rem; }
/* Zitatband: alter Leitsatz */
.fg .fg-quote__big { font-family: var(--fg-serif); font-weight: 700; font-size: clamp(3rem, 4.8vw, 5.4rem); line-height: 1.12; color: var(--fg-ink); margin: 0 auto .4em; max-width: 16em; }
.fg .fg-quote__big span { color: var(--fg-gold-text); display: block; }
.fg .fg-quote__ctx { max-width: 40em; margin-left: auto; margin-right: auto; }
/* Steuer-Grafik */
.fg-taxline { margin: 8px 0 28px; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: 16px 18px; }
.fg-taxline svg { width: 100%; max-width: 620px; height: auto; display: block; }
.fg-taxline figcaption { font-size: 1.45rem; color: var(--fg-ink-2); margin-top: 6px; }
.fg-tl__lbl { font: 700 15px var(--fg-sans); fill: var(--fg-ink); }
.fg-hero__quote figcaption { margin-bottom: .5em; }
.fg-tl__lbl--s { font-size: 13px; fill: var(--fg-gold-text); }
.fg-tl__in { font: 700 14.5px var(--fg-sans); fill: #fff; }
.fg-tl__in--dark { fill: var(--fg-ink); }
.fg-tl__bad { fill: #8A4B3C; }
.fg-tl__mid { fill: #E6DCC4; }
.fg-tl__good { fill: var(--fg-gold-btn); }
.fg-tl__mark { stroke: var(--fg-gold-text); stroke-width: 2; stroke-dasharray: 4 3; }
/* Eigentum vs. Forderung */
.fg-owner { display: grid; gap: 22px; margin: 32px 0 8px; padding: clamp(18px, 3vw, 28px); background: var(--fg-paper); border: 1px solid var(--fg-line); border-top: 3px solid var(--fg-gold); border-radius: 10px; }
@media (min-width: 900px) { .fg-owner { grid-template-columns: 1fr 1fr; align-items: center; gap: 36px; } }
.fg-owner__fig { margin: 0; }
.fg-owner__fig svg { width: 100%; height: auto; display: block; }
.fg-owner__fig figcaption { font-size: 1.3rem; color: var(--fg-muted); margin-top: 6px; }
.fg-ow__h { font: 700 18px var(--fg-serif); fill: var(--fg-ink-2); }
.fg-ow__h--gold { fill: var(--fg-gold-text); }
.fg-ow__box { fill: #fff; stroke: var(--fg-line); stroke-width: 1.5; }
.fg-ow__box--grey { fill: #ECEAE5; }
.fg-ow__box--warn { fill: #F4E1DC; stroke: #8A4B3C; }
.fg-ow__box--gold { fill: var(--fg-goldwash); stroke: var(--fg-gold); }
.fg-ow__bar { fill: var(--fg-gold-btn); stroke: var(--fg-gold-edge); stroke-width: 1.5; }
.fg-ow__t { font: 600 13.5px var(--fg-sans); fill: var(--fg-ink); }
.fg-ow__t--dark { fill: var(--fg-ink); }
.fg-ow__s { font: italic 700 14px var(--fg-serif); fill: #8A4B3C; }
.fg-ow__s--gold { fill: var(--fg-gold-text); }
.fg-ow__ln { stroke: var(--fg-gold); stroke-width: 2.5; }
.fg-ow__ln--dash { stroke: #9A958A; stroke-dasharray: 5 4; }
.fg-owner__fig--article { margin: 22px 0; max-width: 600px; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; padding: 14px 16px; }

/* ---------- Runde C1 (Builder-Korrektur) ---------- */
/* Hero Desktop: Zitat in zwei Zeilen, Haupt-CTA im ersten Bildschirm (1366×768, auch bei 20 px Browserschrift).
   Mittelterm in vw hält die H1 unabhängig von der Browserschrift im Rahmen. */
@media (min-width: 900px) {
  .fg-hero { padding-top: clamp(14px, 1.6vw, 28px); }
  .fg-hero__grid { grid-template-columns: 1.4fr .6fr; gap: 36px; }
  .fg .fg-hero__quote h1 { font-size: clamp(3.4rem, 3.5vw, 5.4rem); }
  .fg-hero h1 span { white-space: nowrap; }
  .fg-hero .fg-overline { margin-bottom: .5em; }
}
/* Dieter-Karte ohne Zitat: Sachangaben */
.fg .fg-dieter figcaption p.fg-dieter__who { font-size: 1.7rem; color: var(--fg-ink); margin: 0 0 .2em; }
.fg .fg-dieter figcaption a { white-space: nowrap; }
/* Vergleichstabelle: Wischhinweis, solange die Tabelle seitlich scrollt */
.fg .fg-scroll-hint { display: none; font-size: 1.45rem; font-weight: 600; color: var(--fg-gold-text); margin: 0 0 6px; }
@media (max-width: 899px) { .fg .fg-scroll-hint { display: block; } }
/* ETC-Grafik: breit ab 600 px, gestapelt darunter */
.fg-owner__fig .fg-ow-svg--stack { display: none; }
@media (max-width: 599px) {
  .fg-owner__fig .fg-ow-svg--wide { display: none; }
  .fg-owner__fig .fg-ow-svg--stack { display: block; max-width: 420px; margin: 0 auto; }
}
.fg-ow-svg--stack .fg-ow__t { font-size: 14.5px; }
.fg-ow-svg--stack .fg-ow__s { font-size: 15px; }
.fg-ow__sep { stroke: var(--fg-line); stroke-width: 1.5; }
/* Bildunterschriften mindestens 12 px auch bei 14 px Browserschrift */
.fg-figure figcaption, .fg-kpis__wide small, .fg-owner__fig figcaption { font-size: 1.4rem; }
/* Anbietervideo bei den Schritten */
.fg-video--steps { max-width: 720px; margin: 8px 0 24px; }
/* Generationen-Bild auch unter 1000 px: als breites Band unter den Startwegen */
@media (max-width: 999px) {
  .fg-final__img { display: block; margin: 0; }
  .fg-final__img img { aspect-ratio: 16 / 7; object-fit: cover; object-position: center 55%; }
}
/* Wissensartikel: Einstiegsbild + weicher CTA */
.fg-article__hero { margin: 4px 0 22px; }
@media (min-width: 900px) { .fg-article__hero img { aspect-ratio: 3 / 1; } }
.fg-article__hero img { width: 100%; aspect-ratio: 5 / 2; object-fit: cover; border-radius: 10px; }
.fg-softcta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin: 22px 0 8px; padding: 18px 20px; background: var(--fg-goldwash, #F6EFDC); border: 1px solid var(--fg-line); border-left: 4px solid var(--fg-gold); border-radius: 10px; }
.fg .fg-softcta p { margin: 0; flex: 1 1 22em; }

/* ---------- Jury-Runde (09.10.2026): Hero-Ansprechpartner, Gesprächs-Einstieg, Kosteneinordnung ---------- */
.fg-tl__in--s { font-size: 12.5px; }
.fg-hero__grid > .fg-hero__text { order: 1; }
.fg-hero__grid > .fg-hb { order: 2; }
.fg-hero__grid > .fg-hero__img { order: 3; }
@media (min-width: 900px) {
  .fg-hero__grid { grid-template-rows: auto 1fr; align-items: start; }
  .fg-hero__grid > .fg-hero__text { grid-column: 1; grid-row: 1 / span 2; align-self: start; padding-top: 8px; }
  .fg-hero__grid { column-gap: 48px; row-gap: 18px; }
  .fg-hero__grid > .fg-hero__img { grid-column: 2; grid-row: 2; }
  .fg-hero__grid > .fg-hb { grid-column: 2; grid-row: 1; }
  .fg-hero__grid { grid-template-columns: 1.05fr .95fr; }
  .fg-hero__grid > .fg-hero__img img { aspect-ratio: 16 / 7; }
}
.fg-hb { background: var(--fg-paper); border: 1px solid var(--fg-line); border-top: 3px solid var(--fg-gold); border-radius: 10px; padding: 18px 20px; display: flex; flex-direction: column; gap: 10px; box-shadow: 0 14px 30px -22px rgba(30, 36, 48, .5); }
.fg-hb__top { display: flex; gap: 16px; align-items: center; }
.fg-hb__top picture { flex: 0 0 auto; }
.fg-hb__top img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; object-position: 50% 30%; border: 3px solid var(--fg-paper); box-shadow: 0 0 0 1px var(--fg-line); }
.fg .fg-hb p { margin: 0; }
.fg .fg-hb__kicker { font-size: 1.3rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--fg-gold-text); }
.fg .fg-hb__name { font-size: 1.45rem; line-height: 1.35; color: var(--fg-ink-2); }
.fg .fg-hb__name strong { font-family: var(--fg-serif); font-size: 2.2rem; color: var(--fg-ink); }
.fg .fg-hb__since { font-size: 1.45rem; color: var(--fg-ink-2); }
.fg .fg-hb__since a { font-weight: 700; white-space: nowrap; }
.fg .fg-hb__offer { font-size: 1.6rem; line-height: 1.45; }
.fg .fg-hb .fg-btn { align-self: flex-start; }
.fg .fg-hb__why { font-size: 1.45rem; line-height: 1.5; color: var(--fg-ink-2); }
.fg-trust--hero { margin-top: 2px; min-height: 60px; overflow: hidden; }
@media (max-width: 420px) { .fg-hb__top img { width: 96px; height: 96px; } }

.fg-talk { background: var(--fg-goldwash); border-bottom: 1px solid var(--fg-line); padding: 18px 0; }
.fg-talk[hidden] { display: none; }
.fg-talk__in { display: flex; gap: 18px; align-items: flex-start; }
.fg-talk__in picture { flex: 0 0 auto; }
.fg-talk__in img { width: 88px; height: 88px; border-radius: 50%; object-fit: cover; object-position: 50% 30%; }
.fg .fg-talk p { margin: 0 0 .4em; }
.fg .fg-talk__head { font-family: var(--fg-serif); font-size: clamp(2.2rem, 2.4vw, 2.8rem); line-height: 1.2; color: var(--fg-ink); }
.fg .fg-talk__links { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; padding: 0; margin: .3em 0 .6em; counter-reset: fgtalk; }
.fg .fg-talk__links li { margin: 0; counter-increment: fgtalk; }
.fg .fg-talk__links a { display: inline-flex; gap: .45em; align-items: center; padding: .45em .9em; border-radius: 999px; background: var(--fg-paper); border: 1px solid var(--fg-gold); font-weight: 700; text-decoration: none; color: var(--fg-ink); }
.fg .fg-talk__links a::before { content: counter(fgtalk); display: inline-grid; place-items: center; width: 1.5em; height: 1.5em; border-radius: 50%; background: var(--fg-gold-btn); font-size: .85em; }
.fg .fg-talk__tel a { font-weight: 700; white-space: nowrap; }
@media (max-width: 599px) { .fg-talk__in img { width: 64px; height: 64px; } }

.fg-depot { margin: 0; padding: 18px 20px; border-left: 4px solid var(--fg-gold); background: var(--fg-paper); border-radius: 0 8px 8px 0; }
.fg .fg-depot p { margin: 0 0 .3em; }
.fg .fg-depot__head { font-family: var(--fg-serif); font-size: clamp(2rem, 2.2vw, 2.5rem); line-height: 1.25; color: var(--fg-ink); }
.fg .fg-depot a { font-weight: 700; white-space: nowrap; }
@media (max-width: 520px) { .fg .fg-depot a { white-space: normal; } }

.fg-calc__cta { margin: 18px 0 8px; }
.fg .fg-calc__ask { font-family: var(--fg-serif); font-size: clamp(2rem, 2.2vw, 2.5rem); color: #fff; margin: 0; }
.fg .fg-calc__cta .fg-actions { margin-top: .6em; }
.fg .fg-calc__cta .fg-micro { color: var(--fg-on-dark-2); }
.fg .fg-btn--light { color: var(--fg-on-dark); border-color: var(--fg-on-dark); }
.fg .fg-btn--light:hover { background: rgba(255, 255, 255, .1); color: #fff; }

.fg-costbox { margin: 18px 0 0; padding: clamp(16px, 2.6vw, 24px); background: var(--fg-goldwash); border-radius: 10px; }
.fg .fg-costbox p { margin: 0 0 .6em; }
.fg .fg-costbox__q { font-family: var(--fg-serif); font-size: clamp(2.1rem, 2.3vw, 2.6rem); line-height: 1.25; color: var(--fg-ink); }
.fg .fg-costbox .fg-textcta { margin: .4em 0 0; }
@media (min-width: 900px) { .fg-pair { grid-template-columns: repeat(3, 1fr); } }

.fg .fg-share { font-size: 1.45rem; color: var(--fg-muted); margin: 1.2em 0 .4em; }
.fg .fg-share a { font-weight: 700; }
.fg .fg-share__copy { font: inherit; font-weight: 700; background: none; border: 0; padding: 0; color: var(--fg-gold-text); text-decoration: underline; cursor: pointer; }

@media (min-width: 820px) { .fg-proofs > #in-gold-we-trust { grid-column: 1 / -1; } }
@media (min-width: 1080px) { .fg .fg-features { grid-template-columns: 1fr 1fr; } }
@media (max-width: 899px) { .fg .fg-contactcard__portrait { max-height: 280px; object-fit: cover; object-position: 50% 25%; width: 100%; } }

/* Gold/Wiesnbier-Ratio unter dem Inflationsrechner (Grafik Incrementum, In Gold We Trust 2026) */
.fg .fg-bier { margin: 22px 0 6px; padding-top: 20px; border-top: 1px solid var(--fg-night-line); }
.fg .fg-bier__text { font-family: var(--fg-sans, inherit); font-style: normal; font-size: 1.6rem; line-height: 1.55; color: var(--fg-on-dark-2); margin: 0 0 14px; }
.fg .fg-bier__text strong { color: #fff; }
.fg .fg-bier__text sup a { color: inherit; }
.fg .fg-bier__chart { max-width: 720px; }
.fg .fg-wiesn { display: block; width: 100%; height: auto; }
.fg .fg-wiesn--k { display: none; }
.fg .fg-bier__krug { width: 26px !important; height: 15px !important; flex: 0 0 26px; }
@media (max-width: 600px) { .fg .fg-wiesn--l { display: none; } .fg .fg-wiesn--k { display: block; } }
.fg .fg-bier__legende { font-size: 1.3rem; color: var(--fg-on-dark-2); margin: 6px 0 0; display: flex; align-items: flex-start; gap: 8px; flex-wrap: nowrap; }
.fg .fg-bier__orig { background: none; border: 0; padding: 0; color: var(--fg-gold-on-dark); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font: inherit; }
.fg-lightbox { border: 0; border-radius: 12px; padding: 16px; max-width: min(96vw, 1000px); width: fit-content; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; overflow: auto; background: #fff; color: #1E2430; }
.fg-lightbox::backdrop { background: rgba(10, 14, 22, .8); }
/* Bild in die Höhe einpassen: Fensterhöhe − Dialograd (2×16) − Dialogpolster (2×16) − Schließen-Zeile (~38) − Bildunterschrift (~2 Zeilen, 44). */
.fg-lightbox picture { display: block; }
.fg-lightbox img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100vh - 146px); max-height: calc(100dvh - 146px); margin: 0 auto; }
.fg-lightbox p { font-size: 1.3rem; margin: 8px auto 0; color: #5A6170; max-width: 0; min-width: 100%; }
.fg-lightbox__close { float: right; border: 0; background: none; font-size: 3rem; line-height: 1; cursor: pointer; color: #1E2430; margin: -8px -4px 0 0; }
.fg .fg-bier__quelle { font-size: 1.3rem; color: var(--fg-on-dark-2); margin: 8px 0 0; }
@media print { .fg .fg-bier__chart { max-width: 140mm; } .fg .fg-bier { border-color: #999; } .fg .fg-bier__orig, .fg-lightbox { display: none !important; } .fg .fg-wiesn text { fill: #000 !important; } }

/* ---------- Wissensartikel: Fußnoten + Quellenliste (TFN-Muster website_footer_notes), 4 Karten „Für wen passt was?“ ---------- */
.fg sup.fg-fnref { font-size: .7em; line-height: 0; vertical-align: super; margin-left: .05em; }
.fg sup.fg-fnref a { display: inline-block; line-height: 1; text-decoration-thickness: 1px; padding: 0 .1em; font-variant-numeric: tabular-nums; scroll-margin-top: calc(var(--fg-top) + 140px); }
.fg-sources { margin-top: clamp(36px, 5vw, 56px); padding: 18px 22px; background: var(--fg-paper); border: 1px solid var(--fg-line); border-radius: 10px; }
.fg .fg-sources h2 { font-size: 2.2rem; }
.fg .fg-sources__list { margin: 0; padding-left: 2em; font-size: 1.45rem; line-height: 1.5; color: var(--fg-ink-2); }
.fg .fg-sources__list li { margin: 0 0 .6em; overflow-wrap: anywhere; scroll-margin-top: calc(var(--fg-top) + 130px); }
.fg .fg-sources__list li::marker { color: var(--fg-muted); font-variant-numeric: tabular-nums; }
.fg .fg-sources__list li:target { background: var(--fg-goldwash); border-radius: 4px; }
.fg sup.fg-fnref a:target { outline: 2px solid var(--fg-gold); outline-offset: 1px; background: var(--fg-goldwash); border-radius: 2px; }
.fg .fg-sources__back { white-space: nowrap; margin-left: .4em; font-size: .9em; }
@media (min-width: 760px) { .fg-fit.fg-fit--4 { grid-template-columns: repeat(2, 1fr); } }
@media print { .fg .fg-sources__back { display: none; } .fg-sources { break-inside: avoid; } }
/* Wiesnbier-Infografik (IGWT-Spezial S. 4) direkt auf der Seite, Klick = Lightbox */
.fg .fg-bier__bild { display: block; position: relative; padding: 0; border: 0; background: #fff; border-radius: 10px; cursor: zoom-in; max-width: 560px; width: 100%; overflow: hidden; }
.fg .fg-bier__bild img { display: block; width: 100%; height: auto; }
.fg .fg-bier__lupe { position: absolute; right: 10px; bottom: 10px; background: rgba(30,36,48,.85); color: #fff; font-size: 1.3rem; padding: 4px 10px; border-radius: 6px; }
@media print { .fg .fg-bier__bild { max-width: 110mm; } .fg .fg-bier__lupe { display: none; } }

/* Option D Kosten (2026-10-13): Aufklappbereich mit Zahlen */
.fg .fg-kosten-zahlen { margin: 22px 0 10px; border: 1px solid var(--fg-line, #E2D8C3); border-radius: 10px; background: #fff; }
.fg .fg-kosten-zahlen > summary { cursor: pointer; padding: 14px 18px; font-weight: 700; font-size: 1.7rem; list-style: none; position: relative; padding-right: 44px; }
.fg .fg-kosten-zahlen > summary::-webkit-details-marker { display: none; }
.fg .fg-kosten-zahlen > summary::after { content: "+"; position: absolute; right: 18px; top: 50%; transform: translateY(-50%); font-size: 2.4rem; color: var(--fg-gold-text); }
.fg .fg-kosten-zahlen[open] > summary::after { content: "−"; }
.fg .fg-kosten-zahlen__inhalt { padding: 0 18px 16px; }
.fg .fg-kosten-tabelle { width: 100%; border-collapse: collapse; font-size: 1.55rem; min-width: 560px; }
.fg .fg-kosten-tabelle th, .fg .fg-kosten-tabelle td { text-align: left; vertical-align: top; padding: 9px 10px; border-bottom: 1px solid #E2D8C3; }
.fg .fg-kosten-tabelle thead th { font-size: 1.35rem; text-transform: uppercase; letter-spacing: .05em; color: var(--fg-muted); }
.fg .fg-kosten-tabelle td:nth-child(2) { font-weight: 700; white-space: normal; }
@media print { .fg .fg-kosten-zahlen > summary { display: none; } .fg .fg-kosten-zahlen { border: 0; } .fg .fg-kosten-zahlen:not([open]) > .fg-kosten-zahlen__inhalt { display: block; } }

/* Fußnoten in hellen Karten innerhalb dunkler Abschnitte (z. B. Fn. 3 in #aktien): dunkle Schrift */
.fg .fg-dark .fg-card--light .fg-fn, .fg .fg-dark .fg-card--light .fg-fn a { color: #4A5160; }
.fg .fg-dark .fg-card--light sup a { color: #7A5C14; font-weight: 700; }
.fg .fg-chart__target--basis { stroke-dasharray: 2 4; opacity: .7; }

/* KI-Hinweis an fotorealistischen KI-Bildern (2026-10-14): Badge im Bildfeld unten links, Fläche trägt den Kontrast */
.fg .fg-ki { position: relative; display: block; container-type: inline-size; }
/* KI-Kennzeichnung nach TFN-Vorbild (WissenKiBadge, Stil „klein“): Text + Haken, dunkles Glas, eckig.
   Kontrast: Weiß auf schwarz 62 % ergibt auch über reinem Weiß mind. #616161 → 6,2:1 (≥ 4,5:1). */
.fg .fg-ki__badge { position: absolute; left: clamp(6px, 1.4cqi, 14px); bottom: clamp(6px, 1.4cqi, 14px); z-index: 1; display: inline-flex; align-items: center; gap: .25em; padding: .42em .66em; background: rgba(0, 0, 0, .62); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); color: #fff; font-family: var(--fg-sans); font-size: 1.25rem; font-weight: 500; line-height: 1; letter-spacing: .01em; border-radius: 0; pointer-events: none; white-space: nowrap; }
.fg .fg-ki__badge svg { width: 1.05em; height: 1.05em; flex: none; }
.fg-kpis__wide .fg-ki, .fg-kpis__wide .fg-ki picture { height: 100%; }
@media print {
  .fg .fg-ki { display: inline-block; }
  .fg .fg-ki__badge { background: #000 !important; color: #fff !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
/* v20: Gold-Artikel Kostenvergleich 5 Jahre, Vergütungshinweis, vorläufige Angaben */
.fg-article .fg-own { margin: 0 0 22px; padding: 12px 16px; background: var(--fg-paper); border: 1px solid var(--fg-line); border-left: 3px solid var(--fg-gold); border-radius: 6px; font-size: 1.55rem; line-height: 1.5; }
.fg .fg-pruefen { color: #A3161A; background: #FDE7E7; padding: 0 .25em; border-radius: 3px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }
.fg .fg-pruefen__hinweis { font-size: .85em; font-weight: 400; white-space: nowrap; }
@media (max-width: 599px) {
  .fg .fg-table--kosten td { display: block; }
  .fg .fg-table--kosten td[data-label]::before { display: block; font-size: .9em; margin-bottom: 2px; }
}
/* Unterstreichung auch unter Unterlängen (g, p, y) durchziehen, z. B. Quellenlinks */
.fg .fg-sources a, .fg .fg-sources__list a { text-decoration-skip-ink: none; }
/* Outbound-Hinweis an allen Links in die flexgold-Registrierung (Affiliate, neuer Tab) */
.fg a[href*="go.flexgold.com"]::after { content: "\2197"; display: inline-block; margin-left: .35em; font-weight: 700; text-decoration: none; line-height: 1; }
/* Zwei unabhängige Text-CTAs klar trennen: Punkt durch senkrechten Strich mit Abstand ersetzen */
.fg .fg-textcta > span[aria-hidden="true"] { display: inline-block; width: 2px; height: 20px; margin: 0 24px; vertical-align: -4px; background: currentColor; opacity: .35; font-size: 0; overflow: hidden; }
/* Rückruf-Widget (Plugin): Overlay über dem fixierten Menü, mobil Knopf über der Sticky-Leiste */
body:has(main.fg) { --jae-cb-overlay-z: 10001; }
@media (max-width: 899px) { body:has(main.fg) { --jae-cb-bottom: 80px; } }

/* ---------- Dezente Einblendeffekte (Workflow 22-form-wow, 2026-10-14) ----------
   Startzustand nur, wenn flexgold.js die Klasse .fg-motion setzt (nur Landingpage, nicht Gesprächsmodus).
   Nur Opacity/Transform, kein Layout-Versatz. Druck und reduzierte Bewegung: alles steht sofort. */
@media screen and (prefers-reduced-motion: no-preference) {
  .fg-motion { --fg-ease: cubic-bezier(.2, .7, .2, 1); }
  /* Kennzahlen und Belege: einblenden mit kleinem Weg */
  .fg-motion .fg-kpis > li[data-fg-rv], .fg-motion .fg-proof[data-fg-rv] { transition: opacity .45s var(--fg-ease) var(--fg-d, 0ms), transform .45s var(--fg-ease) var(--fg-d, 0ms); }
  .fg-motion .fg-kpis > li[data-fg-rv]:not(.is-in) { opacity: 0; transform: translateY(14px); }
  .fg-motion .fg-proof[data-fg-rv]:not(.is-in) { opacity: 0; transform: translateY(12px); }
  /* Goldpreis: Linie zeichnet sich, danach Punkte, Werte und Ziellinien */
  .fg-motion .fg-chart svg[data-fg-rv] .fg-chart__line { stroke-dasharray: var(--fg-len); transition: stroke-dashoffset .9s cubic-bezier(.4, 0, .2, 1); }
  .fg-motion .fg-chart svg[data-fg-rv]:not(.is-in) .fg-chart__line { stroke-dashoffset: var(--fg-len); }
  .fg-motion .fg-chart svg[data-fg-rv] :is(.fg-chart__pt, .fg-chart__val) { transition: opacity .25s ease .75s; }
  .fg-motion .fg-chart svg[data-fg-rv] :is(.fg-chart__target, .fg-chart__target + text) { transition: opacity .4s ease .9s; }
  .fg-motion .fg-chart svg[data-fg-rv]:not(.is-in) :is(.fg-chart__pt, .fg-chart__val, .fg-chart__target, .fg-chart__target + text) { opacity: 0; }
  /* Zitat: „Gold ist Eigentum.“ folgt leicht verzögert, nur Opacity */
  .fg-motion .fg-quote__big span[data-fg-rv] { transition: opacity .5s ease .25s; }
  .fg-motion .fg-quote__big span[data-fg-rv]:not(.is-in) { opacity: 0; }
  /* Steuer: Balken wachsen von links, der goldene Balken etwas später */
  .fg-motion .fg-taxline svg[data-fg-rv] :is(.fg-tl__bad, .fg-tl__mid, .fg-tl__good) { transform-box: fill-box; transform-origin: 0 50%; transition: transform .6s var(--fg-ease); }
  .fg-motion .fg-taxline svg[data-fg-rv] .fg-tl__mid { transition-delay: .1s; }
  .fg-motion .fg-taxline svg[data-fg-rv] .fg-tl__good { transition-delay: .25s; }
  .fg-motion .fg-taxline svg[data-fg-rv]:not(.is-in) :is(.fg-tl__bad, .fg-tl__mid, .fg-tl__good) { transform: scaleX(0); }
  .fg-motion .fg-taxline svg[data-fg-rv] :is(.fg-tl__in, .fg-tl__mark, .fg-tl__lbl--s) { transition: opacity .3s ease .55s; }
  .fg-motion .fg-taxline svg[data-fg-rv] .fg-tl__mark, .fg-motion .fg-taxline svg[data-fg-rv] .fg-tl__lbl--s { transition-delay: .75s; }
  .fg-motion .fg-taxline svg[data-fg-rv]:not(.is-in) :is(.fg-tl__in, .fg-tl__mark, .fg-tl__lbl--s) { opacity: 0; }
  /* v35/v36 (19.10.2026, nach dem Vorbild RP AKTIV v2, Protokoll 40-lp-v2/07-animationen.md) */
  /* Motto Kaufkraft: zweite Satzhälfte folgt wie beim Morgan-Zitat, nur Opacity */
  .fg-motion .fg-motto span[data-fg-rv] { transition: opacity .5s ease .25s; }
  .fg-motion .fg-motto span[data-fg-rv]:not(.is-in) { opacity: 0; }
  /* Eigentum oder Forderung: Grafik baut sich Zeile für Zeile auf (Verzögerung je Zeile per JS in --fg-o),
     Verbindungslinien wachsen von oben, die beiden Ergebnissätze kommen zuletzt */
  .fg-motion .fg-ow-g[data-fg-rv] > :is(rect, text, line) { transform-box: fill-box; transition: opacity .4s var(--fg-ease) var(--fg-o, 0ms), transform .4s var(--fg-ease) var(--fg-o, 0ms); }
  .fg-motion .fg-ow-g[data-fg-rv] > line { transform-origin: 50% 0; }
  .fg-motion .fg-ow-g[data-fg-rv]:not(.is-in) > :is(rect, text) { opacity: 0; transform: translateY(6px); }
  .fg-motion .fg-ow-g[data-fg-rv]:not(.is-in) > line { opacity: 0; transform: scaleY(0); }
  /* Vier Schritte: nacheinander, wie die Auswahlstationen auf RP AKTIV */
  .fg-motion .fg-steps > li[data-fg-rv] { transition: opacity .45s var(--fg-ease) var(--fg-d, 0ms), transform .45s var(--fg-ease) var(--fg-d, 0ms); }
  .fg-motion .fg-steps > li[data-fg-rv]:not(.is-in) { opacity: 0; transform: translateY(12px); }
  /* Übersprungen (Anker-Sprung) oder beim Laden schon im Bild: ohne Übergang */
  .fg-motion .fg-rv-now, .fg-motion .fg-rv-now * { transition: none !important; }
}

/* v30 (LP v2, 17.10.2026, Jury 40-lp-v2/03-typografie-hb.md, Variante C): Hero-Kleintexte und Hanau-Karte größer für 55+; nur .fg-hero/.fg-hb (Gold-Artikel lädt diese Datei mit). */
.fg .fg-hero .fg-micro { font-size: 1.6rem; }
.fg-hero .fg-chips li { font-size: 1.5rem; }
.fg-hero__quote figcaption { font-size: 1.6rem; }
.fg .fg-hb__kicker { font-size: 1.35rem; letter-spacing: .03em; }
.fg .fg-hb__name { font-size: 1.5rem; }
.fg .fg-hb__since { font-size: 1.5rem; }
.fg .fg-hb__offer { font-size: 1.8rem; line-height: 1.4; }
.fg .fg-hb__why { font-size: 1.7rem; line-height: 1.55; color: var(--fg-ink-2); }
.fg .fg-hb__why strong { color: var(--fg-ink); }
/* v31 (LP v2, Alex 17.10.): Text der Kennzahl-Kacheln (u. a. Zollfreilager) wie Fließtext der Karten, 1.7rem statt 1.55rem */
.fg-kpis span { font-size: 1.7rem; line-height: 1.5; }

/* v32 (LP v2, Alex 17.10.: Typografie ganze LP, Jury 40-lp-v2/05-typografie-lp.md, Variante B+).
   Alles nur auf der LP: main.fg[data-berater] gibt es nur in index.php/index-v2-change.php, nicht im Gold-Artikel (lädt diese Datei mit). */
/* 1) Grundgröße mit Boden: 1rem mindestens 10 px (Fließtext 17 px auch bei 14 px Browserschrift), ab 900 px mindestens 10,625 px (Fließtext 18 px).
      Größere Browserschrift (18/20 px) wirkt wie bisher. Theme-Kopf und -Fuß rechnen in px und bleiben unverändert. */
html:has(main.fg[data-berater]) { font-size: max(62.5%, 10px); }
@media (min-width: 900px) { html:has(main.fg[data-berater]) { font-size: max(62.5%, 10.625px); } }
/* 2) Kleinste Stufe mindestens 1.4rem */
.fg[data-berater] .fg-hb__kicker,
.fg[data-berater] .fg-ki__badge,
.fg[data-berater] .fg-bier__lupe, .fg[data-berater] .fg-bier__quelle, .fg[data-berater] .fg-bier__legende,
.fg[data-berater] .fg-kosten-tabelle thead th,
.fg[data-berater] .fg-field small { font-size: 1.4rem; }
body:has(main.fg[data-berater]) .fg-lightbox p { font-size: 1.4rem; }
/* 3) Sekundärtext mindestens 1.6rem */
.fg[data-berater] .fg-table, .fg[data-berater] .fg-kosten-tabelle { font-size: 1.6rem; }
.fg[data-berater] .fg-table thead th { font-size: 1.5rem; }
.fg[data-berater] .fg-field > span, .fg[data-berater] .fg-field legend, .fg[data-berater] .fg-seg span, .fg[data-berater] .fg-form__switch span,
.fg[data-berater] .fg-calc__gold, .fg[data-berater] .fg-contactcard p, .fg[data-berater] .fg-teaser span:last-child, .fg[data-berater] .fg-tafel,
.fg[data-berater] .fg-pair__item > span, .fg[data-berater] .fg-chapters a, .fg[data-berater] .fg-hero .fg-chips li { font-size: 1.6rem; }
/* 4) Kartentext wie Fließtext, Haupt-CTA mindestens so groß wie der Lead */
.fg[data-berater] .fg-features li { font-size: 1.7rem; }
.fg[data-berater] .fg-features strong { font-size: 1.8rem; }
.fg[data-berater] .fg-btn--l { font-size: 2rem; }
/* 5) H1 am Desktop über dem H2 halten (vorher blieb sie bei 1280 px durch 3.5vw bei 44,8 px) */
@media (min-width: 900px) { .fg[data-berater] .fg-hero__quote h1 { font-size: clamp(3.4rem, 2.4rem + 2.2vw, 5.4rem); } }
/* 6) Zeilenlänge ca. 75 Zeichen (em wächst mit der Schrift) */
.fg[data-berater] .fg-prose, .fg[data-berater] .fg-faq details > div { max-width: 35em; }
.fg[data-berater] .fg-proof p, .fg[data-berater] .fg-card--light p, .fg[data-berater] .fg-kosten-zahlen__inhalt > p { max-width: 36em; }
.fg[data-berater] .fg-intro, .fg[data-berater] .fg-plus li { max-width: 38em; }
.fg[data-berater] .fg-together { max-width: 34em; }
.fg[data-berater] .fg-fn, .fg[data-berater] .fg-partner, .fg[data-berater] .fg-chart figcaption { max-width: 42em; }

/* v33 (LP v2, Alex 17.10., Test): Motto farblich getauscht: Geld/Steuer-Teil weiß, Gold-Teil golden */
.fg .fg-motto { color: #fff; }
.fg .fg-motto span { color: var(--fg-gold-on-dark); }
/* v33: Text der Wiesnbier-Grafik wie Fließtext (Alex: zu klein) */
.fg .fg-bier__text { font-size: 1.7rem; }
/* v34 (Alex 17.10.): getrennte Quellen in einer Fußnote je eigene Zeile mit Aufzählungszeichen */
.fg .fg-fn__src { display: block; padding-left: 1em; text-indent: -1em; margin-top: .25em; }
.fg .fg-fn__src::before { content: "- "; }

/* v37/v38 (LP v2, Alex 19.10.): Wiesnbier mit Tabelle und Balken neben der Grafik (Mini-Jury Variante C, 40-lp-v2/08-runde-alex-19-10.md);
   Basel-Überschrift bricht nach „Gold ist Geld.“ um. Nur LP-Klassen, der Gold-Artikel nutzt sie nicht. */
.fg .fg-bier__grid { display: grid; gap: 18px 28px; align-items: start; }
@media (min-width: 900px) { .fg .fg-bier__grid { grid-template-columns: minmax(0, 420px) minmax(0, 1fr); } }
.fg .fg-bier__grid .fg-bier__bild { max-width: 420px; }
.fg .fg-bier__daten { min-width: 0; }
.fg .fg-bier__tab { width: 100%; max-width: 30em; border-collapse: collapse; border: 0; background: none; font-size: 1.7rem; color: var(--fg-on-dark-2); font-variant-numeric: tabular-nums; }
.fg .fg-bier__tab caption { text-align: left; font-weight: 700; color: #fff; padding: 0 0 8px; caption-side: top; }
.fg .fg-bier__tab th, .fg .fg-bier__tab td { padding: 7px 12px 7px 0; border: 0; border-bottom: 1px solid var(--fg-night-line); background: none; text-align: left; font-weight: 400; }
.fg .fg-bier__tab thead th { font-size: 1.5rem; font-weight: 600; white-space: nowrap; }
.fg .fg-bier__tab thead th:nth-child(2), .fg .fg-bier__tab td:nth-child(2) { text-align: right; white-space: nowrap; padding-right: 16px; }
.fg .fg-bier__tab tbody th { color: #fff; }
.fg .fg-bier__tab tfoot th { white-space: nowrap; }
.fg .fg-bier__tab tfoot th, .fg .fg-bier__tab tfoot td { font-size: 1.6rem; border-bottom: 0; }
.fg .fg-bier__tab tfoot tr:first-child th, .fg .fg-bier__tab tfoot tr:first-child td { padding-top: 12px; }
.fg .fg-bier__tab td:last-child { width: 45%; padding-right: 0; }
.fg .fg-bier__tab td:last-child span { display: block; padding: 2px 6px; color: #fff; font-weight: 600; background: linear-gradient(90deg, rgba(212,175,95,.42), rgba(212,175,95,.42)) no-repeat 0 0 / var(--w) 100%; }
.fg .fg-bier__tab .is-top th, .fg .fg-bier__tab .is-top td { color: var(--fg-gold-on-dark); font-weight: 700; }
.fg .fg-bier__tab .is-top td:last-child span { background-image: linear-gradient(90deg, var(--fg-gold-on-dark), var(--fg-gold-on-dark)); color: #1E2430; }
.fg .fg-bier__pointe { font-size: 1.7rem; line-height: 1.55; color: #fff; font-weight: 600; margin: 16px 0 0; max-width: 35em; }
@media print { .fg .fg-bier__tab td:last-child span { background: none; color: #000; } .fg .fg-bier__pointe, .fg .fg-bier__tab caption, .fg .fg-bier__tab th { color: #000; } }
.fg .fg-h3-teil { display: inline-block; }
.fg .fg-bier__tab td:last-child { text-align: left; padding-right: 0; } /* Durchschnittszeile: colspan macht die Maß-Zelle zum 2. Kind */
/* v39 (LP v2, Alex 20.10.): Überschriften am Desktop höchstens 3.5rem statt 4rem (H2 und Motto), nur LP */
.fg:where([data-berater]) h2 { font-size: clamp(2.7rem, 3.3vw, 3.5rem); } /* gleiche Spezifität wie .fg h2, Sonderregeln (.fg .fg-xyz h2) bleiben */
.fg:where([data-berater]) .fg-motto { font-size: clamp(2.5rem, 3.4vw, 3.5rem); }
/* v40 (LP v2, Alex 20.10.): Hinweis unter der Vergleichstabelle (Gold-ETF vs. Fonds mit „Gold“ im Namen), Fließtextgröße, Lesemaß */
.fg[data-berater] .fg-compare-note { font-size: 1.7rem; line-height: 1.55; max-width: 38em; margin: 14px 0 0; color: var(--fg-ink-2, inherit); }
/* v41 (LP v2, Alex 20.10.): Vergleich, Fußnoten 6/7 und Namenshinweis auf dieselbe Laufweite wie die Einleitung (.fg-intro: 38em × 1.12 × 1.7rem = 72.35rem) */
.fg[data-berater] #vergleich .fg-compare-note, .fg[data-berater] #vergleich .fg-fn { max-width: 72.35rem; }
/* v42 (LP v2, Alex 20.10.): Links zum Gold-Artikel öffnen im neuen Tab, Hinweis-Icon wie n-tv auf der Startseite */
.fg .fg-ext { font-size: .8em; margin-left: .35em; vertical-align: .05em; text-decoration: none; display: inline-block; }
/* v43 (LP v2, Alex 20.10.): Kopf der Startseite (tg-kopf26). Der neue Kopf ist am Desktop rund 130 px niedriger als der alte LP-Kopf;
   der Hero bekommt deshalb mehr Luft unter dem Menüschatten, Haupt-CTA bleibt im ersten Bildschirm (1366 × 768). */
@media (min-width: 900px) { body.tg-kopf26 .fg[data-berater] .fg-hero { padding-top: clamp(24px, 1.8vw, 40px); } }
/* Footer der Startseite auf der LP: Wurzelschrift ist hier ab 900 px mindestens 10,625 px (v32), --tg-fs-ui (max(1.6rem, 16px)) ergäbe 17 statt 16 px.
   Gleiche Lösung wie die O2-Taglineregel im Child-Theme: max(1.5rem, 16px) bzw. max(1.3rem, 14px). Nur im Footer, nur LP (data-berater). */
@media (min-width: 900px) { body.tg-kopf26:has(main.fg[data-berater]) .enigma_footer_widget_area { --tg-fs-ui: max(1.5rem, 16px); --tg-fs-klein: max(1.3rem, 14px); } }

/* ===== v47 (20.10.2026, Freigabe Alex): Lesespur Gold-LP v3 aus theme-redesign/37-lesespur-lp.md §9, Datei agent-work-lesespur-lp/flexgold-lesespur-v3.css, unverändert übernommen ===== */
/* Lesespur Gold-LP v3 (37-lesespur-lp.md §9). Aenderungen gegenueber v2 nach Alex 20.10.:
   - Lesemass statt Halbspalte fuer Fliesstext direkt im Abschnitt: 72.35rem = Laufweite der Einleitung (Flexgold-Agent v41,
     flexgold.css Z. 863 f., mit Alex abgestimmt). Gilt fuer Einleitungen, Hinweise (.fg-compare-note), Fussnoten (.fg-fn), Textlisten.
   - Textkaesten (Aktien-Karte, Kostenkasten, FAQ) so breit wie das Lesemass: rechte Kastenkante = rechte Kante der Einleitungen.
   - Abschluss „Wie moechten Sie starten?“: Wege und Bild in der Zweierteilung (1fr 1fr, 48 px), Wege untereinander; Raster endet links und rechts an der Inhaltskante.
   - Unveraendert aus v2: eine Teilung, Text in Modulen/Karten ohne eigene Spalte, Kleintext ohne kuenstliche Spalte, keine zentrierte Insel, Kasten-Innenmass 30 px. */
main.fg:not(.fg-article) .fg-wrap { container-type: inline-size; }
@media (min-width: 900px) {
  main.fg:not(.fg-article) :is(.fg-split--img, .fg-split--trust) { grid-template-columns: 1fr 1fr; }
  main.fg:not(.fg-article) :is(.fg-proofs, .fg-features, .fg-pair) { grid-template-columns: 1fr 1fr; column-gap: 48px; }
  /* 1 Lesemass */
  main.fg:not(.fg-article) .fg-section .fg-wrap > :is(p:not([class]), .fg-intro, .fg-together, .fg-tafel, .fg-faq__more, .fg-prose, .fg-compare-note, .fg-fn),
  main.fg:not(.fg-article) .fg-section .fg-wrap > div:not([class]) > :is(p:not([class]), .fg-intro),
  main.fg:not(.fg-article) .fg-section .fg-wrap > :is(ul, ol).fg-plus { max-width: min(100%, 72.35rem); }
  main.fg:not(.fg-article) .fg-section .fg-split > div > :is(p, .fg-intro) { max-width: none; }
  main.fg:not(.fg-article) .fg-prose > p, main.fg:not(.fg-article) .fg-plus li { max-width: none; }
  /* 2 Textkaesten = Lesemass */
  main.fg:not(.fg-article) :is(.fg-card--light, .fg-kosten-zahlen, .fg-faq) { max-width: min(100%, 72.35rem); box-sizing: border-box; }
  /* 3 Text in Kaesten, Modulen, Karten ohne eigene Spalte */
  main.fg:not(.fg-article) :is(.fg-calc, .fg-card, .fg-proof, .fg-owner, .fg-kosten-zahlen, .fg-way, .fg-depot, .fg-tilebox, .fg-bier, .fg-faq) :is(p, li, div) { max-width: none; }
  /* 4 Kleintext und Pointen ohne kuenstliche Spalte (Fussnoten und Namenshinweis folgen dem Lesemass, siehe 1) */
  main.fg:not(.fg-article) .fg-section :is(.fg-partner, .fg-micro, .fg-legal, .fg-src, .fg-bier__quelle, figcaption, .fg-final__line, .fg-calc__ask, .fg-depot__head, .fg-quote__big, .fg-turn, .fg-more) { max-width: none; }
  main.fg:not(.fg-article) :is(.fg-calc, .fg-card, .fg-proof, .fg-kosten-zahlen) .fg-fn { max-width: none; }
  /* 5 Keine zentrierte Insel */
  main.fg:not(.fg-article) .fg-wrap--narrow { max-width: 1180px; }
  /* 6 Kasten-Innenmass 30 px */
  main.fg:not(.fg-article) :is(.fg-calc, .fg-proof, .fg-card, .fg-way, .fg-tilebox, .fg-taxline, .fg-kosten-zahlen) { padding-left: 30px; padding-right: 30px; }
  main.fg:not(.fg-article) .fg-card--light { padding-left: 25px; } /* 5 px Goldrand + 25 = 30 */
  main.fg:not(.fg-article) .fg-calc .fg-depot { padding-left: 26px; }
  main.fg:not(.fg-article) .fg-kosten-tabelle { padding-left: 0; padding-right: 0; }
}
@media (min-width: 1000px) {
  /* 7 Abschluss: Wege links, Bild rechts, beide Haelften bis zur Inhaltskante */
  main.fg:not(.fg-article) .fg-final__grid { grid-template-columns: 1fr 1fr; column-gap: 48px; align-items: start; }
  main.fg:not(.fg-article) .fg-final__grid .fg-ways { grid-template-columns: 1fr; }
}

/* v47: FAQ-Aufklappzeichen wie RP AKTIV v4: Pfeilspitze nach unten (zu) bzw. oben (offen) statt Plus/Minus (Alex: „ein Minus wirkt psychologisch negativ“) */
.fg-faq summary::after { content: ""; width: 10px; height: 10px; margin-right: 8px; border-right: 2px solid var(--fg-gold-text); border-bottom: 2px solid var(--fg-gold-text); transform: translateY(-25%) rotate(45deg); font-size: 0; flex: 0 0 auto; }
.fg-faq details[open] summary::after { content: ""; transform: translateY(25%) rotate(-135deg); }
/* v48/v50 (Alex 20.10.): Produktzeile im Hero unter dem Morgan-Zitat, zwei Zeilen (Umbruch nach dem Komma) */
.fg .fg-hero__produkt { font-family: var(--fg-sans); font-weight: 700; font-size: max(1.8rem, 17px); line-height: 1.4; color: var(--fg-ink); margin: -.2em 0 1.1em; padding-left: 14px; border-left: 3px solid var(--fg-gold); max-width: 32em; }
.fg .fg-hero__produkt span { display: block; }
/* v51: Produktzeile kostet am Desktop bei großer Browserschrift rund 80 px; Abstände im Hero straffen, damit der Haupt-CTA im ersten Bildschirm bleibt */
@media (min-width: 900px) {
  .fg .fg-hero .fg-lead:has(+ .fg-hero__produkt) { margin-bottom: .45em; }
  .fg .fg-hero__produkt { font-size: max(1.7rem, 16px); line-height: 1.32; margin: 0 0 .7em; }
  .fg .fg-hero__quote figcaption { margin-bottom: .35em; }
  .fg .fg-hero .fg-overline { margin-bottom: .3em; }
  body.tg-kopf26 .fg[data-berater] .fg-hero { padding-top: clamp(18px, 1.4vw, 32px); }
}
/* v52 (Alex 20.10.): Kicker „Ihr Ansprechpartner in Hanau“ in der Hero-Karte ab 1200 px einzeilig. Ursache: Die Karte ist ab 1300 px schmaler
   (Rasterverhältnis), neben dem 120-px-Porträt bleiben 245 px, der Kicker braucht in Versalien mit .03em Sperrung 268 px. Statt die Schrift unter
   die 14-px-Untergrenze zu senken (1.27rem = 13,5 px): Porträt 104 px und Sperrung .01em. */
@media (min-width: 1200px) {
  .fg[data-berater] .fg-hb__top img { width: 104px; height: 104px; }
  .fg[data-berater] .fg-hb__kicker { letter-spacing: .01em; }
}
/* v53 (Alex 20.10.): Hero-Karte auf Rasterlinien. Vorher drei konkurrierende Spaltenverhältnisse (Z. 99 1.15fr/.85fr, Z. 542 1.4fr/.6fr,
   Z. 589 1.05fr/.95fr); die Karte endete 20 bis 24 px vor der Inhaltskante und begann je Breite an einer anderen Stelle.
   Neu ab 900 px eine Regel: zwei gleiche Hälften, 48 px Spaltenabstand wie die Lesespur (37 §9, Prüfregel E): Karte links am Beginn der rechten
   Halbspalte, rechts an der Inhaltskante. Die breitere Karte trägt den Kicker in einer Zeile, deshalb Porträt und Sperrung wieder wie vor v52. */
@media (min-width: 900px) {
  .fg[data-berater] .fg-hero__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 48px; width: 100%; }
  .fg[data-berater] .fg-hero__grid > .fg-hb, .fg[data-berater] .fg-hero__grid > .fg-hero__img { justify-self: stretch; width: auto; max-width: none; margin-left: 0; margin-right: 0; }
}
@media (min-width: 1200px) {
  .fg[data-berater] .fg-hb__top img { width: 120px; height: 120px; }
  .fg[data-berater] .fg-hb__kicker { letter-spacing: .03em; }
}

/* v54 (Alex 20.10.): Hero-Karte klebte am Kopf (18 px). Übergang Kopf → Seite wie auf den übrigen tg-kopf26-Seiten: 40 px. */
@media (min-width: 900px) {
  body.tg-kopf26 .fg[data-berater] .fg-hero { padding-top: 40px; } /* überschreibt Z. 869/924 (Straffung v52) */
}

/* v55 (Alex 20.10.): Zitat-H1 ragte über die linke Spalte in die Hero-Karte (nowrap-Zeile „und nichts anderes.“, bis 190 px Überstand).
   Linke Spalte endet an der rechten Kante der Karte „Die Reserve der Notenbanken.“ (= Spaltenende); H1-Größe an die Spaltenbreite gekoppelt.
   Dachzeile: Umbruch hinter dem Komma. */
.fg-hero .fg-overline .fg-zeile { display: block; }
@media (min-width: 900px) {
  .fg[data-berater] .fg-hero__text { container-type: inline-size; min-width: 0; }
  .fg[data-berater] .fg-hero__quote h1 { font-size: min(clamp(3.4rem, 2.4rem + 2.2vw, 5.4rem), 9.3cqi); }
}

/* v56 (Alex 20.10.): Hervorhebung im Fließtext der Kennzahl-Kacheln nur fett in Textfarbe (vorher erbte sie Serife, Größe und Gold der Kachelüberschrift).
   Zitatquelle ohne vorangestellten Strich, englisches Original als eigene Zeile (oben); Anbieterzeile im Hero entfernt (.fg-provider gelöscht).
   Kartentexte nebeneinander beginnen auf gleicher Höhe, auch wenn Überschriften umbrechen (Subgrid; Kennzahlen ab 440 px, Notenbanken/Basel ab 820 px). */
.fg .fg-kpis span strong { font: inherit; font-weight: 700; color: var(--fg-ink); }
@supports (grid-template-rows: subgrid) {
  @media (min-width: 440px) { main.fg:not(.fg-article) .fg-kpis > li:not(.fg-kpis__wide) { display: grid; grid-row: span 2; grid-template-rows: subgrid; row-gap: 6px; align-content: start; } }
  @media (min-width: 820px) { main.fg:not(.fg-article) .fg-proofs > :is(#notenbanken, #basel) { display: grid; grid-row: span 3; grid-template-rows: subgrid; row-gap: 0; align-content: start; } }
}
/* v56 (Alex 20.10.): Zollfreilager-Kachel ab 900 px auf den Halbspalten der Seite: Bild endet an der rechten Kante von „Die Reserve der Notenbanken.“,
   Text beginnt in der rechten Halbspalte (Kante #basel / Hero-Karte). Mobil unverändert (Bild volle Breite). */
@media (min-width: 900px) {
  main.fg:not(.fg-article) .fg-kpis li.fg-kpis__wide { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 48px; }
  main.fg:not(.fg-article) .fg-kpis__wide > div { padding-left: 0; padding-right: 30px; }
}

/* v57 (Alex 20.10., Fassung Q, jury-hover/jury.md): Kennzahl-Kacheln sind Links zum passenden Beleg.
   Ganze Kachel = <a class="fg-kpi">; Innenmaß wandert vom <li> auf den Link (Subgrid bleibt: der Link ist selbst Subgrid über beide Zeilen).
   Goldtönung als ::before (max. 15 % Deckkraft, 220 ms), Oberkante kräftiger; Hover nur bei (hover: hover); :focus-visible wie Hover plus Rahmen;
   Pfeil unten rechts, am Desktop dezent, mobil voll; reduzierte Bewegung: nur Farbwechsel. */
.fg .fg-kpis > li { padding: 0; overflow: hidden; }
.fg .fg-kpis a.fg-kpi, .fg .fg-kpis a.fg-kpi:hover { color: var(--fg-ink); text-decoration: none; }
.fg .fg-kpis a.fg-kpi { position: relative; isolation: isolate; display: flex; flex-direction: column; gap: 6px; height: 100%; padding: 16px 18px 36px; border-radius: inherit; }
.fg .fg-kpis a.fg-kpi::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: 0; transition: opacity .22s ease-out;
  background: linear-gradient(135deg, rgba(201, 160, 74, .15) 0%, rgba(201, 160, 74, .07) 55%, rgba(201, 160, 74, .03) 100%); box-shadow: inset 0 2px 0 var(--fg-gold); }
.fg .fg-kpis .fg-kpi__pfeil { position: absolute; right: 16px; bottom: 8px; font-style: normal; font-size: 2rem; line-height: 1; color: var(--fg-gold-text); opacity: .6; transition: opacity .22s ease-out, transform .22s ease-out; }
@media (hover: hover) {
  .fg .fg-kpis a.fg-kpi:hover::before { opacity: 1; }
  .fg .fg-kpis a.fg-kpi:hover .fg-kpi__pfeil { opacity: 1; transform: translateX(3px); }
}
@media (hover: none) { .fg .fg-kpis .fg-kpi__pfeil { opacity: 1; } }
.fg .fg-kpis a.fg-kpi:focus-visible { outline: 3px solid var(--fg-focus); outline-offset: -3px; }
.fg .fg-kpis a.fg-kpi:focus-visible::before { opacity: 1; }
.fg .fg-kpis a.fg-kpi:focus-visible .fg-kpi__pfeil { opacity: 1; }
@media (prefers-reduced-motion: reduce) {
  .fg .fg-kpis a.fg-kpi::before, .fg .fg-kpis .fg-kpi__pfeil { transition: none; }
  .fg .fg-kpis a.fg-kpi:hover .fg-kpi__pfeil { transform: none; }
}
@supports (grid-template-rows: subgrid) {
  @media (min-width: 440px) { main.fg:not(.fg-article) .fg-kpis > li:not(.fg-kpis__wide) > a.fg-kpi { display: grid; grid-row: 1 / span 2; grid-template-rows: subgrid; row-gap: 6px; align-content: start; } }
}
/* breite Zollfreilager-Kachel: Raster vom <li> auf den Link */
.fg .fg-kpis li.fg-kpis__wide { display: block; }
.fg .fg-kpis__wide > a.fg-kpi { display: grid; grid-template-columns: 1fr; gap: 0; padding: 0; }
.fg .fg-kpis__wide a.fg-kpi > div { padding: 16px 18px 36px; display: flex; flex-direction: column; gap: 6px; }
@media (min-width: 720px) { .fg .fg-kpis__wide > a.fg-kpi { grid-template-columns: 2fr 3fr; } .fg .fg-kpis__wide a.fg-kpi > div { padding: 22px 26px 36px; justify-content: center; } }
@media (min-width: 900px) {
  main.fg:not(.fg-article) .fg-kpis__wide > a.fg-kpi { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 48px; }
  main.fg:not(.fg-article) .fg-kpis__wide a.fg-kpi > div { padding-left: 0; padding-right: 30px; }
}
/* Sprungziele der Kacheln unter der festen Kopfzeile */
.fg :is(#basel, #steuer, #sekundenverkauf, #kosten, #sicherheit) { scroll-margin-top: calc(var(--fg-top) + 110px); }

/* v58 (Alex 20.10., Überschrift „Vom ersten Gramm bis zur Vermögensreserve“): Spalten nie breiter als ihr Anteil
   (vorher schob das lange Wort „Vermögensreserve“ die dritte Spalte über den Rand). Trennung nur gezielt per &shy; im Markup, keine automatische. */
@media (min-width: 440px) { .fg .fg-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 900px) { .fg .fg-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* v59 (Alex 20.10.): Kachelüberschriften einheitlich 8 % kleiner (vorher clamp(2.5rem, 2.6vw, 3.1rem)), damit
   „Ab 1 € bis zur Vermögensreserve“ am Desktop ohne Trennung zweizeilig steht (Bedarf gemessen: 1280/14 0,3 %, 1366/20 7,6 %).
   Gesetz der Nähe: in der Subgrid-Reihe sitzt jede Überschrift unten in ihrer Zeile, direkt über dem Text; Texte bleiben auf gleicher Höhe. */
.fg .fg-kpis a.fg-kpi > strong, .fg .fg-kpis a.fg-kpi > div > strong { font-size: calc(clamp(2.5rem, 2.6vw, 3.1rem) * .92); }
@supports (grid-template-rows: subgrid) {
  @media (min-width: 440px) { main.fg:not(.fg-article) .fg-kpis > li:not(.fg-kpis__wide) > a.fg-kpi > strong { align-self: end; } }
}
