/* Theme Coffee: Coffee #693822, Mocha Sand #C48B67, Tangerine #FE4D03 (nur Akzent). Erzeugt von apply_theme_coffee.py */
:root,:root[data-theme]{--coffee:#693822;--sand:#C48B67;--tang:#FE4D03;--cream:#F6EDE4;
--bg:#693822;--surface:color-mix(in srgb,#F6EDE4 7%,#693822);--card:color-mix(in srgb,#F6EDE4 7%,#693822);--white:#F6EDE4;
--champagne:#693822;--pearl:#693822;
--grey:color-mix(in srgb,#000 18%,#693822);--loro-2:color-mix(in srgb,#000 18%,#693822);
--line:color-mix(in srgb,#F6EDE4 16%,#693822);--loro-3:#C48B67;--loro-4:#C48B67;
--text:#F6EDE4;--muted:color-mix(in srgb,#F6EDE4 70%,#693822);--blue-text:#E9CFBA;--blue-hover:#E9CFBA;--accent:#FE4D03;--text2:color-mix(in srgb,#F6EDE4 82%,#693822);--black:#F6EDE4;--blue:#C48B67;--blue-h:#C48B67;--sky:#C48B67;
--red:#C48B67;--red-deep:#C48B67;--red-soft:#693822;--amber:#C48B67;--green:#C48B67;--green-deep:#C48B67;--green-soft:#693822;--amber-soft:#693822;
--nav-bg:rgba(105,56,34,.86);--nav-bg-scrolled:rgba(105,56,34,.94);--menu-bg:rgba(105,56,34,.96);--glass-bg:rgba(105,56,34,.7)}
body{background:#693822;color:#F6EDE4}
.bg-champagne{background-color:#693822!important}
.grey-bg{background-color:color-mix(in srgb,#000 24%,#693822)!important;border:0!important}
a{color:#C48B67}
/* Mocha-Sand-Flaechen: Kontakt, Footer, Hauptpaket */
footer,footer.site-foot,.contact-sec,.pk-card.featured{background:#C48B67!important;color:#693822;--text:#693822;--text2:color-mix(in srgb,#693822 85%,#C48B67);--blue:#693822;--card:color-mix(in srgb,#fff 22%,#C48B67);--surface:color-mix(in srgb,#fff 22%,#C48B67);--grey:color-mix(in srgb,#fff 22%,#C48B67);--line:color-mix(in srgb,#693822 28%,#C48B67);border-color:color-mix(in srgb,#693822 28%,#C48B67)!important}
footer a,.contact-sec a{color:#693822}
/* Buttons: Tangerine */
:is(.btn,.nav-cta,.call-fab,.cx-btn,.fc-teaser button,.fc-opt.selected,.pk-badge){background:#C48B67;color:#693822}
nav .nav-cta,.pk-badge{background:#FE4D03!important;color:#F6EDE4!important}
.btn-ghost,.btn-beige{background:transparent!important;color:#F6EDE4!important;border:1px solid #C48B67}
@media (hover:hover){:is(.btn,.nav-cta,.call-fab,.fc-teaser button):hover{background:#F6EDE4!important;color:#693822!important;text-decoration:none}}
.contact-sec .btn,.pk-card.featured .btn{background:#693822!important;color:#F6EDE4!important}
.pk-card.featured .pk-badge{background:#FE4D03}
/* Details */
.hero h1 .h1-accent{color:#FF6A2E!important}
.he-dot{background:#FE4D03!important}
.fc-stat-label{color:#C48B67}
.lv-badge{background:#C48B67;color:#693822;padding:3px 11px;border-radius:999px;display:inline-block;font-weight:700}
.pk-card.featured{border:2px solid #693822!important}
::selection{background:#C48B67;color:#693822}
:focus-visible{outline:2px solid #C48B67;outline-offset:3px}
[class*="brand"] .voice-wave span{background:#F6EDE4!important}[class*="brand"] .ai{color:#F6EDE4!important}
.hero.has-wave{position:relative;isolation:isolate;background:#693822}
#wave-bg,#wave-glow{position:absolute;inset:0;width:100%;height:100%;display:block;pointer-events:none}
#wave-bg{z-index:-3}
#wave-glow{z-index:-2;image-rendering:auto;mix-blend-mode:screen;opacity:.6}
.hero.has-wave::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(21,7,3,.66) 0%,rgba(21,7,3,.42) 36%,rgba(21,7,3,0) 64%)}
.hero.has-wave::after{content:"";position:absolute;left:0;right:0;bottom:0;height:160px;z-index:-1;pointer-events:none;background:linear-gradient(to bottom,rgba(105,56,34,0),#693822)}

@media (max-width:700px){.hero.has-wave::before{background:linear-gradient(180deg,rgba(21,7,3,.5),rgba(21,7,3,.3))}}

/* Lesbarkeit */
:root,:root[data-theme]{--blue:#E9CFBA;--blue-h:#E9CFBA;--sky:#E9CFBA;--loro-3:color-mix(in srgb,#000 8%,#693822);--loro-4:color-mix(in srgb,#000 8%,#693822)}
a{color:#E9CFBA}
:is(.btn,.call-fab,.cx-btn,.fc-teaser button,.fc-opt.selected){background:#E9CFBA!important;color:#2B130A!important}
nav .nav-cta,.pk-badge{background:#FE4D03!important;color:#1D0B05!important}
.nx-bubble{background:#E9CFBA!important;color:#2B130A!important}
.nexus-node,.cx-bubble,.nexus-node :where(*),.cx-bubble :where(*){color:#2B130A!important}
.nx-success{color:#9BE8B5!important}
:root,:root[data-theme]{--cream:#693822;--sand:#693822}
footer,footer.site-foot,.contact-sec,.pk-card.featured{color:#2B130A;--text:#2B130A;--text2:#2B130A;--blue:#2B130A}
footer a,footer.site-foot a,.contact-sec a,.contact-sec .link-arrow{color:#2B130A}
[class*="brand"] .ai{color:#F6EDE4!important}
footer [class*="brand"] .ai{color:#2B130A!important}
footer [class*="brand"] .voice-wave span{background:#2B130A!important}
.fc-stat-label{color:#E9CFBA}
.fc-opt{background:rgba(246,237,228,.08)!important;color:#F6EDE4!important;border-color:rgba(246,237,228,.24)!important}
.fc-opt :where(*){color:inherit}
.fc-opt.selected,.fc-opt.selected :where(*){background:#E9CFBA!important;color:#2B130A!important}
/* Nav: Material statt harter Kante (Apple-Stil: Scroll-Edge-Effekt) */
:root,:root[data-theme]{--nav-bg:rgba(33,14,7,.72);--nav-bg-scrolled:rgba(33,14,7,.82);--menu-bg:rgba(33,14,7,.96);--glass-bg:rgba(33,14,7,.5);--white:#4a2615}
/* Rhythmus, Linien, Icons */

.tl-line{background:rgba(233,207,186,.34)!important}
.tl-ic{border:1px solid rgba(233,207,186,.45)}
.ag-ico svg *,.tl-ic svg *{stroke-width:2}
.pk-card.featured .pk-feat li::before{filter:brightness(.15)}
.fc-res-title{color:#9BE8B5}
.contact-sec .contact-ok,.contact-sec .wl-ok{color:#1F4D2E}
.marquee-track span,.night-h{color:#C9A98F}
.btn-ghost{border:1.5px solid #E9CFBA!important;color:#F6EDE4!important}
.cx-stat,.cx-stat :where(*){color:#2B130A!important}
.cx-stat{background:rgba(246,237,228,.94)!important}
.tl-ic{background:#4a2615!important;color:#E9CFBA!important}
.tl-ic svg,.tl-ic svg *{stroke:#E9CFBA!important}
nav [class*="brand"] .ai{color:#FE4D03!important}
.ag-ico{background:#4a2615!important;border:1px solid rgba(233,207,186,.38)!important;box-shadow:none!important}
.cx-arena{background:radial-gradient(120% 120% at 50% 0%,#7a4529 0%,#4a2615 55%,#3a1c10 100%)!important}
#themeToggle{display:none!important}
/* ===== Hero-Dialog: Messages-Layout statt uebereinanderliegender Ebenen ===== */
.hero .nexus-stage{aspect-ratio:auto!important;width:100%;max-width:380px;height:auto;display:flex!important;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:18px;padding:22px 20px 20px;border-radius:28px;overflow:hidden;
  background:linear-gradient(180deg,rgba(48,21,11,.86),rgba(33,14,7,.82))!important;background-image:none;border:1px solid rgba(246,237,228,.16)!important;
  -webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);box-shadow:var(--sh-3),var(--edge-hi)!important;perspective:none}
.hero .nexus-stage::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(254,77,3,.28),rgba(254,77,3,0) 70%);pointer-events:none;z-index:0}
.hero .nexus-aura,.hero .nexus-lines{display:none!important}
.hero .nexus-chat{position:relative!important;inset:auto!important;z-index:1;order:1;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;min-height:214px}
.hero .nx-msg{margin:0!important;max-width:88%;opacity:0;transform:translateY(10px) scale(.96);transition:opacity .18s var(--e-out),transform .18s var(--e-out)}
.hero .nexus-stage:is(.step-1,.step-2,.step-3) .nx-msg{transition:opacity .36s var(--e-out),transform .52s var(--e-out)}
.hero .nx-user{align-self:flex-end;justify-content:flex-end;transform-origin:100% 100%}
.hero .nx-ai{align-self:flex-start;align-items:flex-start;transform-origin:0 100%}
.hero .nx-bubble{font-size:15px!important;line-height:1.38;padding:11px 15px!important;border-radius:20px!important;box-shadow:none!important;text-align:left;-webkit-backdrop-filter:none;backdrop-filter:none}
.hero .nx-user .nx-bubble{background:#E9CFBA!important;color:#2B130A!important;border-bottom-right-radius:6px!important}
.hero .nx-ai .nx-bubble{background:rgba(246,237,228,.12)!important;color:#F6EDE4!important;border:1px solid rgba(246,237,228,.18)!important;border-bottom-left-radius:6px!important}
.hero .nx-ai .nx-bubble :where(*){color:#F6EDE4!important}
.hero .nx-typing span{background:#F6EDE4;opacity:.75}
.hero .nx-success{margin-top:8px;font-size:12.5px}
.hero .nexus-nodes{position:relative!important;inset:auto!important;z-index:1;order:2;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-start;padding-top:14px;border-top:1px solid rgba(246,237,228,.14)}
.hero .nexus-node{position:static!important;top:auto!important;right:auto!important;opacity:.45;transform:none;padding:6px 12px;border-radius:999px;font-size:12.5px;font-weight:600;background:rgba(246,237,228,.08)!important;border:1px solid rgba(246,237,228,.16)!important;box-shadow:none!important;-webkit-backdrop-filter:none;backdrop-filter:none;transition:opacity .4s var(--e-out),background-color .4s var(--e-out),border-color .4s var(--e-out)}
.hero .nexus-node,.hero .nexus-node :where(*){color:#F6EDE4!important}
.hero .nexus-stage.processing .nexus-node,.hero .nexus-stage.step-3 .nexus-node{opacity:1;background:rgba(254,77,3,.22)!important;border-color:rgba(254,77,3,.55)!important}
@media (max-width:900px){.hero .nexus-stage{max-width:360px}}
@media (prefers-reduced-motion:reduce){.hero .nx-msg{transform:none;transition:opacity .2s linear}}
/* ===== Verbindung Agent -> Postfach / ERP / Dashboard ===== */
.hero .nexus-nodes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 8px;justify-items:center;align-items:start;padding-top:12px}
.hero .nx-hub{grid-column:1/-1;position:relative;width:100%;height:58px;margin-bottom:2px}
.hero .nx-hub svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.hero .nx-base{fill:none;stroke:rgba(246,237,228,.2);stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-linecap:round}
.hero .nx-pulse{fill:none;stroke:#FE4D03;stroke-width:2.5;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-dasharray:16 84;stroke-dashoffset:16;opacity:0;filter:drop-shadow(0 0 4px rgba(254,77,3,.9));transition:opacity .3s var(--e-out)}
.hero .nexus-stage.processing .nx-pulse{opacity:1;animation:nxFlow 1.3s cubic-bezier(.45,0,.25,1) infinite}
.hero .nx-pulse.l2{animation-delay:.22s!important}.hero .nx-pulse.l3{animation-delay:.44s!important}
@keyframes nxFlow{from{stroke-dashoffset:16}to{stroke-dashoffset:-84}}
.hero .nx-core{position:absolute;left:50%;top:0;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#FE4D03;box-shadow:0 0 0 4px rgba(254,77,3,.22),0 0 18px rgba(254,77,3,.7);transition:transform .4s var(--e-out)}
.hero .nx-core::after{content:"";position:absolute;inset:-9px;border-radius:50%;background:radial-gradient(circle,rgba(254,77,3,.55),rgba(254,77,3,0) 70%);opacity:0;transform:scale(.7);pointer-events:none}
.hero .nexus-stage.processing .nx-core{transform:scale(1.2)}
.hero .nexus-stage.processing .nx-core::after{animation:nxHalo 1.3s var(--e-move) infinite}
@keyframes nxHalo{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:.95;transform:scale(1.35)}}
.hero .nx-core-label{position:absolute;left:calc(50% + 16px);top:-1px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#E9CFBA}
.hero .nexus-node{display:inline-flex;align-items:center;gap:6px}
.hero .nexus-node::before{content:"";width:6px;height:6px;border-radius:50%;background:rgba(246,237,228,.45);transition:background-color .35s var(--e-out),box-shadow .35s var(--e-out)}
.hero .nexus-stage.processing .nexus-node::before,.hero .nexus-stage.step-3 .nexus-node::before{background:#FE4D03;box-shadow:0 0 8px rgba(254,77,3,.9)}
.hero .nexus-node.n1{transition-delay:.15s}.hero .nexus-node.n2{transition-delay:.4s}.hero .nexus-node.n3{transition-delay:.65s}
@media (prefers-reduced-motion:reduce){.hero .nexus-stage.processing .nx-pulse,.hero .nexus-stage.processing .nx-core::after{animation:none}.hero .nx-pulse{opacity:.9}}

/* ===== Unterseiten (body.sub): Header, Buttons, Abschlussband, Footer ===== */
.button,a.button{background:#E9CFBA!important;color:#2B130A!important}
@media (hover:hover){.button:hover,a.button:hover{background:#FC8A5A;color:#1D0B05;text-decoration:none}}
.next{background-color:#2b130a;background-image:linear-gradient(145deg,#4a2615,#2b130a)!important;color:#F6EDE4}
.next .button{background:#E9CFBA!important;color:#2B130A!important}
footer,.site-footer,footer.site-foot{--muted:#2B130A;--text2:#2B130A}
.site-footer :where(p,li,span,small,div,h2,h3,h4){color:#2B130A}

/* Hartkodierte Alt-Farben in Seiten- und Branchen-CSS */
.weiter-liste a,p a{color:#E9CFBA}
.h1-accent{color:#FF6A2E!important}
.hero.has-wave h1 .h1-accent{color:#FE4D03!important}
body.sub main>section#integration:not(.hero){background:linear-gradient(145deg,#4a2615,#2b130a)!important;color:#F6EDE4}
.chips.alt li{background:#C48B67!important;border-color:#C48B67!important;color:#2B130A!important}
.split span.b2{background:#C48B67}
.site-foot a:focus-visible{outline-color:#C48B67}

/* Dark-Modus-Seiten: Akzenttext, Logo */
:root,:root[data-theme]{--accent:#E9CFBA}
:root[data-theme] footer [class*="brand"] .ai,:root[data-theme] .site-footer [class*="brand"] .ai,:root[data-theme] .site-foot [class*="brand"] .ai{color:#2B130A!important}
:root[data-theme] nav [class*="brand"] .ai,:root[data-theme] .site-header [class*="brand"] .ai{color:#FE4D03!important}
/* Herzschlag neben dem Logo orange (Kopfzeile) */
nav [class*="brand"] .voice-wave span,.site-header [class*="brand"] .voice-wave span,:root[data-theme] nav [class*="brand"] .voice-wave span,:root[data-theme] .site-header [class*="brand"] .voice-wave span{background:#FE4D03!important}

.programme .who,#programme .who,.who{color:#E9CFBA!important}
.split span.b2,.split span.b2 :where(*){color:#2B130A!important}
.scan-result.green,.scan-result.green :where(*){color:#9BE8B5!important}
.demo-tag{color:#E9CFBA!important}

/* Mobile Menue der Unterseiten */
.nav-more nav{background:rgba(33,14,7,.97)!important;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid rgba(246,237,228,.14)}
.nav-more nav a{color:#F6EDE4!important;border-color:rgba(246,237,228,.12)!important}
.nav-more nav a[aria-current="page"]{color:#E9CFBA!important}
.nav-more nav a.nav-cta{background:#FE4D03!important;color:#1D0B05!important}

/* Cookie-Banner: heller Banner auf dunkler Seite, Text dunkler fuer Kontrast >= 4.5 */
:root[data-theme="light"] .mcb .mcb-text{color:#4A4A4F}

/* Branchen: "Alle Branchen"-Button hell, Text dunkel (war weiss auf Sand 1.5) */
.top-link,#sitebar{color:#2B130A!important}
/* Terminkalender: Hinweis, bis Zcal geladen ist */
#termin{position:relative}
#termin:not(.termin-geladen)::after{content:"Kalender wird geladen …";position:absolute;left:0;right:0;bottom:690px;text-align:center;color:var(--text2);font-size:15px;pointer-events:none;z-index:0}
#termin iframe{position:relative;z-index:1}
#termin:not(.termin-geladen) iframe{background:transparent!important}
/* Entlastungs-Check: --blue ist Creme, weisse Linien und Schrift darauf waren unsichtbar */
.tile svg.g,.tile .tick svg,.agent .ico svg{stroke:#2B130A}
.step em,.idk.on{color:#2B130A}

/* Leistungen: Meta-Zeile in Karten (war 4.2) */
.agent-meta{color:#E9CFBA!important}

/* Entlastungs-Check: Gruppenueberschriften (waren 3.6) */
.bgroup{color:#E9CFBA!important}

/* Entlastungs-Check nutzt --text3 (war 3.6) */
:root,:root[data-theme]{--text3:color-mix(in srgb,#F6EDE4 78%,#693822)}


/* =====================================================================
   BEWEGUNG, MATERIAL, TIEFE (Feinschliff 2026-11)
   Token-Satz: Kurven, Dauern, Schattenstufen fuer dunklen Grund.
   Regeln: nur transform/opacity bewegen, kein transition:all, Hover nur mit
   Zeiger, Eintritt langsamer als Austritt, Tiefe aus Kontakt- + Fernschatten
   + 1px Kantenlicht in warmem Dunkelbraun.
   ===================================================================== */
:root,:root[data-theme]{
  --e-out:cubic-bezier(.23,1,.32,1);--e-move:cubic-bezier(.77,0,.175,1);--e-drawer:cubic-bezier(.32,.72,0,1);
  --d-press:140ms;--d-hover:200ms;--d-ui:280ms;--d-enter:480ms;
  --tc-coffee:#693822;--tc-deep:color-mix(in srgb,#000 24%,#693822);
  --edge:inset 0 1px 0 rgba(246,237,228,.07);--edge-hi:inset 0 1px 0 rgba(246,237,228,.12);
  --sh-1:0 1px 2px rgba(16,6,2,.34),0 3px 10px rgba(16,6,2,.2);
  --sh-2:0 1px 2px rgba(16,6,2,.32),0 8px 22px rgba(16,6,2,.26),0 18px 40px rgba(16,6,2,.16);
  --sh-3:0 2px 4px rgba(16,6,2,.32),0 14px 32px rgba(16,6,2,.3),0 34px 72px rgba(16,6,2,.34);
  --ease:var(--e-out);
  --glass-brd:rgba(246,237,228,.14);--glass-sh:0 2px 4px rgba(16,6,2,.32),0 14px 32px rgba(16,6,2,.3),0 34px 72px rgba(16,6,2,.34),inset 0 1px 0 rgba(246,237,228,.12);
}
html{scrollbar-color:rgba(233,207,186,.38) #2b130a}

/* ---------- Sektionsuebergaenge: Farbe laeuft weich ineinander, keine Kante ---------- */
.hero+.grey-bg,.bg-champagne+.grey-bg{--tc-from:var(--tc-coffee)}
.grey-bg+.bg-champagne{--tc-from:var(--tc-deep)}
:is(.grey-bg,.bg-champagne){background-image:linear-gradient(to bottom,var(--tc-from) 0px,color-mix(in srgb,var(--tc-from) 74%,transparent) 18px,color-mix(in srgb,var(--tc-from) 54%,transparent) 34px,color-mix(in srgb,var(--tc-from) 38%,transparent) 50px,color-mix(in srgb,var(--tc-from) 28%,transparent) 66px,color-mix(in srgb,var(--tc-from) 19%,transparent) 84px,color-mix(in srgb,var(--tc-from) 12%,transparent) 104px,color-mix(in srgb,var(--tc-from) 7%,transparent) 126px,color-mix(in srgb,var(--tc-from) 4%,transparent) 150px,color-mix(in srgb,var(--tc-from) 1.5%,transparent) 180px,transparent 220px)!important;background-size:100% 220px!important;background-repeat:no-repeat!important;background-position:top!important}
body.sub main>section:nth-of-type(even):not(.hero):not(.next):not(.band){background:linear-gradient(to bottom,var(--tc-coffee) 0px,color-mix(in srgb,var(--tc-coffee) 74%,transparent) 18px,color-mix(in srgb,var(--tc-coffee) 54%,transparent) 34px,color-mix(in srgb,var(--tc-coffee) 38%,transparent) 50px,color-mix(in srgb,var(--tc-coffee) 28%,transparent) 66px,color-mix(in srgb,var(--tc-coffee) 19%,transparent) 84px,color-mix(in srgb,var(--tc-coffee) 12%,transparent) 104px,color-mix(in srgb,var(--tc-coffee) 7%,transparent) 126px,color-mix(in srgb,var(--tc-coffee) 4%,transparent) 150px,color-mix(in srgb,var(--tc-coffee) 1.5%,transparent) 180px,transparent 220px) top/100% 200px no-repeat,linear-gradient(to top,var(--tc-coffee) 0px,color-mix(in srgb,var(--tc-coffee) 74%,transparent) 18px,color-mix(in srgb,var(--tc-coffee) 54%,transparent) 34px,color-mix(in srgb,var(--tc-coffee) 38%,transparent) 50px,color-mix(in srgb,var(--tc-coffee) 28%,transparent) 66px,color-mix(in srgb,var(--tc-coffee) 19%,transparent) 84px,color-mix(in srgb,var(--tc-coffee) 12%,transparent) 104px,color-mix(in srgb,var(--tc-coffee) 7%,transparent) 126px,color-mix(in srgb,var(--tc-coffee) 4%,transparent) 150px,color-mix(in srgb,var(--tc-coffee) 1.5%,transparent) 180px,transparent 220px) bottom/100% 200px no-repeat,var(--tc-deep)}
body.sub main>section:nth-of-type(odd):not(.hero):not(.next):not(.band){background:var(--tc-coffee)}
body.sub main>section.next:nth-of-type(even){--tc-from:var(--tc-coffee)}
body.sub main>section.next:nth-of-type(odd){--tc-from:var(--tc-deep)}
.next{background-image:linear-gradient(to bottom,var(--tc-from,var(--tc-coffee)) 0px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 74%,transparent) 18px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 54%,transparent) 34px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 38%,transparent) 50px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 28%,transparent) 66px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 19%,transparent) 84px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 12%,transparent) 104px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 7%,transparent) 126px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 4%,transparent) 150px,color-mix(in srgb,var(--tc-from,var(--tc-coffee)) 1.5%,transparent) 180px,transparent 220px),linear-gradient(145deg,#4a2615,#2b130a)!important;background-size:100% 220px,100% 100%;background-repeat:no-repeat;background-position:top,0 0}
/* Mocha-Sand-Flaeche (Kontakt/Footer) hebt sich als Blatt ab statt als harte Kante */
.contact-sec,body.sub .site-footer{position:relative;z-index:1;border-radius:clamp(24px,3vw,36px) clamp(24px,3vw,36px) 0 0;margin-top:calc(-1*clamp(24px,3vw,36px));box-shadow:0 -1px 0 rgba(246,237,228,.2),0 -22px 64px rgba(16,6,2,.38),inset 0 1px 0 rgba(255,255,255,.3)}

/* ---------- Karten: Kontaktschatten + Fernschatten + Kantenlicht ---------- */
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.cmp,.lv-card,.flow-step,.flow>li,.boundary>div,.faq details,.scn-list details,.fact,.theme,.prog>article,.example-box,.tile,.dyn-left){border-color:rgba(246,237,228,.11);box-shadow:var(--sh-1),var(--edge);transition:transform var(--d-ui) var(--e-out),box-shadow var(--d-ui) var(--e-out),border-color var(--d-hover) var(--e-out),background-color var(--d-hover) var(--e-out)}
:root :is(.fc-card,.check-teaser,.calc-card,.check-box,.agent-card,.hero-answer,.person){border-color:rgba(246,237,228,.13);box-shadow:var(--sh-2),var(--edge-hi);transition:transform var(--d-ui) var(--e-out),box-shadow var(--d-ui) var(--e-out),border-color var(--d-hover) var(--e-out)}
:root :is(.hero-eyebrow,.hero-kicker){box-shadow:0 1px 2px rgba(16,6,2,.3),var(--edge)}
:root .pk-card.featured{box-shadow:var(--sh-3),inset 0 1px 0 rgba(255,255,255,.35)}
:root .check-teaser:hover{box-shadow:var(--sh-3),var(--edge-hi)}
:root :is(.cx-stat,.cx-bubble,.tl-ic,.site-menu){box-shadow:var(--sh-2),var(--edge)}
:root .ct-phone{box-shadow:var(--sh-3)}
:root .cx-bubble{background:rgba(246,237,228,.94)!important;border-color:rgba(16,6,2,.08)}
:root iframe.iframe{box-shadow:var(--sh-2)}
.hero-kicker::before,.agent-card .agent-name::before{box-shadow:0 0 0 3px rgba(233,207,186,.16)}
@media (hover:hover) and (pointer:fine){
  :root :is(.tile,.tiles .card,.branchen-hub .card,.check-teaser,.ag-card,.res-card,.lv-card,a.card):hover{box-shadow:var(--sh-3),var(--edge-hi);border-color:rgba(246,237,228,.22)}
  :root :is(.tile,.tiles .card,.branchen-hub .card,.check-teaser,a.card):hover{transform:translateY(-3px)}
}
:root :is(.tile,a.card,.check-teaser):active{transform:scale(.985);transition-duration:var(--d-press)}

/* ---------- Buttons, Chips, Optionen ---------- */
:root :is(.btn,.cx-btn,.call-fab,.button,a.button,.fc-teaser button,.top-link,nav .nav-cta){box-shadow:var(--sh-1),inset 0 1px 0 rgba(255,255,255,.4);transition:background-color var(--d-hover) var(--e-out),color var(--d-hover) var(--e-out),border-color var(--d-hover) var(--e-out),box-shadow var(--d-ui) var(--e-out),transform var(--d-press) var(--e-out)}
:root :is(.contact-sec .btn,.pk-card.featured .btn){box-shadow:var(--sh-1),inset 0 1px 0 rgba(255,255,255,.14)}
:root nav .nav-cta{box-shadow:0 1px 2px rgba(16,6,2,.34),0 4px 14px rgba(254,77,3,.3),inset 0 1px 0 rgba(255,255,255,.28)}
:root :is(.btn-ghost,.btn-beige,.button-quiet){box-shadow:none;transition:background-color var(--d-hover) var(--e-out),border-color var(--d-hover) var(--e-out),transform var(--d-press) var(--e-out)}
:root :is(.fc-opt,.dyn-tab,.chips a){transition:background-color var(--d-hover) var(--e-out),border-color var(--d-hover) var(--e-out),color var(--d-hover) var(--e-out),transform var(--d-press) var(--e-out)}
:root .fc-opt{box-shadow:none}
:root :is(.nav-links a,.footer-links a,.site-foot a,.link-arrow,.weiter-liste a){transition:opacity var(--d-hover) var(--e-out),color var(--d-hover) var(--e-out)}
@media (hover:hover) and (pointer:fine){
  :root :is(.btn,.cx-btn,.call-fab,.button,a.button,.fc-teaser button,.top-link):hover{box-shadow:var(--sh-2),inset 0 1px 0 rgba(255,255,255,.5);transform:translateY(-1px)}
  :root nav .nav-cta:hover{background:#FF6A2E!important;color:#1D0B05!important;box-shadow:0 1px 2px rgba(16,6,2,.34),0 8px 22px rgba(254,77,3,.38),inset 0 1px 0 rgba(255,255,255,.34);transform:translateY(-1px)}
  :root :is(.btn-ghost,.btn-beige,.button-quiet):hover{background:rgba(246,237,228,.1)!important;color:#F6EDE4!important;transform:none}
  :root .chips a:hover{background:rgba(233,207,186,.16);color:#F6EDE4;border-color:rgba(233,207,186,.5)}
  :root .dyn-tab:hover{background:rgba(246,237,228,.12)}
  :root .fc-opt:not(.selected):hover{background:rgba(246,237,228,.15)!important;border-color:rgba(246,237,228,.42)!important}
}
:root :is(.btn,.cx-btn,.call-fab,.button,a.button,.fc-teaser button,nav .nav-cta,.chips a,.fc-opt,.dyn-tab):active{transform:scale(.97);transition-duration:var(--d-press)}

/* ---------- Nav-Material (Startseite) und Sub-Header: Scroll-Edge statt Linie ---------- */
nav#nav{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);transition:background-color var(--d-ui) var(--e-out)}
nav#nav::after{height:30px;background:linear-gradient(rgba(33,14,7,.82),transparent)}
.site-header{background:rgba(33,14,7,.78)!important;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}
body.sub .site-header::after{height:30px;background:linear-gradient(rgba(33,14,7,.78),transparent)}
@keyframes tc-edge{to{opacity:1}}
@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){
  .site-header{background:rgba(33,14,7,.66)!important}
  .site-header::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(33,14,7,.35);opacity:0;animation:tc-edge linear both;animation-timeline:scroll(root);animation-range:0 72px}
  body.sub .site-header::after{opacity:0;animation:tc-edge linear both;animation-timeline:scroll(root);animation-range:0 72px}
}}
@keyframes tc-drop{from{opacity:0;transform:translateY(-10px)}}
.nav-more[open] nav{animation:tc-drop var(--d-ui) var(--e-drawer) both}

/* ---------- Hero: Welle blendet weich ein ---------- */
@keyframes tc-wave-in{from{opacity:0}}
#wave-bg,#wave-glow{animation:tc-wave-in 1.2s var(--e-out) both}

/* ---------- Aufklappen (FAQ, Details): Hoehe + Plus dreht sich ---------- */
:is(.acc,.faq details,.scn-list details,.prog details) summary::after{display:inline-block;transition:transform var(--d-ui) var(--e-out)}
:is(.acc,.faq details,.scn-list details)[open] summary::after{content:"+";transform:rotate(45deg)}
@supports selector(::details-content){
  :root{interpolate-size:allow-keywords}
  :is(.acc,.faq details,.scn-list details,.prog details)::details-content{block-size:0;overflow:clip;transition:block-size var(--d-ui) var(--e-out),content-visibility var(--d-ui) var(--e-out) allow-discrete}
  :is(.acc,.faq details,.scn-list details,.prog details)[open]::details-content{block-size:auto}
  .acc .body{animation:none}
}

/* ---------- Cookie-Banner: dunkles Material, weicher Eintritt, schneller Austritt ---------- */
:root[data-theme] .mcb{background:rgba(33,14,7,.88);border-color:rgba(246,237,228,.14);color:#F6EDE4;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--sh-3),var(--edge-hi);transition:opacity .22s var(--e-out),transform .22s var(--e-out)}
:root[data-theme] .mcb.show{transition:opacity var(--d-enter) var(--e-out),transform var(--d-enter) var(--e-out)}
:root[data-theme] .mcb .mcb-text{color:#E9CFBA}
:root[data-theme] .mcb .mcb-text a{color:#F6EDE4}
:root[data-theme] .mcb .mcb-x{color:#E9CFBA}
:root[data-theme] .mcb .mcb-x:hover{background:rgba(246,237,228,.1);color:#F6EDE4}
:root[data-theme] .mcb .mcb-accept{background:#E9CFBA;color:#2B130A;box-shadow:var(--sh-1),inset 0 1px 0 rgba(255,255,255,.4)}
:root[data-theme] .mcb .mcb-decline{background:transparent;color:#F6EDE4;border-color:rgba(246,237,228,.34)}
:root[data-theme] .mcb .mcb-btns button{transition:transform var(--d-press) var(--e-out),background-color var(--d-hover) var(--e-out),border-color var(--d-hover) var(--e-out)}
:root[data-theme] .mcb .mcb-btns button:hover{transform:none}
:root[data-theme] .mcb .mcb-btns button:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){
  :root[data-theme] .mcb .mcb-accept:hover{background:#F6EDE4}
  :root[data-theme] .mcb .mcb-decline:hover{background:rgba(246,237,228,.1)}
}
:root[data-theme] .mcb .mcb-btns button:focus-visible{outline:2px solid #E9CFBA}

/* ---------- Anpassungen an Nutzereinstellungen ---------- */
@media (prefers-reduced-motion:reduce){
  #wave-bg,#wave-glow{animation:none}
  .nav-more[open] nav{animation:none}
  :root :is(.tile,.tiles .card,.branchen-hub .card,.check-teaser,.ag-card,.res-card,.lv-card,a.card,.btn,.cx-btn,.call-fab,.button,a.button,.fc-teaser button,nav .nav-cta,.chips a):is(:hover,:active){transform:none}
  :is(.acc,.faq details,.scn-list details,.prog details)::details-content{transition:none}
  :is(.acc,.faq details,.scn-list details,.prog details) summary::after{transition:none}
  :root[data-theme] .mcb,:root[data-theme] .mcb.show{transition:opacity .2s linear}
}
@media (prefers-reduced-transparency:reduce){
  nav#nav,.site-header,.nav-more nav,.site-menu,:root[data-theme] .mcb,.hero .nexus-stage{background:#2a1409!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  nav#nav::after,body.sub .site-header::after{display:none}
  #wave-glow{filter:none;mix-blend-mode:normal;opacity:.5}
}
@media (prefers-contrast:more){
  :root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.cmp,.lv-card,.flow-step,.flow>li,.boundary>div,.faq details,.scn-list details,.fact,.theme,.prog>article,.example-box,.tile,.dyn-left,.fc-card,.check-teaser,.calc-card,.check-box,.agent-card,.hero-answer,.person){border-color:rgba(246,237,228,.45)}
}

/* Seitenübergänge (Cross-Document View Transitions): Kopfleiste bleibt stehen und morpht,
   Inhalt blendet aus (schnell) und ein (etwas langsamer), starke Ease-out-Kurve */
@media (prefers-reduced-motion:no-preference){
  @view-transition{navigation:auto}
  nav#nav{view-transition-name:site-header}
  ::view-transition-group(site-header){animation-duration:280ms;animation-timing-function:var(--e-move,cubic-bezier(.77,0,.175,1))}
  ::view-transition-old(root){animation:vt-out 160ms var(--e-out,cubic-bezier(.23,1,.32,1)) both}
  ::view-transition-new(root){animation:vt-in 300ms var(--e-out,cubic-bezier(.23,1,.32,1)) both}
}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0;transform:translateY(6px)}}
@media (prefers-reduced-motion:reduce){
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}

/* Footer-Links: Hover wie vorher (Farbe), mit Übergang */
.site-foot .sf-col a{transition:color var(--d-hover,200ms) var(--e-out,cubic-bezier(.23,1,.32,1)),opacity var(--d-hover,200ms) var(--e-out,cubic-bezier(.23,1,.32,1))}
@media (hover:hover) and (pointer:fine){.site-foot .sf-col a:hover{color:#2B130A;text-decoration:underline;text-underline-offset:3px}}

/* =====================================================================
   KACHELN: Hover, Press, Einblenden, saubere Reihen (2026-11-09)
   Eine Selektorliste fuer alle Kacheln (.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc wird von apply_theme_coffee.py
   eingesetzt, dieselbe Liste nutzt /js/site-motion.js). Zusaetzlich markiert das
   Skript unbekannte Flaechen mit [data-tile]. Nur transform/opacity/translate,
   Hover nur mit Zeiger, Press ueberall, Reduced Motion respektiert.
   ===================================================================== */

/* Basis: weiche Uebergaenge, auch fuer das Einblenden (Verzoegerung nur per --sm-d) */
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]){
  animation:none;
  transition:transform var(--d-ui) var(--e-out),box-shadow var(--d-ui) var(--e-out),background-color var(--d-hover) var(--e-out),opacity .7s var(--e-out) var(--sm-d,0ms),translate .9s var(--e-out) var(--sm-d,0ms);
}
/* Ruhe im Ruhezustand (Apple-Stil): flache Farbflaeche statt Linie und Schatten, ein gemeinsamer Radius.
   Tiefe entsteht erst, wenn sich die Flaeche hebt. Das Hauptpaket (.featured) behaelt sein Sand. */
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]):not(.featured){border-color:transparent;box-shadow:none;border-radius:22px}
/* Hover (nur Maus/Trackpad): Farbstufe heller, leicht anheben, weicher Fernschatten */
@media (hover:hover) and (pointer:fine){
  :root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]):not(.featured):hover{transform:translateY(-2px);background-color:color-mix(in srgb,#F6EDE4 11%,#693822);box-shadow:var(--sh-2)}
  :root :is(a.card,a.tile,.tile,.tiles .card,.branchen-hub .card,.check-teaser,.ag-card,.res-card,.lv-card,.cs-card,[data-tile="link"]):not(.featured):hover{transform:translateY(-4px);background-color:color-mix(in srgb,#F6EDE4 13%,#693822);box-shadow:var(--sh-3)}
  :root :is(.faq details,.scn-list details,details.acc,[data-tile="flat"]):hover{transform:none;background-color:color-mix(in srgb,#F6EDE4 11%,#693822);box-shadow:none}
  :root .pk-card.featured:hover{transform:translateY(-3px)}
}
@media (prefers-contrast:more){:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]):not(.featured){border-color:rgba(246,237,228,.5)}}
/* Press (Maus und Touch): kurz einsinken, schneller als der Hover */
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]):not(.featured):active{transform:scale(.99);transition-duration:var(--d-press)}
:root .pk-card.featured:active{transform:scale(.99);transition-duration:var(--d-press)}
:root :is(a.card,a.tile,.tile,.tiles .card,.branchen-hub .card,.check-teaser,.ag-card,.res-card,.lv-card,.cs-card,[data-tile="link"]):not(.featured):active{transform:scale(.985)}
:root :is(.faq details,.scn-list details,details.acc,[data-tile="flat"]):not(.featured):active{transform:scale(.995)}

/* Einblenden beim Scrollen (JS /js/site-motion.js setzt html.sm-on und .sm-rv/.sm-in).
   Ohne JavaScript und bei Reduced Motion bleibt alles sichtbar. */
.sm-on .sm-rv:not(.sm-in){opacity:0;translate:0 26px}
@media (prefers-reduced-motion:reduce){
  .sm-on .sm-rv:not(.sm-in){opacity:1;translate:none}
  :root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]):not(.featured):is(:hover,:active){transform:none}
  :root .pk-card.featured:is(:hover,:active){transform:none}
}
@media print{.sm-on .sm-rv:not(.sm-in){opacity:1!important;translate:none!important}}

/* ---------- Sonderflaechen (Demo-Arena, Hinweiskasten, Scan-Ergebnis, Faktenblock): Hover und Press ---------- */
:root :is(.cx-arena,.reality,.scan-result,.facts-wrap){transition:transform var(--d-ui) var(--e-out),box-shadow var(--d-ui) var(--e-out),filter var(--d-hover) var(--e-out)}
@media (hover:hover) and (pointer:fine){
  :root :is(.reality,.scan-result):hover{transform:translateY(-2px);box-shadow:var(--sh-2)}
  /* grosse Buehnen und Rahmen: nur Schatten und feiner Kantenring, keine Bewegung */
  :root :is(.cx-arena,.facts-wrap):hover{box-shadow:var(--sh-3),0 0 0 1px rgba(246,237,228,.2)}
}
:root :is(.reality,.scan-result):active{transform:scale(.995);transition-duration:var(--d-press)}
:root :is(.cx-arena,.facts-wrap):active{box-shadow:var(--sh-1),0 0 0 1px rgba(246,237,228,.12);transition-duration:var(--d-press)}
@media (prefers-reduced-motion:reduce){:root :is(.reality,.scan-result):is(:hover,:active){transform:none}}

/* ---------- Reihen: keine Einzelkachel mehr ---------- */
@media (min-width:761px){
  /* 3-Spalten-Raster als 6er-Raster: 4 Karten = 2x2, 5 = 3+2, 7 = 3+2+2, Rest 1 = volle Breite */
  .grid:not(.grid-2):not(.grid-5):has(>.card){grid-template-columns:repeat(6,minmax(0,1fr))}
  .grid:not(.grid-2):not(.grid-5):has(>.card)>*{grid-column:span 2}
  .grid:not(.grid-2):not(.grid-5):has(>.card)>:last-child:nth-child(3n+1):not(:first-child){grid-column:span 6}
  .grid:not(.grid-2):not(.grid-5):has(>.card)>:last-child:nth-child(3n+2),
  .grid:not(.grid-2):not(.grid-5):has(>.card)>:nth-last-child(2):nth-child(3n+1){grid-column:span 3}
  .grid:not(.grid-2):not(.grid-5):has(>.card):has(>:nth-child(4):last-child)>:nth-child(n){grid-column:span 3}
  .gets>li:last-child:nth-child(odd):not(:first-child){grid-column:1/-1}
}
/* 4 Schritte: vier Spalten, zwei mal zwei, eine Spalte (Branchenseiten kannten nur 3 Spalten) */
@media (min-width:1001px){.flow.flow-4:not(:has(>li:nth-child(5))){grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (min-width:621px) and (max-width:1000px){.flow.flow-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.flow.flow-4{grid-template-columns:1fr}}
@media (max-width:760px){
  ul.grid5>li:last-child:nth-child(odd){grid-column:1/-1}
}

/* ---------- Text: gerade Raender, keine Einzelwoerter in der letzten Zeile ---------- */
main :is(h1,h2,h3,h4,summary,figcaption){text-wrap:balance}
main :is(p,li,dd,blockquote){text-wrap:pretty}
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]) :is(p,li){text-wrap:pretty;max-width:58ch}
/* Startseite: "Mehr erfahren" sitzt in allen Kacheln einer Reihe auf derselben Linie */
:root .ag-card{display:flex;flex-direction:column}
:root .ag-card .ag-proven{margin-top:auto;padding-top:14px}
:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]),:root :is(.card,.res-card,.ag-card,.cs-card,.pk-card,.lv-card,.cmp,.tile,.fact,.theme,.stopp,.person,.example-box,.agent-card,.check-box,.callout,.hero-answer,.role-box,.role-mini,.case,.fc-card,.check-teaser,.calc-card,.art-author,.bento-card,.dyn-left,.flow>li,.prog>article,.boundary>div,.gets>li,.faq details,.scn-list details,details.acc,[data-tile]) :is(strong,span,b){overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
/* Keine Woerter mitten im Wort trennen (Pfeil-Anhang haengt am letzten Wort) */
:root :is(.card,.tile) h3{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
/* Kicker-Pille mobil: bei zwei Zeilen nicht volle Breite, Punkt direkt vor dem Text, Zeilen ausbalanciert */
@media (max-width:760px){
  .hero-kicker{display:inline-block;width:auto;max-width:100%;text-align:center;text-wrap:balance;border-radius:22px;padding:8px 16px;line-height:1.35}
  .hero-kicker::before{display:inline-block;vertical-align:middle;margin:-2px 9px 0 0}
}
/* Gleicher Abstand zwischen Ueberschrift und Kachelgruppe auf allen Seitentypen */
main h2+:is(.flow,.boundary,.themes,.facts,.prog,.gets){margin-top:clamp(32px,4vw,48px)}
/* Beschriftungen ueber Kacheln: Satzschreibung statt kleiner Versalien mit Sperrung */
:root :is(.card .tag,.card .meta,.tile .meta,.example-box .tag,.person .meta){text-transform:none;letter-spacing:0;font-size:14px;font-weight:600}
/* Lesbare Zeilenlaenge (max. ca. 72 Zeichen) fuer linksbuendigen Fliesstext, Mittig-Texte behalten ihre eigene Breite */
@media (min-width:761px){
  main section>.wrap>p:not([class*="intro"]):not(.lead):not(.note):not(.scn-note):not(.theme-note):not(.lead-block),
  main section>.wrap>:is(ul.sources,ol:not([class])){max-width:72ch}
}
