/* Neues Design öffentlicher Bereich (23.10.2026). Bausteine mit Präfix ew-. Entstanden aus /entwurf-start,
   Vorbilder healthchecks.io/steadycron.com, vom Betreiber und einem Freund freigegeben. */
.ew, .ew-oeffentlich { --ew-tief:#0f1c24; --ew-tief-2:#162a36; --ew-akzent:#4b6f85; --ew-hell:#8fb8d0; --ew-gruen:#3fb37a; --ew-rot:#e5534b; --ew-gelb:#d9a441;
      --ew-text:var(--cj-text); --ew-leise:var(--cj-muted); font-family:Roboto, system-ui, sans-serif; }
.ew h1, .ew h2, .ew h3 { font-weight:700; letter-spacing:-.025em; line-height:1.08; color:inherit; text-wrap:balance; }
.ew p { text-wrap:pretty; }
.ew .ew-wrap { max-width:1140px; margin:0 auto; padding:0 15px; }   /* wie Bootstrap-.container: h1 steht auf allen Seiten gleich (23.10.2026) */

/* ---------------------------------------------------------------- Hero */
.ew-hero { position:relative; overflow:hidden; color:#e6eef3; background:
    radial-gradient(900px 480px at 78% 30%, rgba(75,111,133,.45), transparent 70%),
    radial-gradient(600px 400px at 10% 90%, rgba(63,179,122,.10), transparent 70%), var(--ew-tief);
    padding:112px 0 104px; margin-top:-60px; }
