/* P0-B/PERF-1: self-gehostete Schriften und metrische Fallbacks.
   Erzeugt von scripts/perf/fetch_selfhost_fonts.py — nicht von Hand pflegen.
   Subsets: latin, latin-ext. Lizenz: SIL OFL.
   D65-Dedup 2026-08-11 (von Hand, ueberlebt kein Regenerat): die Hanken-
   Gewichte 500/600/700/800 zeigen bewusst auf die 400er-Datei je Subset —
   alle fuenf Dateien sind byteidentisch (latin 34.704 B, latin-ext 19.588 B,
   SHA-256 je gleich). Spart die konkurrierenden Schnitte in der PDP-Fruehlast;
   font-weight bleibt deklariert, die Dateien bleiben liegen. */
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/anton-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Anton';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/anton-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:500;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:600;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:700;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:800;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Hanken Grotesk';font-style:normal;font-weight:800;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/hanken-grotesk-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/space-mono-400-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/space-mono-400-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/space-mono-700-latin-ext.woff2) format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url(/templates/Sweet/themes/sweet/fonts/space-mono-700-latin.woff2) format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'BB Hanken Fallback';src:local('Arial');font-style:normal;font-weight:400;size-adjust:99.619%;ascent-override:100.383%;descent-override:30.115%;line-gap-override:0%}
@font-face{font-family:'BB Hanken Fallback';src:local('Arial');font-style:normal;font-weight:500;size-adjust:100.173%;ascent-override:99.827%;descent-override:29.948%;line-gap-override:0%}
@font-face{font-family:'BB Hanken Fallback';src:local('Arial');font-style:normal;font-weight:600;size-adjust:93.887%;ascent-override:106.511%;descent-override:31.953%;line-gap-override:0%}
@font-face{font-family:'BB Hanken Fallback';src:local('Arial');font-style:normal;font-weight:700;size-adjust:94.376%;ascent-override:105.959%;descent-override:31.788%;line-gap-override:0%}
@font-face{font-family:'BB Hanken Fallback';src:local('Arial');font-style:normal;font-weight:800;size-adjust:94.946%;ascent-override:105.323%;descent-override:31.597%;line-gap-override:0%}
@font-face{font-family:'BB Space Fallback';src:local('Courier New');font-style:normal;font-weight:400;size-adjust:101.983%;ascent-override:109.822%;descent-override:35.300%;line-gap-override:0%}
@font-face{font-family:'BB Space Fallback';src:local('Courier New');font-style:normal;font-weight:700;size-adjust:101.983%;ascent-override:109.822%;descent-override:35.300%;line-gap-override:0%}
@font-face{font-family:'BB Anton Impact Fallback';src:local('Impact');font-style:normal;font-weight:400;size-adjust:90%;ascent-override:131.111%;descent-override:36.667%;line-gap-override:0%}
@font-face{font-family:'BB Anton Narrow Fallback';src:local('Arial Narrow');font-style:normal;font-weight:400;size-adjust:82%;ascent-override:143.902%;descent-override:40.244%;line-gap-override:0%}
@font-face{font-family:'BB Anton Arial Fallback';src:local('Arial');font-style:normal;font-weight:400;size-adjust:68%;ascent-override:173.529%;descent-override:48.529%;line-gap-override:0%}
:root{--bb-font-body:'Hanken Grotesk','BB Hanken Fallback',system-ui,sans-serif!important;--bb-font-mono:'Space Mono','BB Space Fallback',ui-monospace,monospace!important;--bb-font-disp:'Anton','BB Anton Impact Fallback','BB Anton Narrow Fallback','BB Anton Arial Fallback','Archivo',system-ui,sans-serif!important}
body{font-family:'Hanken Grotesk','BB Hanken Fallback',system-ui,sans-serif!important}
.bb-fn.bb-fn,.bb-fn-m.bb-fn-m{--bbfn-mono:'Space Mono','BB Space Fallback',ui-monospace,monospace!important;--bbfn-body:'Hanken Grotesk','BB Hanken Fallback',system-ui,sans-serif!important}
/* N76-S11 (2026-09-06): 'IBM Plex Sans' aus allen Stapeln gestrichen. Die Familie wurde nie sichtbar, aber jedes Zeichen, das Hanken nicht traegt (→ in den FlexNav-Panels, ✓ ⚡ ★ 🎁 in OPC-Texten), liess Chrome erst IBMPlexSansVar-Roman.woff2 (69 KB) laden — Plex hat diese Zeichen auch nicht — und danach das ganze Dokument neu layouten (Trace: Layout 10 ms bei 2.286/2.391 Objekten, x4 auf Mobil). Plex-exklusive Zeichen gegenueber Hanken: nur ‡ ‰ ﬁ ﬂ. Die vier Theme-Regeln mit Plex im Stapel (sweet_crit.css) werden hier ueberschrieben. Rollback: diese Zeile entfernen und die drei Stapel oben um ,'IBM Plex Sans' vor system-ui ergaenzen. */
.tooltip,.popover,.fa-sup,.pwa-install-banner{font-family:'Hanken Grotesk','BB Hanken Fallback',system-ui,sans-serif!important}
