/* MW Kategorie SEO-Bereich: Text links, FAQ rechts */
.mw-cseo{
  --mw-cseo-left:50;--mw-cseo-gap:48px;--mw-cseo-radius:14px;--mw-cseo-clamp:260px;
  --mw-cseo-accent:#0b4a8f;--mw-cseo-text:#2a3443;--mw-cseo-muted:#6b7480;
  --mw-cseo-card:#fff;--mw-cseo-line:#e3e8ef;
  display:flex;gap:var(--mw-cseo-gap);align-items:flex-start;color:var(--mw-cseo-text);
}
.mw-cseo,.mw-cseo *{box-sizing:border-box}
.mw-cseo .mw-cseo__col{min-width:0}
.mw-cseo .mw-cseo__text{flex:var(--mw-cseo-left) 1 0%}
.mw-cseo .mw-cseo__faq{flex:calc(100 - var(--mw-cseo-left)) 1 0%}
.mw-cseo.mw-cseo--single .mw-cseo__col{flex:1 1 100%}
.mw-cseo--boxed .mw-cseo__col{
  padding:clamp(20px,3vw,34px);background:var(--mw-cseo-card);
  border:1px solid var(--mw-cseo-line);border-radius:var(--mw-cseo-radius);
}

.mw-cseo .mw-cseo__heading{
  margin:0 0 16px!important;padding:0!important;color:var(--mw-cseo-accent)!important;
  font-size:clamp(20px,2vw,24px);font-weight:600;line-height:1.3;letter-spacing:-.2px;
}

/* ---------- Text ---------- */
.mw-cseo .mw-cseo__content{font-size:15px;line-height:1.7;color:var(--mw-cseo-text)}
.mw-cseo .mw-cseo__content > *:first-child{margin-top:0}
.mw-cseo .mw-cseo__content > *:last-child{margin-bottom:0}
.mw-cseo .mw-cseo__content p{margin:0 0 1em}
.mw-cseo .mw-cseo__content h2,.mw-cseo .mw-cseo__content h3,.mw-cseo .mw-cseo__content h4{
  margin:1.4em 0 .5em;color:var(--mw-cseo-text);font-size:17px;font-weight:600;line-height:1.35;
}
.mw-cseo .mw-cseo__content ul,.mw-cseo .mw-cseo__content ol{margin:0 0 1em;padding-left:1.3em}
.mw-cseo .mw-cseo__content li{margin:0 0 .35em}
.mw-cseo .mw-cseo__content a,.mw-cseo .mw-cseo__answer a{color:var(--mw-cseo-accent);text-decoration:underline;text-underline-offset:2px}