.ew-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.35;
    background-image:linear-gradient(rgba(143,184,208,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(143,184,208,.08) 1px, transparent 1px);
    background-size:44px 44px; mask-image:radial-gradient(ellipse at 60% 40%, #000 30%, transparent 75%); }
.ew-hero .ew-wrap { position:relative; display:grid; grid-template-columns:1.2fr 1fr; gap:48px; align-items:center; }
.ew-marke { display:inline-flex; align-items:center; gap:.5rem; font-size:.8125rem; font-weight:500; color:var(--ew-hell);
    border:1px solid rgba(143,184,208,.3); border-radius:999px; padding:.3rem .8rem; margin-bottom:1.4rem; }
.ew-marke i { width:7px; height:7px; border-radius:50%; background:var(--ew-gruen); box-shadow:0 0 0 4px rgba(63,179,122,.18); }
.ew-h1 { font-size:clamp(2.1rem, 3.6vw, 3.1rem); margin:0 0 1.3rem; color:#fff; }
.ew-h1 .z { display:block; }
.ew-h1 .z2 { color:var(--ew-hell); }
.ew-lead { font-size:1.15rem; line-height:1.6; color:#b9c9d3; max-width:34rem; margin-bottom:2rem; font-weight:400; }
.ew-cta { display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; }
.ew-knopf { display:inline-flex; align-items:center; gap:.5rem; font-weight:500; font-size:1rem; border-radius:6px; padding:.85rem 1.4rem;
    transition:transform .2s ease, background-color .2s ease, box-shadow .2s ease; text-decoration:none !important; }
.ew-knopf:active { transform:translateY(1px) scale(.99); }
.ew-knopf.voll { background:#fff; color:var(--ew-tief) !important; border:1px solid #fff; }
.ew-knopf.voll:hover { transform:translateY(-1px); box-shadow:0 8px 20px -10px rgba(0,0,0,.45); }
.ew-knopf.leise { color:#e6eef3 !important; border:1px solid rgba(230,238,243,.25); }
.ew-knopf.leise:hover { background:rgba(230,238,243,.06); }
.ew-fakten { display:flex; flex-wrap:wrap; gap:.4rem 1.4rem; margin-top:1.6rem; font-size:.875rem; color:#93a8b5; }
.ew-fakten span::before { content:"✓"; color:var(--ew-gruen); margin-right:.4rem; font-weight:700; }
.ew-fakten a { color:inherit !important; text-decoration:underline; text-decoration-color:rgba(147,168,181,.5); text-underline-offset:.18em; }
.ew-fakten a:hover { color:#e6eef3 !important; }

/* Bildschirm: Job-Liste */
.ew-schirm { background:#101f29; border:1px solid rgba(143,184,208,.18); border-radius:10px; box-shadow:0 40px 80px -30px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.02) inset;
    overflow:hidden; font-size:.85rem; position:relative; }
.ew-schirm-kopf { display:flex; align-items:center; gap:6px; padding:.6rem .8rem; border-bottom:1px solid rgba(143,184,208,.12); background:#0d1a22; }
.ew-schirm-kopf b { width:9px; height:9px; border-radius:50%; background:#2a3d49; }
.ew-schirm-kopf span { margin-left:.6rem; color:#8199a8; font-size:.75rem; font-family:ui-monospace, Menlo, monospace; }
.ew-zeile { display:grid; grid-template-columns:18px 1fr auto 74px; gap:.7rem; align-items:center; padding:.7rem .9rem; border-bottom:1px solid rgba(143,184,208,.07);
    transition:background-color .4s ease; }
.ew-zeile:last-child { border-bottom:0; }
.ew-punkt { width:10px; height:10px; border-radius:50%; background:var(--ew-gruen); box-shadow:0 0 0 3px rgba(63,179,122,.18); transition:background-color .3s, box-shadow .3s; }
.ew-zeile.rot { background:rgba(229,83,75,.08); }
.ew-zeile.rot .ew-punkt { background:var(--ew-rot); box-shadow:0 0 0 3px rgba(229,83,75,.22); }
.ew-name { color:#dfe8ee; font-weight:500; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ew-name small { display:block; color:#8199a8; font-weight:400; font-family:ui-monospace, Menlo, monospace; font-size:.72rem; margin-top:1px; }
.ew-takt { color:#8aa1ae; font-family:ui-monospace, Menlo, monospace; font-size:.75rem; }
.ew-balken { display:flex; gap:2px; align-items:flex-end; height:22px; justify-content:flex-end; }
.ew-balken i { width:4px; border-radius:1px; background:#3c5a6c; transition:height .4s ease, background-color .3s; }
.ew-balken i.neu { background:var(--ew-hell); }
.ew-balken i.f { background:var(--ew-rot); }

/* Meldung, die einfliegt */
.ew-meldung { position:absolute; right:-14px; bottom:-26px; width:290px; background:#fff; color:#1f2933; border-radius:10px; padding:.75rem .9rem;
    box-shadow:0 24px 48px -16px rgba(0,0,0,.55); font-size:.82rem; transform:translateY(16px) scale(.97); opacity:0; transition:transform .5s cubic-bezier(.16,1,.3,1), opacity .4s; }
.ew-meldung.zeigen { transform:none; opacity:1; }
.ew-meldung .kopf { display:flex; align-items:center; gap:.45rem; font-weight:600; font-size:.78rem; color:#2a78d6; margin-bottom:.25rem; }
.ew-meldung .kopf .tg { width:18px; height:18px; border-radius:50%; background:#2aa3e0; display:inline-grid; place-items:center; color:#fff; font-size:.6rem; }
.ew-meldung .zeit { margin-left:auto; color:#5f6e79; font-weight:400; }
.ew-meldung p { margin:0; line-height:1.4; }
.ew-meldung.gut .kopf { color:#25784b; }

/* ---------------------------------------------------------------- Bänder und Abschnitte */
.ew-band { border-bottom:1px solid var(--cj-rand); background:var(--cj-flaeche); }
.ew-band .ew-wrap { display:flex; flex-wrap:wrap; gap:.6rem 2.2rem; align-items:center; justify-content:center; padding-top:22px; padding-bottom:22px;
    color:var(--cj-muted); font-size:.9rem; }
.ew-band b { color:var(--cj-text-2); font-weight:500; letter-spacing:.01em; }
.ew-sek { padding:104px 0; }
.ew-sek.ton { background:var(--cj-flaeche-2); }
.ew-ueber { font-size:.78rem; font-weight:600; color:var(--cj-akzent); margin-bottom:.8rem; letter-spacing:.09em; text-transform:uppercase; }   /* Label wie DESIGN.md; var statt fest: im Dunkelmodus #7fb0cf (23.10.2026) */
.ew-h2 { font-size:clamp(1.9rem, 3.2vw, 2.7rem); margin:0 0 1.1rem; color:var(--cj-text); }
.ew-text { font-size:1.06rem; line-height:1.65; color:var(--cj-text-2); max-width:36rem; }

/* Drei Schritte, abwechselnd */
.ew-schritt { display:grid; grid-template-columns:1fr 1.1fr; gap:64px; align-items:center; margin-top:72px; }
.ew-schritt:nth-child(even) .ew-bild { order:-1; }
.ew-nr { font-family:ui-monospace, Menlo, monospace; font-size:.8rem; color:var(--ew-akzent); border:1px solid var(--cj-rand); border-radius:6px; padding:.15rem .5rem; display:inline-block; margin-bottom:.9rem; }
.ew-schritt h3 { font-size:1.6rem; margin:0 0 .8rem; color:var(--cj-text); }
.ew-bild { background:var(--cj-flaeche); border:1px solid var(--cj-rand); border-radius:10px; padding:1.2rem; box-shadow:0 30px 60px -38px rgba(15,28,36,.45); }

/* KI-Eingabe */
.ew-ki-ein { font-family:ui-monospace, Menlo, monospace; font-size:.8rem; background:var(--cj-flaeche-2); border:1px dashed var(--cj-feldrand); border-radius:6px; padding:.7rem .8rem; color:var(--cj-text-2); min-height:3.4em; }
.ew-ki-ein .cursor { display:inline-block; width:7px; height:1em; background:var(--ew-akzent); vertical-align:-2px; animation:ew-blink 1s steps(1) infinite; }
@keyframes ew-blink { 50% { opacity:0; } }
.ew-ki-aus { display:grid; grid-template-columns:auto 1fr; gap:.35rem .9rem; margin-top:1rem; font-size:.88rem; }
.ew-ki-aus dt { color:var(--cj-muted); font-weight:400; }
.ew-ki-aus dd { margin:0; color:var(--cj-text); font-weight:500; font-family:ui-monospace, Menlo, monospace; font-size:.82rem; }
.ew-ki-aus .pille { display:inline-block; background:var(--cj-gruen-hell); color:var(--cj-gruen-text); border-radius:4px; padding:0 .4rem; font-family:Roboto, sans-serif; font-weight:500; }

/* Protokoll */
.ew-log { font-family:ui-monospace, Menlo, monospace; font-size:.78rem; }
.ew-log .z { display:grid; grid-template-columns:70px 44px 64px 1fr; gap:.6rem; padding:.45rem .2rem; border-bottom:1px solid var(--cj-rand-2); color:var(--cj-text-2); }
.ew-log .z:last-child { border-bottom:0; }
.ew-log .ok { color:var(--cj-gruen-text); font-weight:600; }
.ew-log .no { color:var(--cj-rot); font-weight:600; }
.ew-log .aus { color:var(--cj-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ew-mini { display:flex; align-items:flex-end; gap:3px; height:54px; margin-top:1rem; padding-top:.6rem; border-top:1px solid var(--cj-rand-2); }
.ew-mini i { flex:1; background:var(--ew-hell); border-radius:2px 2px 0 0; opacity:.85; }
.ew-mini i.f { background:var(--cj-rot); }

/* Meldungen-Stapel */
.ew-stapel { display:grid; gap:.7rem; }
.ew-kanal { display:grid; grid-template-columns:30px 1fr; gap:.7rem; align-items:start; padding:.75rem .85rem; border:1px solid var(--cj-rand); border-radius:10px; background:var(--cj-flaeche); font-size:.86rem; }
.ew-kanal .ic { width:30px; height:30px; border-radius:7px; display:grid; place-items:center; color:#fff; font-size:.85rem; }
.ew-kanal b { color:var(--cj-text); font-weight:600; }
.ew-kanal small { color:var(--cj-muted); display:block; margin-top:.1rem; }
.ew-kanal.leise { opacity:.8; border-style:dashed; }

/* Heartbeat-Fluss */
.ew-fluss { display:block; width:100%; height:auto; }
.ew-fluss .linie { stroke:var(--ew-akzent); stroke-width:2; fill:none; stroke-dasharray:6 8; animation:ew-fliessen 1.2s linear infinite; }
.ew-fluss .linie.aus { stroke:var(--cj-rot); animation:none; opacity:.5; }
@keyframes ew-fliessen { to { stroke-dashoffset:-28; } }
.ew-fluss text { font-family:Roboto, sans-serif; font-size:13px; fill:var(--cj-text-2); }
.ew-fluss .kasten { fill:var(--cj-flaeche); stroke:var(--cj-rand); }
.ew-fluss .mono { font-family:ui-monospace, Menlo, monospace; font-size:11.5px; fill:var(--cj-muted); }

/* Kacheln (Bento) */
.ew-bento { display:grid; grid-template-columns:repeat(6, 1fr); gap:16px; margin-top:56px; }
.ew-k { background:var(--cj-flaeche); border:1px solid var(--cj-rand); border-radius:10px; padding:1.5rem; position:relative; overflow:hidden;
    transition:transform .25s ease, box-shadow .25s ease; }
.ew-k:hover { transform:translateY(-2px); box-shadow:0 18px 40px -26px rgba(15,28,36,.45); }
.ew-k h3 { font-size:1.15rem; margin:0 0 .45rem; color:var(--cj-text); letter-spacing:-.01em; }
.ew-k p { margin:0; color:var(--cj-text-2); font-size:.95rem; line-height:1.55; }
.ew-k.b3 { grid-column:span 3; } .ew-k.b2 { grid-column:span 2; } .ew-k.b4 { grid-column:span 4; }
.ew-k.dunkel { background:var(--ew-tief-2); border-color:transparent; color:#cfdce4; }
.ew-k.dunkel h3 { color:#fff; } .ew-k.dunkel p { color:#a9bcc8; }
.ew-k .deko { position:absolute; right:-10px; bottom:-14px; font-size:6rem; opacity:.08; line-height:1; }
.ew-mond { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:1rem; font-family:ui-monospace, Menlo, monospace; font-size:.8rem; }
.ew-mond span { border:1px solid var(--cj-rand); border-radius:5px; padding:.2rem .5rem; color:var(--cj-text-2); white-space:nowrap; }
.ew-k.dunkel .ew-mond span { border-color:rgba(143,184,208,.25); color:#b9c9d3; }
/* Chatfenster (23.10.2026, Betreiber: Frage und Antwort sahen aus wie der Fliesstext daneben) */
.ew-chat { margin-top:1rem; font-size:.85rem; line-height:1.5; display:flex; flex-direction:column; gap:.6rem;
    background:rgba(8,16,22,.45); border:1px solid rgba(143,184,208,.18); border-radius:10px; padding:.9rem; }
.ew-chat .kopf { display:flex; align-items:center; gap:.45rem; font-size:.75rem; color:#8fa6b4;
    border-bottom:1px solid rgba(143,184,208,.14); padding-bottom:.6rem; }
.ew-chat .kopf i { width:7px; height:7px; border-radius:50%; background:var(--ew-gruen); }
.ew-chat .f { align-self:flex-end; max-width:85%; background:var(--ew-akzent); color:#fff; border-radius:10px 10px 2px 10px; padding:.5rem .75rem; }
.ew-chat .a { align-self:flex-start; max-width:92%; background:rgba(143,184,208,.10); color:#d3dfe6; border-radius:10px 10px 10px 2px; padding:.55rem .75rem; }
.ew-chat .werkzeug { display:block; font-family:ui-monospace, Menlo, monospace; font-size:.72rem; color:#8fa6b4; margin-bottom:.3rem; }
.ew-chat .eingabe { border:1px solid rgba(143,184,208,.22); border-radius:8px; padding:.45rem .7rem; color:#8fa6b4; font-size:.8rem; }

/* Preise kompakt */
.ew-preise { display:grid; grid-template-columns:repeat(3, 1fr); gap:16px; margin-top:48px; }
.ew-p { border:1px solid var(--cj-rand); border-radius:10px; padding:1.6rem; background:var(--cj-flaeche); }
.ew-p.empf { border-color:var(--ew-akzent); box-shadow:0 0 0 1px var(--ew-akzent) inset; }
.ew-p .n { font-weight:600; color:var(--cj-text); }
.ew-p .b { font-size:2.2rem; font-weight:700; letter-spacing:-.03em; color:var(--cj-text); margin:.4rem 0 .2rem; font-variant-numeric:tabular-nums; }
.ew-p .b small { font-size:.95rem; font-weight:400; color:var(--cj-muted); letter-spacing:0; }
.ew-jahr { font-size:.82rem; color:var(--cj-text-2); }
.ew-p-knopf { display:flex; justify-content:center; width:100%; margin-top:1.1rem; font-size:.95rem; padding:.7rem 1rem; }
.ew-p-hinweis { text-align:center; font-size:.8125rem; color:var(--cj-text-2); margin-top:.45rem; }
.ew-p ul { list-style:none; padding:0; margin:1rem 0 0; font-size:.92rem; color:var(--cj-text-2); }
.ew-p li { padding:.3rem 0; } .ew-p li::before { content:"✓"; color:var(--ew-gruen); font-weight:700; margin-right:.5rem; }

/* Abschluss */
.ew-ende { background:radial-gradient(700px 300px at 50% 0%, rgba(75,111,133,.5), transparent 70%), var(--ew-tief); color:#e6eef3; text-align:center; padding:96px 0 104px; }
.ew-ende h2 { font-size:clamp(2rem, 3.6vw, 3rem); color:#fff; margin:0 0 1rem; }
.ew-ende p { color:#b9c9d3; font-size:1.1rem; margin-bottom:2rem; }
.ew-ende .ew-cta { justify-content:center; }

/* Einfliegen */
html.ew-js .ew-flieg { opacity:0; transform:translateY(22px); filter:blur(4px); animation:ew-rein .7s cubic-bezier(.2,.8,.2,1) forwards; }
.ew-flieg.d1 { animation-delay:0s; } .ew-flieg.d2 { animation-delay:.06s; } .ew-flieg.d3 { animation-delay:.16s; } .ew-flieg.d4 { animation-delay:.26s; } .ew-flieg.d5 { animation-delay:.36s; }
@keyframes ew-rein { to { opacity:1; transform:none; filter:none; } }
html.ew-js .ew-auf { opacity:0; transform:translateY(28px); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.8,.2,1); }
html.ew-js .ew-auf.da { opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce) {
  .ew-flieg, .ew-auf { opacity:1 !important; transform:none !important; filter:none !important; animation:none !important; transition:none !important; }
  .ew-fluss .linie, .ew-ki-ein .cursor { animation:none; }
}

@media (max-width: 991px) {
  .ew-hero .ew-wrap, .ew-schritt { grid-template-columns:1fr; gap:40px; }
  .ew-schritt:nth-child(even) .ew-bild { order:0; }
  .ew-bento { grid-template-columns:1fr 1fr; } .ew-k.b2, .ew-k.b3, .ew-k.b4 { grid-column:span 2; }
  .ew-preise { grid-template-columns:1fr; }
  .ew-meldung { right:8px; bottom:-30px; }
  .ew-sek { padding:72px 0; }
}
@media (max-width: 575px) {
  .ew-zeile { grid-template-columns:14px 1fr 58px; } .ew-takt { display:none; }
  .ew-log .z { grid-template-columns:58px 38px 1fr; } .ew-log .z span:nth-child(3) { display:none; }
}

/* Logo-Band (23.10.2026) */
.ew-logos { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.7rem 1.6rem; }
.ew-logos-titel { color:var(--cj-muted); font-size:.85rem; margin-right:.4rem; }
.ew-logo { display:inline-flex; align-items:center; gap:.45rem; color:var(--cj-text-2) !important; font-weight:500; font-size:.92rem;
    text-decoration:none !important; transition:transform .2s ease, opacity .2s ease; opacity:.9; }
.ew-logo:hover { transform:translateY(-1px); opacity:1; }
html[data-theme="dark"] .ew-logo svg { filter:brightness(1.35) saturate(1.1); }

/* Bausteine für die übernommenen Textabschnitte der Startseite (23.10.2026) */
.ew-raster3 { display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; margin-top:40px; }
.ew-karte { border-top:3px solid var(--ew-akzent); padding-top:1.1rem; }
.ew-karte h3 { font-size:1.15rem; margin:0 0 .5rem; color:var(--cj-text); letter-spacing:-.01em; }
.ew-karte p { color:var(--cj-text-2); font-size:.97rem; line-height:1.6; }
.ew-karte .fuss { font-size:.88rem; color:var(--cj-muted); margin:0; }
.ew-wofuer { list-style:none; padding:0; margin:2.4rem 0 0; display:grid; grid-template-columns:repeat(auto-fit, minmax(17rem, 1fr)); gap:.5rem 2rem; }
.ew-wofuer li { color:var(--cj-text-2); font-size:.95rem; padding:.55rem 0; border-bottom:1px solid var(--cj-rand-2); }
.ew-wofuer b { color:var(--cj-text); font-weight:600; }
.ew-liste { list-style:none; padding:0; margin:0; }
.ew-liste li { position:relative; padding:.55rem 0 .55rem 1.5rem; color:var(--cj-text-2); border-bottom:1px solid var(--cj-rand-2); }
.ew-liste li:last-child { border-bottom:0; }
.ew-liste li::before { content:"✓"; position:absolute; left:0; top:.55rem; color:var(--ew-gruen); font-weight:700; }
.ew-hinweis { background:var(--cj-flaeche); border:1px solid var(--cj-rand); border-left:3px solid var(--ew-akzent); border-radius:0 10px 10px 0; padding:1rem 1.2rem; color:var(--cj-text-2); font-size:.95rem; }
.ew-hinweis a { text-decoration:underline; text-underline-offset:.18em; }
.ew-geld { max-width:46rem; margin:2rem auto 0; text-align:center; background:var(--cj-akzent-hell); border:1px solid var(--cj-rand); border-radius:10px; padding:.85rem 1.1rem; color:var(--cj-text-2); }
.ew-wege { display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; margin-top:36px; }
.ew-wege h3 { font-size:1.05rem; margin:0 0 .6rem; color:var(--cj-text); }
.ew-wege ul { list-style:none; padding:0; margin:0; columns:2; column-gap:1.2rem; }
.ew-wege li { padding:.22rem 0; break-inside:avoid; }
.ew-zeitplaene { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.6rem; }
.ew-zeitplaene a { border:1px solid var(--cj-rand); border-radius:999px; padding:.35rem .9rem; font-size:.9rem; background:var(--cj-flaeche); text-decoration:none !important;
    transition:border-color .2s, transform .2s; }
.ew-zeitplaene a:hover { border-color:var(--ew-akzent); transform:translateY(-1px); }
.ew-faq { max-width:52rem; margin-top:32px; }
.ew-faq details { border-bottom:1px solid var(--cj-rand); }
.ew-faq details:first-child { border-top:1px solid var(--cj-rand); }
.ew-faq summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:1rem; font-weight:600; color:var(--cj-text); padding:1.05rem 0; min-height:44px; font-size:1.05rem; }
.ew-faq summary::-webkit-details-marker { display:none; }
.ew-faq summary::after { content:"+"; flex:none; color:var(--ew-akzent); font-size:1.4rem; font-weight:400; line-height:1; transition:transform .25s; }
.ew-faq details[open] summary::after { transform:rotate(45deg); }
.ew-faq summary:focus-visible { outline:none; box-shadow:var(--cj-fokus); }
.ew-faq .antwort { color:var(--cj-text-2); padding:0 0 1.1rem; line-height:1.65; }
.ew-zwei { display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
.ew-ki-chat { display:grid; gap:.55rem; }
.ew-ki-chat .f, .ew-ki-chat .a { border-radius:10px; padding:.65rem .9rem; font-size:.94rem; line-height:1.45; max-width:92%; }
.ew-ki-chat .f { background:var(--cj-info-hell); color:var(--cj-text); margin-left:auto; }
.ew-ki-chat .a { background:var(--cj-flaeche-2); color:var(--cj-text-2); border:1px solid var(--cj-rand-2); }
.ew-hero-hb { margin-top:1.2rem; font-size:.95rem; color:#b9c9d3; }
.ew-hero-hb a { color:#fff !important; font-weight:500; text-decoration:underline; text-underline-offset:.2em; }
@media (max-width: 991px) { .ew-raster3, .ew-wege { grid-template-columns:1fr; } .ew-zwei { grid-template-columns:1fr; gap:36px; } }
.ew-knopf.akzent { background:var(--cj-knopf); color:var(--cj-auf-knopf) !important; border:1px solid var(--cj-knopf); }
.ew-knopf.akzent:hover { transform:translateY(-1px); background:var(--cj-akzent-stark); border-color:var(--cj-akzent-stark); box-shadow:0 4px 14px rgba(31,41,51,.12); }
.ew-knopf.rand { border:1px solid var(--cj-feldrand); color:var(--cj-text) !important; background:var(--cj-flaeche); }
.ew-knopf.rand:hover { border-color:var(--ew-akzent); }
.ew-video-rahmen { position:relative; margin:0; aspect-ratio:16 / 9; border-radius:10px; overflow:hidden; border:1px solid var(--cj-rand); box-shadow:0 30px 60px -38px rgba(15,28,36,.5); background:var(--cj-flaeche-2); }
.ew-video-rahmen video, .ew-video-rahmen img { display:block; width:100%; height:100%; object-fit:cover; }
.ew-video-start { position:absolute; inset:0; width:100%; height:100%; padding:0; margin:0; border:0; background:none; cursor:pointer; }
.ew-video-play { position:absolute; left:50%; top:50%; width:76px; height:76px; margin:-38px 0 0 -38px; border-radius:50%; background:var(--cj-knopf); box-shadow:0 12px 30px -8px rgba(31,41,51,.45); display:flex; align-items:center; justify-content:center; transition:transform .18s ease; }
.ew-video-play svg { margin-left:6px; }
.ew-video-start:hover .ew-video-play, .ew-video-start:focus-visible .ew-video-play { transform:scale(1.08); }
.ew-video-start:focus-visible { outline:3px solid var(--cj-akzent); outline-offset:-3px; }
.ew-video-dauer { position:absolute; right:14px; bottom:14px; padding:.2rem .6rem; border-radius:6px; font-size:.875rem; font-weight:600; color:#fff; background:rgba(31,41,51,.72); }

.ew code { font-family:ui-monospace, Menlo, monospace; font-size:.86em; color:var(--cj-text); background:var(--cj-flaeche); border:1px solid var(--cj-rand); border-radius:4px; padding:.05rem .35rem; overflow-wrap:anywhere; }
.ew-logos-satz { display:inline-flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:.7rem 1.8rem; min-height:26px; }
/* Laufband (23.10.2026): Abstand als margin statt gap, damit -50 % genau eine Runde ist */
.ew-logos-fenster { display:flex; justify-content:center; min-width:0; }
.ew-logos:has(.laeuft) { flex-wrap:nowrap; justify-content:flex-start; width:100%; }
.ew-logos-titel { flex:none; white-space:nowrap; }
.ew-logos-fenster:has(.laeuft) { flex:1 1 0; width:0; overflow:hidden; justify-content:flex-start;
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent); mask-image:linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent); }
.ew-logos-satz.laeuft { flex-wrap:nowrap; justify-content:flex-start; gap:0; width:max-content; animation:ew-band 55s linear infinite; }
.ew-logos-satz.laeuft .ew-logo { margin-right:2.2rem; white-space:nowrap; }
.ew-logos-fenster:hover .laeuft, .ew-logos-fenster:focus-within .laeuft { animation-play-state:paused; }
@keyframes ew-band { to { transform:translateX(-50%); } }
@media (max-width:640px) { .ew-logos:has(.laeuft) { flex-wrap:wrap; } .ew-logos:has(.laeuft) { justify-content:center; } .ew-logos:has(.laeuft) .ew-logos-fenster { flex:0 0 100%; width:100%; } .ew-logos-satz.laeuft { animation-duration:40s; } }
