/* =====================================================================
   VIA X Case-Study-Block (viax/case-study). Pilot BMW Group + Innowise
   Mammografie, 2026-10-10. Uebernommen aus
   VIAX_Case-Layout_Referenz-CSS_v1.2.css (Klassennamen verbindlich,
   Werte feinjustierbar). Wird nur geladen, wenn has_block('viax/case-study')
   zutrifft (siehe class-viax-case-study.php::enqueue_assets()).
   ===================================================================== */
.viax-case{--tone:var(--viax-yellow,#ffed40);padding-bottom:clamp(3rem,6vw,5rem)}
.viax-case + .viax-case{margin-top:3rem;border-top:6px solid var(--viax-surface,#22223d)}

:root{
  /* Nur der eine zusaetzliche Tonwert aus der Designpruefung, alle anderen
     Tokens kommen bereits aus site.css :root (Night/Deep/Surface/Light/
     Muted/Yellow/Green/Pink/Border/Radius/Content/Gutter). */
  --viax-soft:#aeb4f2;
}

/* ---- Icon-System: CSS-Maske, im Content nur
   <span class="viax-icon viax-icon--name" aria-hidden="true"> ---- */
.viax-icon{--viax-icon:none;display:inline-block;flex:none;width:1.6em;height:1.6em;background-color:currentColor;
  -webkit-mask:var(--viax-icon) center/contain no-repeat;mask:var(--viax-icon) center/contain no-repeat}
.viax-icon--users{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.2'/%3E%3Cpath d='M3 20c0-3.3 2.7-6 6-6s6 2.7 6 6'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M17 14.2c2.4.2 4.3 2.2 4.3 4.8'/%3E%3C/svg%3E")}
.viax-icon--timer{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='13.5' r='7.5'/%3E%3Cpath d='M12 13.5V9M9.5 3h5M12 3v3M18.5 6.5l1.2-1.2'/%3E%3C/svg%3E")}
.viax-icon--globe{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3c2.8 3 2.8 15 0 18M12 3c-2.8 3-2.8 15 0 18'/%3E%3C/svg%3E")}
.viax-icon--building{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='3' width='9' height='18' rx='1'/%3E%3Cpath d='M14 9h5v12h-5M8 7h3M8 11h3M8 15h3M16.5 13h.01M16.5 17h.01'/%3E%3C/svg%3E")}
.viax-icon--factory{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 21V10l6 4v-4l6 4V6h3v15zM3 21h18'/%3E%3C/svg%3E")}
.viax-icon--pin{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6.2 7-11.5A7 7 0 0 0 5 9.5C5 14.8 12 21 12 21z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E")}
.viax-icon--database{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cellipse cx='12' cy='5.5' rx='7.5' ry='3'/%3E%3Cpath d='M4.5 5.5v13c0 1.7 3.4 3 7.5 3s7.5-1.3 7.5-3v-13M4.5 12c0 1.7 3.4 3 7.5 3s7.5-1.3 7.5-3'/%3E%3C/svg%3E")}
.viax-icon--gear{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Ccircle cx='12' cy='12' r='6.5'/%3E%3Cpath d='M12 2.5v3M12 18.5v3M2.5 12h3M18.5 12h3M5.3 5.3l2.1 2.1M16.6 16.6l2.1 2.1M18.7 5.3l-2.1 2.1M7.4 16.6l-2.1 2.1'/%3E%3C/svg%3E")}
.viax-icon--monitor{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='12' rx='1.5'/%3E%3Cpath d='M8 21h8M12 16v5'/%3E%3C/svg%3E")}
.viax-icon--person{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4.5 21c0-4.1 3.4-7 7.5-7s7.5 2.9 7.5 7'/%3E%3C/svg%3E")}
.viax-icon--search{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='10.5' cy='10.5' r='6.5'/%3E%3Cpath d='M15.5 15.5L21 21'/%3E%3C/svg%3E")}
.viax-icon--shield{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7.5 3v5.5c0 4.6-3.1 8.2-7.5 9.5-4.4-1.3-7.5-4.9-7.5-9.5V6L12 3z'/%3E%3Cpath d='M9 12l2.2 2.2L15.5 10'/%3E%3C/svg%3E")}
.viax-icon--flag{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 21V4M6 4h11l-2 4 2 4H6'/%3E%3C/svg%3E")}
.viax-icon--analysis{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l4 4v14H7z'/%3E%3Ccircle cx='12.5' cy='13' r='2.8'/%3E%3Cpath d='M14.5 15l2 2'/%3E%3C/svg%3E")}
.viax-icon--list{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11'/%3E%3Ccircle cx='4.5' cy='6' r='1'/%3E%3Ccircle cx='4.5' cy='12' r='1'/%3E%3Ccircle cx='4.5' cy='18' r='1'/%3E%3C/svg%3E")}
.viax-icon--clinic{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V9l8-5 8 5v12M2.5 21h19M12 10v5M9.5 12.5h5'/%3E%3C/svg%3E")}
.viax-icon--chart{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 20V13M10 20V8M15 20V11M20 20V4'/%3E%3C/svg%3E")}
.viax-icon--network{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='6' cy='12' r='2.5'/%3E%3Ccircle cx='18' cy='6' r='2.5'/%3E%3Ccircle cx='18' cy='18' r='2.5'/%3E%3Cpath d='M8.2 10.8l7.6-3.6M8.2 13.2l7.6 3.6'/%3E%3C/svg%3E")}
.viax-icon--image{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='2'/%3E%3Ccircle cx='9' cy='10' r='1.8'/%3E%3Cpath d='M4 18l5-5 4 4 3-3 4 4'/%3E%3C/svg%3E")}
.viax-icon--message{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4z'/%3E%3Cpath d='M8 9.5h8M8 12.5h5'/%3E%3C/svg%3E")}
.viax-icon--chevron{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E")}
.viax-icon--arrow{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h16M13 6l6 6-6 6'/%3E%3C/svg%3E")}

/* ---- Hero (vollbreit, Bild per Verlauf in die Markenflaeche) ---- */
.viax-case-hero{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(440px,37vw,560px);overflow:hidden;background:var(--viax-night,#100f1f)}
.viax-case-hero__media{position:absolute;inset:0;z-index:-1}
.viax-case-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--focus,60% 30%)}
.viax-case-hero__media::after{content:"";position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(16,15,31,.94) 0%,rgba(16,15,31,.78) 34%,rgba(16,15,31,.18) 68%,rgba(16,15,31,0) 100%),
  linear-gradient(0deg,var(--viax-night,#100f1f) 0%,rgba(16,15,31,0) 26%)}
.viax-case-hero__credit{position:absolute;right:var(--viax-gutter,1rem);bottom:.9rem;z-index:1;font-size:.75rem;line-height:1.35;color:var(--viax-muted,#b4afc7);text-align:right;max-width:46ch}
.viax-case-hero__inner{position:relative;width:min(calc(100% - var(--viax-gutter,1rem) - var(--viax-gutter,1rem)),var(--viax-content,1180px));margin:0 auto;padding:clamp(4rem,9vw,7rem) 0 clamp(2.4rem,4.5vw,3.6rem)}
.viax-case-hero h1{max-width:900px;text-wrap:balance;margin:0}
.viax-case-hero__title{display:block;font-size:clamp(2.5rem,5.5vw,5.25rem);line-height:1;font-weight:800}
.viax-case-hero__subtitle{display:block;margin-top:.65rem;max-width:20ch;font-size:clamp(1.5rem,2.8vw,2.5rem);line-height:1.12;font-weight:700;color:var(--viax-soft)}
.viax-case-hero__partner{margin-top:1.4rem;font-size:clamp(.95rem,1.2vw,1.1rem);color:var(--viax-muted,#b4afc7)}
.viax-case-hero__partner a{display:block;margin-top:.15rem;font-size:clamp(1.15rem,1.7vw,1.5rem);font-weight:750;color:var(--viax-light,#f4f3f7);text-decoration:none}
.viax-case-hero__partner a:hover{color:var(--viax-yellow,#ffed40)}

/* ---- Layout-Container ---- */
.viax-case-shell{width:min(calc(100% - var(--viax-gutter,1rem) - var(--viax-gutter,1rem)),var(--viax-content,1180px));margin:0 auto}

/* ---- Kennzahlenband ---- */
.viax-case-kpis{position:relative;margin-top:0;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.55)}
.viax-case-kpis ul{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;list-style:none}
.viax-case-kpis li{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2rem);padding:clamp(1.3rem,2.4vw,1.9rem) clamp(1.2rem,3vw,2.4rem)}
.viax-case-kpis li + li{border-left:1px solid var(--viax-border,rgba(244,243,247,.14))}
.viax-case-kpis__icon{width:clamp(3rem,5vw,4.2rem);height:clamp(3rem,5vw,4.2rem);color:var(--viax-muted,#b4afc7)}
.viax-case-kpis strong{display:block;font-size:clamp(2.1rem,3.8vw,3.4rem);line-height:1;font-weight:800;color:var(--viax-light,#f4f3f7)}
.viax-case-kpis li span{display:block;margin-top:.45rem;color:var(--viax-muted,#b4afc7);font-size:1.02rem;line-height:1.35}
.viax-case-kpis__note{padding:0 clamp(1.2rem,3vw,2.4rem) .9rem;text-align:right;font-size:.82rem;color:var(--viax-muted,#b4afc7)}

/* ---- Zweispalter: Hauptspalte + Informationsspalte, mobil in den Lesefluss gemischt ---- */
.viax-case-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(290px,340px);gap:clamp(2rem,4.2vw,3.6rem);margin-top:clamp(2rem,4vw,3rem);align-items:start}
.viax-case-main{display:flex;flex-direction:column;gap:clamp(2.2rem,4vw,3rem);min-width:0}
.viax-case-side{display:flex;flex-direction:column;gap:1.2rem;min-width:0}
.viax-case-card--inline{display:none}

/* ---- Kapitel mit Kreis und Unterstrich ---- */
.viax-case-chapter{--tone:var(--viax-yellow,#ffed40)}
.viax-case-chapter--green{--tone:var(--viax-green,#57ed4c)}
.viax-case-chapter--pink{--tone:var(--viax-pink,#ed34a2)}
.viax-case-chapter__head{position:relative;display:flex;align-items:center;gap:1.2rem;padding-bottom:1rem;margin-bottom:.4rem}
.viax-case-chapter__head::after{content:"";position:absolute;left:calc(clamp(3rem,5vw,3.6rem) + 1.2rem);bottom:0;width:58px;height:5px;border-radius:999px;background:var(--tone)}
.viax-case-chapter__num{display:grid;place-items:center;flex:none;width:clamp(3rem,5vw,3.6rem);height:clamp(3rem,5vw,3.6rem);border:2px solid var(--tone);border-radius:50%;color:var(--tone);font-size:clamp(1.1rem,1.8vw,1.4rem);font-weight:700}
.viax-case-chapter h2{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.05;margin:0}
.viax-case-chapter__body{padding-left:calc(clamp(3rem,5vw,3.6rem) + 1.2rem);color:var(--viax-muted,#b4afc7);font-size:1.05rem;line-height:1.7}
.viax-case-chapter__body > * + *{margin-top:.55rem}
.viax-case-chapter__body h3{margin-top:1.5rem;font-size:1.08rem;line-height:1.3;color:var(--viax-light,#f4f3f7)}
.viax-case-chapter__body h3 + p{margin-top:.25rem}
.viax-case-chapter__body .viax-diagram,.viax-case-chapter__body .viax-chevrons,.viax-case-chapter__body .viax-metric{margin-top:1.7rem}

/* ---- Ergebnistabellen (Datensaetze mit chapters.*.html, 2026-10-13) ---- */
.viax-case-chapter__body table{margin-top:1.2rem;width:100%;border-collapse:collapse;font-size:.95rem}
.viax-case-chapter__body th,.viax-case-chapter__body td{padding:.6rem .9rem;text-align:left;border-bottom:1px solid rgba(180,175,199,.25)}
.viax-case-chapter__body th{color:var(--viax-light,#f4f3f7);font-weight:700;border-bottom-color:var(--tone)}
.viax-case-chapter__body td:not(:first-child),.viax-case-chapter__body th:not(:first-child){text-align:right}

/* ---- Chevron-Ergebnisliste ---- */
.viax-chevrons{display:grid;gap:.85rem;margin:0;padding:0;list-style:none;color:var(--viax-light,#f4f3f7)}
.viax-chevrons li{position:relative;padding-left:2.9rem;min-height:2rem;display:flex;align-items:center;font-size:1.05rem}
.viax-chevrons li::before{content:"";position:absolute;left:0;top:50%;width:2rem;height:2rem;margin-top:-1rem;border-radius:50%;background:var(--viax-yellow,#ffed40)}
.viax-chevrons li::after{content:"";position:absolute;left:0;top:50%;width:2rem;height:2rem;margin-top:-1rem;background:var(--viax-night,#100f1f);
  -webkit-mask:var(--viax-icon) center/58% no-repeat;mask:var(--viax-icon) center/58% no-repeat;--viax-icon:none}
.viax-chevrons li{--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 5l7 7-7 7'/%3E%3C/svg%3E")}
.viax-chevrons li::after{--viax-icon:inherit}

/* ---- Kennzahl im Ergebnis ---- */
.viax-metric{display:flex;gap:1.4rem;align-items:center;padding:1.3rem 1.5rem;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.55);color:var(--viax-light,#f4f3f7)}
.viax-metric__icon{width:3.6rem;height:3.6rem;color:var(--viax-muted,#b4afc7)}
.viax-metric__pre{display:block;font-size:1rem;color:var(--viax-light,#f4f3f7)}
.viax-metric strong{display:block;font-size:clamp(2.4rem,4.4vw,3.6rem);line-height:1.02;font-weight:800}
.viax-metric__label{display:block;margin-top:.3rem;color:var(--viax-muted,#b4afc7);font-size:1rem;line-height:1.35}

/* ---- Informationskarten ---- */
.viax-case-card{padding:1.45rem 1.5rem 1.35rem;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.55)}
.viax-case-card__title{position:relative;padding-bottom:.95rem;font-size:1.3rem;margin:0}
.viax-case-card__title::after{content:"";position:absolute;left:0;bottom:0;width:40px;height:4px;border-radius:999px;background:var(--viax-yellow,#ffed40)}
.viax-case-rows{display:grid;gap:1rem;margin:1.2rem 0 0;padding:0;list-style:none}
.viax-case-rows li{display:flex;align-items:center;gap:1rem;color:var(--viax-muted,#b4afc7);line-height:1.35}
.viax-case-rows .viax-icon{width:2.15rem;height:2.15rem;color:var(--viax-muted,#b4afc7);flex:none}
.viax-case-rows b{display:block;font-weight:650;color:var(--viax-light,#f4f3f7)}

/* ---- Diagramme: gemeinsame Huelle ---- */
.viax-diagram{margin-left:0;margin-right:0;padding:1.3rem 1.4rem 1.4rem;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.4);color:var(--viax-light,#f4f3f7)}
.viax-diagram__title{margin:0 0 1.2rem;font-size:1.15rem;font-weight:700;line-height:1.2}

/* ---- Linearer Ablauf (Phasen). Desktop horizontal, mobil vertikal, gleiche DOM-Reihenfolge ---- */
.viax-flow{display:flex;justify-content:center;gap:clamp(3.2rem,8vw,5rem);margin:0;padding:0;list-style:none;counter-reset:none}
.viax-flow li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;flex:0 1 150px;min-width:0}
.viax-flow__node{display:grid;place-items:center;width:84px;height:84px;border:2px solid var(--viax-muted,#b4afc7);border-radius:50%;color:var(--viax-light,#f4f3f7)}
.viax-flow__node .viax-icon{width:2.4rem;height:2.4rem}
.viax-flow strong{margin-top:.7rem;font-size:1.05rem;line-height:1.2}
.viax-flow__note{margin-top:.25rem;font-size:.9rem;line-height:1.3;color:var(--viax-muted,#b4afc7)}
.viax-flow li + li::before{content:"";position:absolute;top:42px;left:calc(-1 * clamp(3.2rem,8vw,5rem) + 8px);width:calc(clamp(3.2rem,8vw,5rem) - 16px);height:22px;margin-top:-11px;background:var(--viax-muted,#b4afc7);
  -webkit-mask:var(--viax-icon) center/contain no-repeat;mask:var(--viax-icon) center/contain no-repeat;--viax-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12h42M36 4l8 8-8 8'/%3E%3C/svg%3E")}

/* ---- Systeme und Datenaustausch (3 Knoten + Aggregation) ---- */
.viax-exchange{display:grid;gap:0}
.viax-exchange__nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:0;padding:0;list-style:none}
.viax-exchange__node{display:flex;flex-direction:column;align-items:center;min-width:0}
.viax-exchange__card{width:100%;display:flex;flex-direction:column;align-items:center;gap:.45rem;padding:.9rem .7rem;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(244,243,247,.04);text-align:center;font-size:.95rem;line-height:1.3;color:var(--viax-muted,#b4afc7)}
.viax-exchange__card strong{color:var(--viax-light,#f4f3f7);font-size:1.05rem}
.viax-exchange__icons{display:flex;gap:.7rem;color:var(--viax-muted,#b4afc7)}
.viax-exchange__icons .viax-icon{width:1.8rem;height:1.8rem}
.viax-exchange__links{display:flex;gap:1.6rem;justify-content:center;height:3.6rem;align-items:center}
.viax-exchange i,.viax-legend i{display:block;width:26px;height:26px;background:var(--viax-yellow,#ffed40);
  -webkit-mask:var(--a) center/contain no-repeat;mask:var(--a) center/contain no-repeat;
  --a:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3v17M5 13l7 7 7-7'/%3E%3C/svg%3E")}
.viax-exchange i.back,.viax-legend i.back{background:var(--viax-soft);transform:rotate(180deg)}
.viax-exchange__hub{display:flex;align-items:center;justify-content:center;gap:.8rem;padding:.95rem 1rem;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(244,243,247,.06);font-size:1.2rem}
.viax-exchange__hub .viax-icon{width:2.1rem;height:2.1rem;color:var(--viax-muted,#b4afc7)}
.viax-legend{display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:center;margin:1rem 0 0;padding:0;list-style:none;font-size:.95rem;color:var(--viax-muted,#b4afc7)}
.viax-legend li{display:flex;align-items:center;gap:.6rem}
.viax-legend i{width:22px;height:22px}

/* ---- Abschluss: Partnerlink, Weiterlesen, CTA ---- */
.viax-case-partnerlink{margin-top:clamp(2.2rem,4vw,3rem)}
.viax-inline-arrow{width:1.1em;height:1.1em;vertical-align:-.15em}
.viax-case-end{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.05fr);gap:1.2rem;margin-top:clamp(1.6rem,3vw,2.4rem);padding-top:clamp(2rem,4vw,3rem);border-top:1px solid var(--viax-border,rgba(244,243,247,.14))}
.viax-case-end__title{grid-column:1/4;grid-row:1;position:relative;padding-bottom:.9rem;font-size:clamp(1.8rem,3vw,2.35rem);margin:0}
.viax-case-end__title::after{content:"";position:absolute;left:0;bottom:0;width:58px;height:5px;border-radius:999px;background:var(--viax-yellow,#ffed40)}
.viax-case-end__teasers{display:contents}
.viax-case-teaser{position:relative;display:flex;flex-direction:column;border:1px solid var(--viax-border,rgba(244,243,247,.14));border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.55);overflow:hidden;color:var(--viax-light,#f4f3f7);text-decoration:none}
.viax-case-teaser__img{display:block;aspect-ratio:16/9;background:var(--viax-surface,#22223d);overflow:hidden}
.viax-case-teaser__img img{display:block;width:100%;height:100%;object-fit:cover}
.viax-case-teaser__body{display:flex;flex-direction:column;gap:.4rem;padding:1.1rem 3.2rem 1.2rem 1.2rem}
.viax-case-teaser__body strong{font-size:1.15rem;line-height:1.2}
.viax-case-teaser__body span{font-size:.95rem;line-height:1.45;color:var(--viax-muted,#b4afc7)}
.viax-case-teaser__arrow{position:absolute;right:1.1rem;bottom:1.2rem;width:1.4rem;height:1.4rem;color:var(--viax-light,#f4f3f7)}
.viax-case-teaser:hover{border-color:var(--viax-yellow,#ffed40)}
.viax-case-cta{grid-column:4;grid-row:1/span 2;display:flex;flex-direction:column;align-items:flex-start;gap:.9rem;padding:1.4rem;border:1px solid rgba(255,237,64,.55);border-radius:var(--viax-radius-small,14px);background:rgba(34,34,61,.55)}
.viax-case-cta__icon{width:2.6rem;height:2.6rem;color:var(--viax-yellow,#ffed40)}
.viax-case-cta h2{font-size:1.5rem;margin:0}
.viax-case-cta p{color:var(--viax-muted,#b4afc7);line-height:1.5;margin:0}
.viax-case-cta .viax-button{margin-top:auto;min-height:48px;padding:.7rem 1.2rem}
.viax-case-cta__button{gap:.6rem}
.viax-case-cta__button-icon{width:1.1em;height:1.1em;color:currentColor}

/* ================= Tablet <=900 px: Informationsspalte wandert in den Lesefluss ================= */
@media (max-width:900px){
  .viax-case-hero{display:block;min-height:0}
  .viax-case-hero__media{position:relative;z-index:0;aspect-ratio:3/2}
  .viax-case-hero__media::after{background:linear-gradient(0deg,rgba(16,15,31,.85) 0%,rgba(16,15,31,0) 28%)}
  .viax-case-hero__credit{left:var(--viax-gutter,1rem);right:var(--viax-gutter,1rem);bottom:.55rem;max-width:none;text-align:left}
  .viax-case-hero__inner{margin-top:1.1rem;padding:0 0 1.6rem}
  .viax-case-hero__subtitle{max-width:none}
  .viax-case-layout{display:block}
  .viax-case-main{gap:1.6rem}
  .viax-case-side{display:none}
  .viax-case-card--inline{display:block}
  .viax-case-end{grid-template-columns:repeat(2,minmax(0,1fr))}
  .viax-case-cta{grid-column:1/-1;grid-row:1}
  .viax-case-end__title{grid-column:1/-1;grid-row:2}
}
/* ================= Mobil <=620 px ================= */
@media (max-width:620px){
  .viax-case-hero__media{aspect-ratio:4/3.1}
  .viax-case-hero__title{font-size:clamp(2.1rem,11vw,2.75rem)}
  .viax-case-hero__subtitle{font-size:clamp(1.35rem,7vw,1.7rem)}
  .viax-case-kpis ul{grid-template-columns:1fr}
  .viax-case-kpis li + li{border-left:0;border-top:1px solid var(--viax-border,rgba(244,243,247,.14))}
  .viax-case-kpis__note{text-align:left}
  .viax-case-chapter__head::after{left:calc(3rem + 1.2rem)}
  .viax-case-chapter__body{padding-left:0;margin-top:.6rem;font-size:1rem}
  .viax-case-chapter h2{font-size:clamp(1.8rem,9vw,2.2rem)}
  .viax-diagram{padding:1.1rem 1rem 1.2rem}
  /* Phasen: vertikal */
  .viax-flow{flex-direction:column;align-items:center;gap:3.1rem}
  .viax-flow li{flex:none}
  .viax-flow li + li::before{top:-2.65rem;left:50%;width:36px;height:22px;margin:0 0 0 -18px;transform:rotate(90deg)}
  /* Datenaustausch: Knoten links, Aggregation als hohe Spalte rechts, Pfeile horizontal */
  .viax-exchange{grid-template-columns:minmax(0,1fr) 104px;column-gap:.5rem}
  .viax-exchange__nodes{display:flex;flex-direction:column;gap:.9rem;grid-column:1;grid-row:1}
  .viax-exchange__node{flex-direction:row;align-items:stretch}
  .viax-exchange__card{flex:1;min-width:0}
  .viax-exchange__links{flex-direction:column;gap:.4rem;height:auto;justify-content:center;width:34px;flex:none}
  .viax-exchange__links i.send{transform:rotate(-90deg)}
  .viax-exchange__links i.back{transform:rotate(90deg)}
  .viax-exchange__hub{grid-column:2;grid-row:1;flex-direction:column;padding:.8rem .4rem;font-size:.95rem;writing-mode:horizontal-tb;text-align:center}
  .viax-legend i.send{transform:rotate(-90deg)}.viax-legend i.back{transform:rotate(90deg)}
  .viax-case-end{display:flex;flex-direction:column;gap:1rem}
  .viax-case-end__title{margin-top:1rem}
  .viax-case-end__teasers{display:flex;flex-direction:column;gap:1rem}
  .viax-case-cta .viax-button{width:100%}
}
/* ================= Sehr schmal <=360 px: Austauschdiagramm einspaltig ================= */
@media (max-width:360px){
  .viax-exchange{grid-template-columns:minmax(0,1fr)}
  .viax-exchange__nodes{grid-row:auto}
  .viax-exchange__node{flex-direction:column}
  .viax-exchange__links{flex-direction:row;width:auto;justify-content:center;gap:1.4rem}
  .viax-exchange__links i.send{transform:none}.viax-exchange__links i.back{transform:none}
  .viax-exchange__hub{grid-column:1;grid-row:auto;margin-top:.6rem;flex-direction:row;padding:.9rem}
  .viax-legend i.send{transform:none}.viax-legend i.back{transform:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
