/* erp-software.org clean main-nav v2026 */
:root{
  /* Brand */
  --c-primary:#0649d1;
  --c-primary-dark:#0535a0;
  /* Text-Tokens (D4: 3 statt 7 Gray-Töne) */
  --c-text:#0c1628;          /* primary heading + body */
  --c-text-body:#1f2937;     /* body text default */
  --c-text-muted:#475569;    /* secondary, captions */
  --c-text-subtle:#94a3b8;   /* very low emphasis */
  /* Surfaces */
  --c-border:#e3eaf5;
  --c-bg:#fff;
  --c-bg-soft:#f7f9fc;
  --c-bg-alt:#fafbfd;
  /* Type-Scale (D5: 16px Base) */
  --fs-base:16px;
  --fs-sm:14px;
  --fs-lg:18px;
}

/* MAIN NAV — sticky on scroll */
.aa-main-nav{font-family:'Roboto',sans-serif;font-size:15px;background:#fff;border-bottom:1px solid #e5e5e5;position:sticky;top:0;z-index:99999;box-shadow:0 1px 3px rgba(0,0,0,.04);backdrop-filter:saturate(180%) blur(6px)}
@supports (backdrop-filter:blur(6px)){.aa-main-nav{background:rgba(255,255,255,.95)}}
.aa-main-nav *{box-sizing:border-box}
.aa-nav-toggle{display:none}
.aa-nav-list{list-style:none;margin:0 auto;padding:0 12px;display:flex;flex-wrap:nowrap;align-items:stretch;max-width:880px;white-space:nowrap;box-sizing:border-box}
.aa-nav-list > li{position:relative;flex:0 0 auto}
.aa-nav-list a{display:block;padding:16px 18px;color:var(--c-text);text-decoration:none;font-weight:500;line-height:1.2;white-space:nowrap;transition:background .15s,color .15s}
.aa-nav-list a:hover,.aa-nav-list a:focus,.aa-nav-list .has-sub:hover>a,.aa-nav-list .has-sub.aa-open>a{background:var(--c-bg-soft);color:#000;outline:0}
.aa-nav-list .has-sub > a::after{content:" \25BE";font-size:.75em;color:#888;margin-left:4px}
.aa-subnav{list-style:none;margin:0;padding:6px 0;position:absolute;top:100%;left:0;background:#fff;border:1px solid #e5e5e5;box-shadow:0 6px 24px rgba(0,0,0,.08);min-width:240px;display:none;z-index:99999}
/* Hover-Bridge zwischen Level-1 und Level-2: invisible 12px area über dem Submenu */
.aa-nav-list > .has-sub > .aa-subnav::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px;background:transparent}
/* Level-3: 20px Overlap nach links — robust gegen Maus-Off-By-Few-Pixels */
.aa-subnav .aa-subnav{top:-7px;left:calc(100% - 4px);margin-left:0;padding-left:4px}
/* Wide invisible Hover-Bridge nach links (24px) — Maus-Pfad zwischen Level-2 und Level-3 ist robust */
.aa-subnav .has-sub > .aa-subnav::before{content:"";position:absolute;top:-8px;bottom:-8px;left:-24px;width:24px;background:transparent}
/* Selektion: bei has-sub-Hover bleibt Eltern-Item visuell aktiv (visueller Verbindungs-Hint) */
.aa-subnav .has-sub:hover > a,.aa-subnav .has-sub.aa-open > a{background:var(--c-bg-soft);color:#000;font-weight:500}
.aa-subnav .has-sub > a::after{content:" \25B8"}
.aa-nav-list .has-sub:hover > .aa-subnav,.aa-nav-list .has-sub:focus-within > .aa-subnav,.aa-nav-list .has-sub.aa-open > .aa-subnav,.aa-nav-list .has-sub.aa-hover-open > .aa-subnav{display:block}
.aa-subnav li{position:relative;border-bottom:1px solid #f0f0f0}
.aa-subnav li:last-child{border-bottom:0}
.aa-subnav a{padding:10px 16px;font-weight:400}
.aa-nav-list .aa-nav-cta{margin-left:auto;display:flex;align-items:center}
.aa-nav-list .aa-nav-cta > a{background:var(--c-primary);color:#fff;padding:8px 16px;margin:8px 12px;border-radius:4px;font-weight:600;font-size:14px;transition:background .15s,transform .15s}
.aa-nav-list .aa-nav-cta > a:hover{background:var(--c-primary-dark);color:#fff;transform:translateY(-1px)}

@media (max-width:900px){
/* M3: Floating-Hamburger statt Bar + Slide-In-Panel statt Stack */
.aa-nav-toggle{
  display:flex;align-items:center;justify-content:center;
  position:fixed;top:14px;right:16px;
  width:48px;height:48px;
  background:var(--c-text);color:#fff;border:0;border-radius:50%;
  padding:0;cursor:pointer;
  font-size:0;
  box-shadow:0 4px 14px rgba(12,22,40,.20);
  z-index:100000;
  transition:background .15s,transform .15s;
}
.aa-nav-toggle:hover,.aa-nav-toggle:focus-visible{background:var(--c-primary);transform:scale(1.05)}
.aa-nav-toggle::before{content:"\2630";font-size:22px;line-height:1;color:#fff}
.aa-nav-toggle[aria-expanded="true"]::before{content:"\2715"}
/* Slide-In Panel von rechts */
.aa-nav-list{
  position:fixed;top:0;right:-340px;
  width:320px;max-width:88vw;height:100vh;
  background:#fff;
  flex-direction:column;flex-wrap:nowrap;display:flex !important;white-space:normal;
  margin:0;padding:72px 0 24px;
  box-shadow:-8px 0 32px rgba(0,0,0,.14);
  transition:right .25s ease-out;
  overflow-y:auto;
  z-index:99999;
}
.aa-nav-list.aa-open{right:0}
/* Backdrop bei offen */
.aa-nav-list.aa-open::before{
  content:"";position:fixed;top:0;left:0;right:0;bottom:0;
  background:rgba(12,22,40,.45);z-index:-1;
}
/* Body-Scroll-Lock wenn Panel offen */
body.aa-nav-locked{overflow:hidden;height:100vh}
.aa-nav-list > li{width:100%;border-bottom:1px solid #f0f0f0}
.aa-nav-list a{padding:14px 20px}
/* Sub-Indikator: ► statt ▾ auf Mobile, dreht bei Open */
.aa-nav-list .has-sub > a::after{content:"\25B8";font-size:1em;color:var(--c-primary);transition:transform .15s;display:inline-block;float:right}
.aa-nav-list .has-sub.aa-open > a::after{transform:rotate(90deg)}
.aa-subnav{position:static;box-shadow:none;border:0;border-top:1px solid #f0f0f0;padding:0;background:#f8fafc;border-left:3px solid var(--c-primary)}
.aa-subnav .aa-subnav{margin-left:0;background:#eff3f9;border-left:3px solid var(--c-primary-dark)}
/* Bei Mobile NICHT auto-display bei hover, nur bei aa-open click */
.aa-nav-list .has-sub:hover > .aa-subnav,.aa-nav-list .has-sub:focus-within > .aa-subnav,.aa-nav-list .has-sub.aa-hover-open > .aa-subnav{display:none}
.aa-nav-list .has-sub.aa-open > .aa-subnav{display:block}
.aa-subnav a{padding:12px 24px}
.aa-subnav .aa-subnav a{padding-left:40px;font-size:.95em}
.aa-nav-list .aa-nav-cta{margin-left:0;border-bottom:0}
.aa-nav-list .aa-nav-cta > a{margin:8px 18px;text-align:center;display:block}
/* Hover-Bridges auf Mobile deaktivieren */
.aa-nav-list > .has-sub > .aa-subnav::before,
.aa-subnav .has-sub > .aa-subnav::before{display:none}
}

.aa-skip-link{position:absolute;top:-100px;left:0;background:var(--c-primary);color:#fff;padding:10px 18px;z-index:999999;text-decoration:none;font-weight:600}
.aa-skip-link:focus{top:0}
.scroll-top,.assistive-text,.screen-reader-text{position:absolute !important;width:1px !important;height:1px !important;margin:-1px !important;padding:0 !important;overflow:hidden !important;clip:rect(0,0,0,0) !important;clip-path:inset(50%) !important;white-space:nowrap !important;border:0 !important}
.skip-link.screen-reader-text:focus,.assistive-text:focus{width:auto !important;height:auto !important;overflow:visible !important;clip:auto !important;clip-path:none !important;white-space:normal !important;position:fixed !important;top:6px !important;left:6px !important;background:#0c1628 !important;color:#fff !important;padding:8px 16px !important;z-index:999999 !important;font-weight:600 !important;border-radius:4px !important;text-decoration:none !important}

html{-webkit-tap-highlight-color:transparent;scroll-behavior:smooth;scroll-padding-top:80px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.aa-main-nav a,.aa-main-nav button,.aa-skip-link{touch-action:manipulation}
*:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:2px}
.aa-main-nav a:focus-visible,.aa-main-nav button:focus-visible{outline-width:3px}

/* THE7-THEME-RESET: Theme setzt .wf-wrap auf 1300px max-width LINKSBÜNDIG.
   Wir machen alle Theme-Container full-width, damit unser eigenes Centering greift. */
#main,
#main .wf-wrap,
#main .wf-container-main,
#main .content,
#main .aa-content{
  max-width:none !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  float:none !important;
}

/* HEADER — 1080px Breite. Logo + Banner passen nebeneinander. Auf Desktop
   leichter Unterschied zur 880px-Body-Breite (100px pro Seite) — visuell akzeptabel */
header.header-bar{display:flex !important;flex-wrap:nowrap !important;align-items:center !important;gap:24px !important;justify-content:space-between !important;max-width:1080px !important;margin:0 auto !important;padding:16px 24px !important;box-sizing:border-box !important}

/* The7-Reste die auf Desktop sichtbar sind — explizit ausblenden */
nav.aa-slim-bc{display:none !important}                  /* Alte "Start > Anbieter" breadcrumb */
.dt-mobile-header{display:none !important}              /* Mobile-Close-Icon (3 Striche oben links) */
.pswp[aria-hidden="true"]{display:none !important}      /* PhotoSwipe-Lightbox UI (5 Pill-Buttons unten links) */
@media (max-width:900px){
  /* Auch auf Mobile ausblenden — wir haben unser eigenes Menü */
  .dt-mobile-header{display:none !important}
}
header.header-bar > .branding{flex:0 0 auto !important;order:1 !important}
header.header-bar > .aa-cta-bar{order:2 !important;flex:1 1 auto !important;justify-self:center !important;display:flex;gap:10px;justify-content:center;align-items:stretch;flex-wrap:wrap;max-width:840px}
header.header-bar > #primary-menu{display:none !important}
/* CTA-Bar: zwei auffällige Banner — Werben (Markenblau) + Bei Google bevorzugen (Gold-Stern) */
.aa-cta-bar{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;justify-content:center}
.aa-editorial-cta,.aa-google-cta{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:8px;text-decoration:none;font-size:.9em;line-height:1.35;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s}
.aa-editorial-cta:hover,.aa-google-cta:hover{transform:translateY(-1px)}
.aa-editorial-cta .aa-ec-icon,.aa-google-cta .aa-ec-icon{font-size:1.1em;flex:0 0 auto}
.aa-editorial-cta .aa-ec-text,.aa-google-cta .aa-ec-text{flex:1 1 auto}
.aa-editorial-cta .aa-ec-cta,.aa-google-cta .aa-ec-cta{flex:0 0 auto;font-weight:700;white-space:nowrap}
.aa-editorial-cta{background:#0649d1;border:1px solid #0649d1;color:#fff;box-shadow:0 2px 10px rgba(6,73,209,.22)}
.aa-editorial-cta:hover{background:#0537a8;box-shadow:0 5px 16px rgba(6,73,209,.32)}
.aa-editorial-cta .aa-ec-text{color:#e7eeff}
.aa-editorial-cta .aa-ec-text strong{color:#fff;font-weight:700}
.aa-editorial-cta .aa-ec-cta{color:#fff}
@media (max-width:780px){
header.header-bar{flex-direction:column !important;gap:14px !important;padding:14px 24px !important}
header.header-bar > .branding{align-self:center !important}
header.header-bar > .aa-cta-bar{width:100% !important;max-width:600px !important;justify-content:center;text-align:center;flex-wrap:wrap}
/* M1: Logo auf <780px schrumpfen */
header.header-bar > .branding img{max-width:220px !important;height:auto !important}
}
@media (max-width:480px){
/* M1 verschärft: <480px noch kleiner */
header.header-bar > .branding img{max-width:180px !important}
/* M2: <480px kompakt statt ausblenden (Banner sollen überall sichtbar sein) */
header.header-bar > .aa-cta-bar{gap:6px}
header.header-bar > .aa-cta-bar .aa-editorial-cta,header.header-bar > .aa-cta-bar .aa-google-cta{font-size:.8em;padding:8px 12px;width:100%;justify-content:center}
}

/* ANBIETER-PAGE */
.aa-anbieter-page{max-width:840px;margin:0 auto;padding:50px 24px;font-family:'Roboto',sans-serif;color:var(--c-text);line-height:1.65}
.aa-anbieter-page h1{font-size:2em;margin:24px 0 12px;line-height:1.2;text-wrap:balance}
.aa-anbieter-page h2{font-size:1.4em;margin:36px 0 12px;color:var(--c-text);text-wrap:balance;border-left:4px solid var(--c-primary);padding-left:14px}
.aa-anbieter-page p{font-size:1.08em;margin:14px 0}
.aa-anbieter-page ul{padding-left:24px}
.aa-anbieter-page ul li{margin:8px 0;font-size:1.08em}
.aa-anbieter-page .aa-anb-logo{text-align:center;margin:0 0 30px}
.aa-anbieter-page .aa-anb-logo img{max-width:300px;height:auto;display:inline-block}
.aa-anbieter-page .aa-anb-meta{display:flex;flex-wrap:wrap;gap:14px 30px;margin:18px 0 30px;padding:14px 20px;background:var(--c-bg-soft);border-radius:6px;font-size:.95em}
.aa-anbieter-page .aa-anb-meta div{flex:1 1 200px}
.aa-anbieter-page .aa-anb-meta strong{display:block;color:var(--c-primary);font-size:.85em;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.aa-anbieter-page .aa-anb-cta{margin-top:40px;display:flex;gap:14px;flex-wrap:wrap}
.aa-anbieter-page .aa-anb-cta a{padding:12px 26px;border-radius:4px;text-decoration:none;font-weight:500;transition:background .15s,color .15s}
.aa-anbieter-page .aa-anb-cta .aa-btn-primary{background:var(--c-primary);color:#fff}
.aa-anbieter-page .aa-anb-cta .aa-btn-primary:hover{background:var(--c-primary-dark)}
.aa-anbieter-page .aa-anb-cta .aa-btn-secondary{background:#fff;color:var(--c-text);border:1px solid #d0d3d8}
.aa-anbieter-page .aa-anb-cta .aa-btn-secondary:hover{background:var(--c-bg-soft)}

/* BODY-CONTENT-WRAPPER */
.aa-content{font-family:'Roboto',sans-serif;line-height:1.7;color:var(--c-text-body);font-size:var(--fs-base)}
.aa-content > h1,.aa-content > h2,.aa-content > h3,.aa-content > h4,.aa-content > h5,.aa-content > h6,.aa-content > p,.aa-content > ul,.aa-content > ol,.aa-content > table,.aa-content > blockquote,.aa-content > figure,.aa-content > pre,.aa-content > .aa-faq,.aa-content > .aa-meta-table,.aa-content > .aa-discovery,.aa-content > .aa-related-topics,.aa-content > .aa-pricing,.aa-content > .aa-top-providers,.aa-content > .aa-use-cases,.aa-content > .aa-homepage-screenshot,.aa-content > .aa-last-updated,.aa-content > div:not(.aa-home-hero):not(.aa-logo-marquee):not(.aa-anbieter-page){max-width:880px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px;box-sizing:border-box}
.aa-content > h1{font-size:2.2em;line-height:1.15;text-wrap:balance;margin-top:32px;margin-bottom:16px;color:var(--c-text);font-weight:700;letter-spacing:-.015em}
.aa-content > h2{font-size:1.45em;line-height:1.3;text-wrap:balance;margin-top:42px;margin-bottom:14px;color:var(--c-text);border-left:4px solid var(--c-primary);padding-left:18px !important}
.aa-content > h3{font-size:1.2em;margin-top:30px;margin-bottom:10px;color:var(--c-text)}
.aa-content > p{font-size:var(--fs-base);margin:16px auto;line-height:1.7}
.aa-content > ul,.aa-content > ol{font-size:var(--fs-base);padding-left:48px;line-height:1.75}
/* Hub-Pages (Software, Branchen, Glossar, Vergleich, Dienstleister): H1 prominenter */
body.page-id-54191 .aa-content > h1, /* /software/ */
body.tax-hub .aa-content > h1,
.aa-anbieter-page > h1[data-hub]{font-size:2.6em;letter-spacing:-.02em}
.aa-home-hero,.aa-logo-marquee,.aa-pcta,.aa-skip-link,.aa-main-nav{max-width:none !important}
/* Trust-Strip auf 880px begrenzen — gleiche Breite wie Body, perfekt fluchtend */
.aa-trust-strip{max-width:880px !important;margin-left:auto !important;margin-right:auto !important}
/* Theme-Wrapper Constraint: Content auf 880px zentriert.
   AUSGENOMMEN: aa-home-hero (full-bleed Gradient), aa-logo-marquee, aa-trust-strip (eigene max-width). */
/* Phase-2: vc_row/wpb_column/vc_column-inner/wpb_wrapper Neutralisierungs-Regeln
   entfernt — diese Wrapper existieren nicht mehr im DOM (siehe wp_wrapper_flatten_phase2.py). */
/* Direct children der aa-content (= alter wpb-content-wrapper) auf 880px begrenzen */
.aa-content > h1,
.aa-content > h2,
.aa-content > h3,
.aa-content > h4,
.aa-content > p,
.aa-content > ul,
.aa-content > ol,
.aa-content > table,
.aa-content > blockquote,
.aa-content > figure,
.aa-content > .aa-faq,
.aa-content > .aa-meta-table{
  max-width:880px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
}
@media (max-width:920px){.aa-content > h1{font-size:1.7em}.aa-content > h2{font-size:1.25em}}
/* Fix 2026-05-18: Phase-2-Flatten hat 2 Pages uebersehen (/erp-software-finden/
   + /en/erp-vendor-marketplace/) — Inhalte sind dort weiter in vc_row/
   wpb_text_column-Wrappern. Fallback: gleiche 880px-Zentrierung wie direkte
   aa-content-Kinder. Single-Level-Constraint auf den innersten Text-Wrapper. */
.aa-content .wpb_text_column{
  max-width:880px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-left:24px;
  padding-right:24px;
  box-sizing:border-box;
}

/* LINKS BODY */
.aa-content p a,.aa-content li a,.aa-anbieter-page p a,.aa-anbieter-page li a{color:var(--c-primary);text-decoration:underline;text-decoration-color:rgba(6,73,209,.4);text-decoration-thickness:1px;text-underline-offset:2px;transition:text-decoration-color .15s,text-decoration-thickness .15s}
.aa-content p a:hover,.aa-content li a:hover,.aa-anbieter-page p a:hover,.aa-anbieter-page li a:hover{text-decoration-color:var(--c-primary);text-decoration-thickness:2px}
/* D1: Konsolidierter primary-Link-Style (12.158 inline-blue ersetzt) */
.aa-link-primary{color:var(--c-primary);text-decoration:none;transition:color .15s,text-decoration-color .15s,text-decoration-thickness .15s}
.aa-link-primary:hover,.aa-link-primary:focus-visible{color:var(--c-primary-dark);text-decoration:underline;text-decoration-thickness:2px}

/* D2: Vergleichs-Pages bekommen breiteren Container für Funktions-Matrix */
body.page-vergleich .aa-anbieter-page,
body.page-template-vergleich .aa-anbieter-page,
.aa-anbieter-page.is-vergleich{max-width:1100px}
/* Funktions-Matrix Section selber ist schon flex/scrollable via overflow-x:auto im inline-style */
.aa-funktions-matrix{max-width:1080px !important}

/* TABLES — global mobile-safe via CSS scrollable wrapper */
.aa-content table,.aa-anbieter-page table{border-collapse:collapse;width:100%;margin:18px 0;font-size:.95em;display:table}
@media (max-width:680px){
  .aa-content table,.aa-anbieter-page table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap;max-width:100%}
  .aa-content table th,.aa-content table td,.aa-anbieter-page table th,.aa-anbieter-page table td{white-space:normal}
}
.aa-content th,.aa-anbieter-page th{text-align:left;padding:10px 12px;background:var(--c-bg-soft);border-bottom:2px solid var(--c-border);font-weight:600;color:var(--c-text)}
.aa-content td,.aa-anbieter-page td{padding:10px 12px;border-bottom:1px solid #f0f3f8;vertical-align:top}
.aa-content tr:hover td,.aa-anbieter-page tr:hover td{background:var(--c-bg-alt)}

/* BLOCKQUOTES */
.aa-anbieter-page blockquote,.aa-content blockquote{margin:24px 0;padding:14px 22px;border-left:4px solid var(--c-primary);background:var(--c-bg-alt);font-style:italic;color:var(--c-text-muted)}

::selection{background:var(--c-primary);color:#fff}

/* CARDS HOVER */
.aa-similar-anbieter a{transition:transform .15s,box-shadow .15s,border-color .15s}
.aa-similar-anbieter a:hover,.aa-similar-anbieter a:focus-visible{border-color:var(--c-primary) !important;box-shadow:0 4px 12px rgba(6,73,209,.12) !important;transform:translateY(-1px)}
.aa-cat-filter a:hover,.aa-cat-filter a:focus-visible{transform:translateY(-2px);box-shadow:0 4px 12px rgba(6,73,209,.15);border-color:var(--c-primary) !important}
.aa-cat-filter a{transition:transform .15s,box-shadow .15s,border-color .15s}
.aa-glossar-az .aa-az-btn:hover,.aa-glossar-az .aa-az-btn:focus-visible{background:var(--c-primary-dark) !important;transform:translateY(-1px)}
.aa-glossar-az .aa-az-btn{transition:background .15s,transform .15s}

@media print{
header,footer,.aa-pcta,.aa-logo-marquee,.aa-related-topics,.aa-similar-anbieter,nav{display:none !important}
body{font-size:12pt;line-height:1.5;color:#000;background:#fff}
.aa-anbieter-page{max-width:100%}
a{color:#000;text-decoration:underline}
a::after{content:" (" attr(href) ")";font-size:.85em;color:#555}
h1,h2,h3{page-break-after:avoid}
}

body,.aa-content,.aa-anbieter-page{font-feature-settings:"kern" 1,"liga" 1,"calt" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* === Sprach-Flagge im Header (Phase 1, 2026-05-12) === */
.nav-lang { display: inline-block; }
.nav-lang a { display: inline-flex; align-items: center; gap: 4px; padding: 8px 12px; }
.nav-lang .flag { font-size: 1.2em; line-height: 1; }
@media (max-width: 900px) {
  .nav-lang { display: block; padding: 8px 0; }
}

/* === Sprach-Flagge: vertikal an Menüpunkten ausrichten (Andre 2026-05-12) === */
.nav-lang { vertical-align: middle; line-height: inherit; }
.nav-lang a {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  height: 100%;
  padding-top: 0;
  padding-bottom: 0;
  line-height: inherit !important;
}
.nav-lang .flag { font-size: 1em; line-height: 1; vertical-align: middle; }

/* === Flagge robust auch ohne System-Emoji-Font (Chrome Win11 2026-05-12) === */
.nav-lang .flag {
  display: inline-block;
  font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji",
               "Segoe UI Symbol", "Twemoji Mozilla", sans-serif;
  font-size: 1.15em;
  line-height: 1;
  vertical-align: middle;
  min-width: 1.4em;
  text-align: center;
}
.nav-lang a {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ============================================================
   Mobile-Overflow-Fix: aa-ai-proof Section (Startseite)
   Ursache: innere auto-fit-Grid (repeat(auto-fit,minmax(160px,1fr)))
   sprengt unter indefiniter Breite auf 1 Track pro Item -> 724px.
   Fix: min-width:0 durch die Grid-Item-Kette + feste 2 Spalten <=720px.
   Verifiziert mit Playwright (Chromium+WebKit, 320/390px): kein Overflow.
   ============================================================ */
@media (max-width: 720px) {
  .aa-ai-proof { min-width: 0 !important; }
  .aa-ai-proof div { min-width: 0 !important; }
  .aa-ai-proof [style*="grid-template-columns"][style*="auto-fit"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* ============================================================
   Centering-Fix: data-aa-hub-expand-Blöcke (10 Hub-Pages)
   Diese Enrichment-Blöcke wurden nach dem Logo-Marquee eingefügt,
   außerhalb des zentrierten Content-Wrappers -> hingen linksbündig
   in voller Breite. Auf Content-Spalten-Breite zentrieren.
   Verifiziert mit Playwright (1280px): left 0->224, width 1280->832.
   ============================================================ */
[data-aa-hub-expand] {
  max-width: 880px;
  margin: 0 auto;
  padding: 0 24px;
  box-sizing: border-box;
}

/* AA-GROUNDING-COMPONENT v1 */
.aa-grounding{margin:28px auto;max-width:880px;border:1px solid #e3eaf5;border-radius:10px;background:#fbfcfe;overflow:hidden;font-family:Roboto,Arial,sans-serif}
.aa-grounding-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:11px 20px;background:#eef4fc;border-bottom:1px solid #e3eaf5}
.aa-grounding-label{font-size:.72em;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#0649d1;display:inline-flex;align-items:center;gap:7px}
.aa-grounding-label svg{width:15px;height:15px;flex:none;stroke:#0649d1}
.aa-grounding-verified{font-size:.78em;color:#475569}
.aa-grounding-verified strong{color:#0c1628}
.aa-grounding-body{padding:4px 20px 6px}
dl.aa-grounding-facts{display:grid;grid-template-columns:minmax(120px,max-content) 1fr;gap:0;margin:0}
dl.aa-grounding-facts dt{padding:9px 18px 9px 0;font-weight:600;color:#0c1628;font-size:.92em;border-bottom:1px solid #eef2f8}
dl.aa-grounding-facts dd{padding:9px 0;margin:0;color:#3d4a5e;font-size:.92em;border-bottom:1px solid #eef2f8}
dl.aa-grounding-facts dt:last-of-type,dl.aa-grounding-facts dd:last-of-type{border-bottom:none}
dl.aa-grounding-facts a{color:#0649d1}
.aa-grounding-not{margin:14px 20px 16px;padding:13px 16px;background:#fff;border-left:3px solid #d97706;border-radius:0 6px 6px 0}
.aa-grounding-not h3{font-size:.95em;margin:0 0 8px;color:#92400e;font-family:Roboto,Arial,sans-serif;font-weight:700;line-height:1.3}
.aa-grounding-not ul{margin:0;padding-left:18px;color:#3d4a5e;font-size:.91em;line-height:1.6}
.aa-grounding-not li{margin:0 0 6px}
.aa-grounding-not li:last-child{margin:0}
.aa-grounding-src{padding:11px 20px 15px;font-size:.82em;color:#64748b;border-top:1px solid #eef2f8;line-height:1.55}
.aa-grounding-src a{color:#0649d1}
@media(max-width:640px){dl.aa-grounding-facts{grid-template-columns:1fr}dl.aa-grounding-facts dt{border-bottom:none;padding:9px 0 0}dl.aa-grounding-facts dd{padding-top:2px}}

/* AA-SELFHOST-VIDEO v1 */
.aa-selfhost-video{margin:26px auto;max-width:760px;padding:0;box-sizing:border-box}
.aa-selfhost-video video{width:100%;height:auto;display:block;border-radius:10px;background:#000;box-shadow:0 4px 16px rgba(0,0,0,.12)}
.aa-selfhost-video figcaption{margin-top:10px;font-size:.9em;color:#64748b;font-style:italic;text-align:center}
.aa-shv-block{margin:48px auto 8px;max-width:760px;padding:0 24px;box-sizing:border-box}
.aa-shv-label{display:inline-flex;align-items:center;gap:7px;font-size:.74em;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0649d1;margin:0 0 10px}
.aa-shv-block .aa-selfhost-video{padding:0}
.aa-shv-more{text-align:center;margin:12px 0 0;font-size:.95em}