/* Weiterlesen: Text bleibt komplett im HTML */
.mw-cseo .mw-cseo__readmore.is-clamped .mw-cseo__content{
  max-height:var(--mw-cseo-clamp);overflow:hidden;
  -webkit-mask-image:linear-gradient(180deg,#000 calc(100% - 70px),transparent);
          mask-image:linear-gradient(180deg,#000 calc(100% - 70px),transparent);
}
.mw-cseo .mw-cseo__readmore.is-open .mw-cseo__content{max-height:none;-webkit-mask-image:none;mask-image:none}
.mw-cseo button.mw-cseo__toggle,
.mw-cseo button.mw-cseo__toggle:hover,
.mw-cseo button.mw-cseo__toggle:focus{
  -webkit-appearance:none!important;appearance:none!important;
  display:none!important;align-items:center!important;gap:6px!important;
  margin:14px 0 0!important;padding:0!important;min-height:0!important;
  border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;
  color:var(--mw-cseo-accent)!important;font-size:14px!important;font-weight:600!important;line-height:1.3!important;
  text-transform:none!important;letter-spacing:0!important;cursor:pointer!important;
}
.mw-cseo .mw-cseo__readmore.is-clamped button.mw-cseo__toggle,
.mw-cseo .mw-cseo__readmore.is-open button.mw-cseo__toggle{display:inline-flex!important}
.mw-cseo button.mw-cseo__toggle:hover .mw-cseo__toggle-label{text-decoration:underline}
.mw-cseo button.mw-cseo__toggle svg{width:12px;height:12px;transition:transform .2s ease}
.mw-cseo .mw-cseo__readmore.is-open button.mw-cseo__toggle svg{transform:rotate(180deg)}
.mw-cseo button.mw-cseo__toggle:focus-visible{outline:2px solid var(--mw-cseo-accent)!important;outline-offset:3px!important;border-radius:4px!important}

/* ---------- FAQ ---------- */
.mw-cseo .mw-cseo__faq-list{display:flex;flex-direction:column;gap:10px}
.mw-cseo .mw-cseo__item{
  border:1px solid var(--mw-cseo-line);border-radius:calc(var(--mw-cseo-radius) * .75);
  background:var(--mw-cseo-card);transition:border-color .2s ease,box-shadow .2s ease;
}
.mw-cseo--boxed .mw-cseo__item{background:#f7f9fb}
.mw-cseo .mw-cseo__item[open]{border-color:color-mix(in srgb,var(--mw-cseo-accent) 35%,var(--mw-cseo-line));background:var(--mw-cseo-card);box-shadow:0 4px 14px rgba(16,24,40,.05)}
.mw-cseo .mw-cseo__question{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px 18px;list-style:none;cursor:pointer;
  color:var(--mw-cseo-text);font-size:15px;font-weight:600;line-height:1.4;
}
.mw-cseo .mw-cseo__question::-webkit-details-marker{display:none}
.mw-cseo .mw-cseo__question::marker{content:none}
.mw-cseo .mw-cseo__question:hover{color:var(--mw-cseo-accent)}
.mw-cseo .mw-cseo__question:focus-visible{outline:2px solid var(--mw-cseo-accent);outline-offset:2px;border-radius:calc(var(--mw-cseo-radius) * .75)}

/* Plus/Minus-Icon */
.mw-cseo .mw-cseo__icon{
  position:relative;flex:0 0 28px;width:28px;height:28px;border-radius:50%;
  background:color-mix(in srgb,var(--mw-cseo-accent) 10%,transparent);transition:background-color .2s ease,transform .25s ease;
}
.mw-cseo .mw-cseo__icon::before,.mw-cseo .mw-cseo__icon::after{
  content:"";position:absolute;top:50%;left:50%;width:11px;height:1.8px;margin:-.9px 0 0 -5.5px;
  border-radius:2px;background:var(--mw-cseo-accent);transition:transform .25s ease,opacity .2s ease;
}
.mw-cseo .mw-cseo__icon::after{transform:rotate(90deg)}
.mw-cseo .mw-cseo__item[open] .mw-cseo__icon{background:var(--mw-cseo-accent)}
.mw-cseo .mw-cseo__item[open] .mw-cseo__icon::before,
.mw-cseo .mw-cseo__item[open] .mw-cseo__icon::after{background:#fff}
.mw-cseo .mw-cseo__item[open] .mw-cseo__icon::after{transform:rotate(0deg);opacity:0}

.mw-cseo .mw-cseo__answer{padding:0 18px 18px;font-size:15px;line-height:1.7;color:var(--mw-cseo-muted)}
.mw-cseo .mw-cseo__answer > *:first-child{margin-top:0}
.mw-cseo .mw-cseo__answer > *:last-child{margin-bottom:0}
.mw-cseo .mw-cseo__answer p{margin:0 0 .8em}
.mw-cseo .mw-cseo__item[open] .mw-cseo__answer{animation:mwCseoIn .25s ease}
@keyframes mwCseoIn{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}

.mw-cseo-empty{padding:20px;border:1px dashed #ccc;border-radius:8px;text-align:center;font-size:14px;color:#777}

@media (max-width:1024px){
  .mw-cseo{flex-direction:column;align-items:stretch;gap:24px}
  .mw-cseo .mw-cseo__col{flex:1 1 auto!important;width:100%}
}
@media (max-width:767px){
  .mw-cseo--boxed .mw-cseo__col{padding:20px}
  .mw-cseo .mw-cseo__question{padding:14px 14px;font-size:14px}
  .mw-cseo .mw-cseo__answer{padding:0 14px 14px;font-size:14px}
}
@media (prefers-reduced-motion:reduce){
  .mw-cseo .mw-cseo__item[open] .mw-cseo__answer{animation:none}
}
