:root{
  --aresa-red:#ff0000;
  --ink:#222;
  --muted:#000;
  --bg:#fff;
  --bg-alt:#f6f6f6;
  --border:#e9e9e9;
  --radius:12px;
  --shadow:0 8px 26px rgba(0,0,0,.08);
}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);}
a{color:var(--aresa-red);text-decoration:none}

/* HUB */
.kb-hub{ background:var(--bg-alt); padding:3rem 1.5rem 4rem; }
.kb-hero{ max-width:1100px; margin:0 auto 2rem; text-align:center; }
.kb-eyebrow{ color:var(--aresa-red); font-weight:700; letter-spacing:.08em; text-transform:uppercase; display:inline-block; margin-bottom:.4rem; }
.kb-hero h1{ margin:.2rem 0 .6rem; font-size:clamp(1.8rem,1.5vw + 1.6rem,2.4rem); }
.kb-sub{ max-width:860px; margin:0 auto; color:var(--muted); }

/* 1/3 : 2/3 */
.kb-grid{ max-width:1200px; margin:2rem auto 0; display:grid; grid-template-columns: 1fr 2fr; gap:1.5rem; }
@media (max-width:980px){ .kb-grid{ grid-template-columns:1fr; } }

/* linke Spalte */
.kb-core{ background:#fff; border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow); padding:1.25rem; }
.kb-core-title{ display:flex; align-items:center; gap:.6rem; margin:0 0 1rem; font-weight:700; font-size:1.15rem; }
.kb-dot{ width:12px; height:12px; border-radius:50%; background:var(--aresa-red); box-shadow:0 0 0 6px rgba(255,0,0,.08); }
.kb-core-grid{ display:grid; grid-template-columns:1fr; gap:1rem; }
.kb-card{ border:1px solid var(--border); border-radius:12px; padding:1rem; background:#fff; transition:box-shadow .2s ease, transform .15s ease; }
.kb-card:hover{ box-shadow:var(--shadow); transform:translateY(-2px); }
.kb-card h3{ margin:.2rem 0 .4rem; font-size:1.06rem; }
.kb-card p{ margin:0 0 .7rem; color:#000; font-size:.98rem; }
.kb-teaser{ color:#333; }
.kb-actions{ margin-top:.4rem; }
.kb-btn{ appearance:none; border:0; cursor:pointer; padding:.55rem .9rem; border-radius:8px; font-weight:700; font-size:.95rem; }
.kb-btn-primary{ background:var(--aresa-red); color:#fff; }
.kb-btn-primary:hover{ filter:brightness(.92); }

/* rechte Spalte (Feed) */
.kb-feed{ background:#fff; border:1px solid var(--border); border-radius:14px; box-shadow:var(--shadow); padding:1rem 1rem 1.2rem; display:flex; flex-direction:column; min-height:100%; }
.kb-feed h3{ margin:.2rem 0 .8rem; font-size:1.15rem; }
.kb-filters{ display:flex; gap:.5rem; flex-wrap:wrap; margin:.25rem 0 1rem; }
.kb-chip{ border:1px solid var(--border); background:#fff; border-radius:999px; padding:.35rem .7rem; font-size:.85rem; cursor:pointer; }
.kb-chip.is-on{ background:var(--aresa-red); color:#fff; border-color:var(--aresa-red); }
.kb-feed-list{ display:grid; grid-template-columns:1fr; gap:.8rem; }
.feed-item{ border:1px solid var(--border); border-radius:12px; padding:.8rem .9rem; background:#fff; display:grid; grid-template-columns:1fr auto; gap:.5rem; align-items:start; }
.feed-item h4{ margin:0 0 .5rem; line-height:1.35; font-size:1rem; }
.feed-meta{ margin:.1rem 0 .3rem; display:flex; flex-wrap:wrap; gap:.35rem .35rem; align-items:center; color:#777; font-size:.82rem; }
.feed-tag{ display:inline-block; background:#f7f7f7; border:1px solid #e8e8e8; border-radius:999px; padding:.2rem .6rem; font-size:.78rem; line-height:1; white-space:nowrap; color:#555; }
.feed-actions a{ color:var(--aresa-red); text-decoration:none; font-weight:700; }
.feed-body{ color:#333; font-size:.95rem; grid-column:1 / -1; }
.kb-feed-empty{ color:#777; text-align:center; padding:1.2rem; border:1px dashed #ddd; border-radius:10px; }

/* LinkedIn Iframe (falls verwendet) */
.ln-embed{ width:100%; border:0; height:420px; border-radius:10px; background:#fafafa; margin-top:.25rem; }

/* Link-Post (Text + Galerie wie LinkedIn) */
.feed-postcard{ background:#fafafa; border:1px solid #eee; border-radius:12px; padding:.9rem; }
.feed-postcard .post-source{ font-size:.85rem; color:#777; margin-bottom:.35rem; }
.feed-postcard .post-title{ font-weight:700; margin:0 0 .35rem; }
.feed-postcard .post-text{ white-space:pre-line; color:#222; margin:.25rem 0 .6rem; }
.feed-gallery{ display:grid; grid-template-columns:1fr 1fr; gap:.6rem; align-items:stretch; }
.feed-gallery img{ width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; border-radius:10px; display:block; }
@media (max-width:640px){
  .feed-gallery{ grid-template-columns:1fr; }
  .feed-gallery img{ aspect-ratio:4/5; }
}

/* Overlays */
.kb-ovl{ position:fixed; inset:0; z-index:1200; display:none; }
.kb-ovl.is-open{ display:block; }
.kb-ovl-backdrop{ position:absolute; inset:0; background:rgba(0,0,0,.45); opacity:0; transition:opacity .25s ease; }
.kb-ovl.is-open .kb-ovl-backdrop{ opacity:1; }

/* ===== PANEL NEU: Kein Text mehr unter dem Button sichtbar ===== */
.kb-ovl-panel{
  position:absolute; left:50%; top:52%;
  transform:translate(-50%,-48%) scale(.98);
  width:min(900px,92vw); max-height:86vh;
  display:flex; flex-direction:column; overflow:hidden;
  background:#fff; border-radius:14px; box-shadow:0 16px 48px rgba(0,0,0,.25); border:1px solid var(--border);
  transition:transform .28s cubic-bezier(.2,.8,.2,1), opacity .28s ease; opacity:0;
}
.kb-ovl.is-open .kb-ovl-panel{ transform:translate(-50%,-50%) scale(1); top:50%; opacity:1; }
.kb-ovl-header{ position:sticky; top:0; background:#fff; padding:.75rem 22px .5rem; border-bottom:1px solid var(--border); z-index:2; }
.kb-ovl-title{ margin:0; font-size:1.2rem; font-weight:800; }

/* Artikel scrollt eigenständig */
.kb-article{ flex:1 1 auto; overflow:auto; padding:0 22px 1rem 22px; color:#222; line-height:1.55; }
.kb-article h4{ margin:1.1rem 0 .4rem; font-size:1.05rem; }
.kb-article p{ margin:.6rem 0; }
.kb-article strong{ font-weight:600; }
.kb-lead{ font-size:1.02rem; }
.kb-subtle{ color:#222; }

/* --- Fusszeile unten (zentriert, fix) --- */
.kb-ovl-footer{ background:#fff; border-top:1px solid var(--border); padding:.6rem 22px; display:flex; justify-content:center; z-index:2; }
.kb-ovl-footer .kb-ovl-close{ background:#ff0000; color:#fff; border:0; border-radius:8px; padding:.45rem .9rem; font-weight:700; cursor:pointer; }
.kb-ovl-footer .kb-ovl-close:hover{ filter:brightness(.9); }

/* Spezielle Höhen für bestimmte LinkedIn-Embeds */
.ln-embed[src*="urn:li:activity:7389946919227330561"] { height: 1200px; max-height: 100vh; }
@media (max-width: 768px) { .ln-embed[src*="urn:li:activity:7389946919227330561"] { height: 1050px; } }
.ln-embed[src*="urn:li:activity:7389574076094357505"] { height: 800px; max-height: 95vh; }
@media (max-width: 768px) { .ln-embed[src*="urn:li:activity:7389574076094357505"] { height: 1050px; } }
.ln-embed[src*="urn:li:activity:7391022615097843712"] { height: 1050px; max-height: 95vh; }
@media (max-width: 768px) { .ln-embed[src*="urn:li:activity:7391022615097843712"] { height: 1050px; } }
