/* Supplied Kai materials, scoped strictly to the eight station interiors. */
#zusammenspiel .story-station:has(>.kai-station-copy){display:grid!important;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:36px!important;align-items:center;box-sizing:border-box}
#zusammenspiel .kai-station-copy{min-width:0}
#zusammenspiel .kai-station-copy .kai-overline{display:block;font:600 var(--type-meta,12px)/1.4 var(--era-sans);letter-spacing:.13em;color:#425b40;margin:0 0 18px}
#zusammenspiel .kai-station-copy .kai-title{display:block!important;font:400 clamp(32px,3.1vw,46px)/1.06 var(--era-serif)!important;letter-spacing:-.03em;margin:0 0 24px;max-width:17ch;text-wrap:balance}
#zusammenspiel .kai-station-copy .kai-voice{font:400 18px/1.5 var(--era-sans);color:#244533;max-width:38ch;margin:0 0 22px}
#zusammenspiel .kai-station-copy .kai-outcome{font:400 15px/1.5 var(--era-sans);color:#304a37;max-width:42ch;margin:0 0 16px;padding-top:14px;border-top:1px solid #adbeaa}
#zusammenspiel .kai-outcome>span{display:block;font-size:var(--type-meta,12px);letter-spacing:.06em;text-transform:uppercase;color:#466045;margin-bottom:4px;font-weight:600}
#zusammenspiel .kai-open{margin:0 0 8px;padding:6px 0;min-height:48px;text-align:left}
#zusammenspiel .kai-offers{display:flex;flex-wrap:wrap;gap:0 18px;align-items:center}
#zusammenspiel .kai-offers>a{display:inline-flex!important;min-height:44px;font-size:var(--type-fussnote,15px);line-height:1.35}
#zusammenspiel .kai-station-visual{min-width:0;width:100%}
#zusammenspiel .kai-sheet{display:block;width:100%;margin:0}
#zusammenspiel .kai-sheet img{position:static;display:block;width:100%!important;height:auto!important;max-height:none;object-fit:contain!important;aspect-ratio:16/9;border:0;box-sizing:border-box}
#zusammenspiel .kai-sheet figcaption{font:400 12px/1.5 var(--era-sans);color:#3b543e;margin:12px 0 0}
#zusammenspiel .kai-context-note{font:400 12px/1.5 var(--era-sans);color:#3b543e;margin:12px 0 0;max-width:70ch}
#zusammenspiel .kai-mobile-photo,#zusammenspiel .kai-mobile-example,#zusammenspiel .kai-mobile-label,#zusammenspiel .kai-station-copy~.kai-context-note{display:none}
@media(min-width:701px) and (max-height:800px){
 #zusammenspiel .kai-station-copy .kai-overline{margin-bottom:10px}
 #zusammenspiel .kai-station-copy .kai-title{font-size:32px!important;margin-bottom:16px}
 #zusammenspiel .kai-station-copy .kai-voice{font-size:16px;line-height:1.4;margin-bottom:12px}
 #zusammenspiel .kai-station-copy .kai-outcome{font-size:var(--type-fussnote,15px);line-height:1.4;padding-top:10px;margin-bottom:8px}
 /* Constrain the complete 16:9 sheet, not the image height inside a wider box. */
 #zusammenspiel .kai-sheet{max-width:calc(340px * 16 / 9)}
}
@media(max-width:700px){
 #zusammenspiel .story-station:has(>.kai-station-copy){display:flex!important;flex-direction:column;justify-content:center;gap:6px!important;padding:10px 22px!important}
 #zusammenspiel .kai-station-copy{display:flex;flex-direction:column;align-items:stretch;width:100%!important}
 #zusammenspiel .kai-station-copy .kai-overline{display:none}
 #zusammenspiel .kai-station-copy .kai-title{font-size:28px!important;line-height:1.05!important;margin:0 0 10px;max-width:24ch}
 #zusammenspiel .kai-mobile-photo{display:flex;flex-direction:column;align-items:flex-start;gap:3px;margin:0 0 10px}
 #zusammenspiel .kai-mobile-photo img{display:block;width:156px!important;height:auto!important;aspect-ratio:auto;object-fit:contain!important;max-width:100%;max-height:none}
 #zusammenspiel .kai-mobile-photo>span{font:600 var(--type-meta,12px)/1.4 var(--era-sans);color:#36533b}
 #zusammenspiel .kai-station-copy .kai-voice{font-size:15px;line-height:1.4;max-width:none;margin:0 0 10px}
 #zusammenspiel .kai-station-copy .kai-outcome{font-size:var(--type-fussnote,15px);line-height:1.4;margin:0 0 10px;padding-top:8px;max-width:none}
 #zusammenspiel .kai-outcome>span{font-size:var(--type-meta,12px);margin-bottom:2px;font-weight:600}
 #zusammenspiel .kai-mobile-example{display:block;margin:0 0 6px}
 #zusammenspiel .kai-mini-record{border-left:2px solid #739573;padding:2px 0 2px 10px}
 #zusammenspiel .kai-mini-title{display:block;font:500 11px/1.3 var(--era-sans);color:#36533b}
 #zusammenspiel .kai-mini-record>p{font:400 14px/1.4 var(--era-sans);margin:4px 0 0;color:#234531}
 #zusammenspiel .kai-mini-chat{display:flex;flex-direction:column;gap:5px}
 #zusammenspiel .kai-mini-bubble{box-sizing:border-box;padding:7px 10px;margin:0;max-width:90%;font:400 14px/1.35 var(--era-sans);background:#fffdf8;color:#244533;border-radius:9px 9px 9px 0;align-self:flex-start}
 #zusammenspiel .kai-mini-bubble.customer{align-self:flex-end;background:#d5efc7;border-radius:9px 9px 0 9px}
 #zusammenspiel .kai-mini-bubble small{display:block;text-align:right;font-size:var(--type-fussnote,15px);color:#46604a}
 #zusammenspiel .kai-station-visual{display:none}
 #zusammenspiel .kai-open{font-size:var(--type-fussnote,15px)!important;min-height:44px;margin:0;padding:3px 0}
 #zusammenspiel .kai-open .story-control-icon{width:34px;height:34px;flex-basis:34px}
 #zusammenspiel .kai-offers{gap:0 12px}
 #zusammenspiel .kai-offers>a{font-size:var(--type-fussnote,15px)!important;min-height:44px;line-height:1.3;gap:8px}
 #zusammenspiel .kai-offers .story-control-icon{display:none}
 #zusammenspiel .kai-mobile-label{display:block;font:400 11px/1.4 var(--era-sans);color:#3b543e;margin:0}
 #zusammenspiel .kai-station-copy~.kai-context-note{display:block;font-size:11px;line-height:1.4;margin:0}
}
@media(max-width:700px) and (max-height:780px){
 #zusammenspiel .kai-station-copy .kai-title{font-size:25px!important;margin-bottom:7px}
 #zusammenspiel .kai-mobile-photo{margin-bottom:7px}
 #zusammenspiel .kai-mobile-photo img{width:116px!important}
 #zusammenspiel .kai-mobile-photo>span{display:none}
 #zusammenspiel .kai-station-copy .kai-voice{font-size:14px;margin-bottom:7px}
 #zusammenspiel .kai-station-copy .kai-outcome{font-size:var(--type-fussnote,15px);margin-bottom:7px;padding-top:5px}
 #zusammenspiel .kai-mini-bubble{padding:5px 8px;font-size:13px}
 #zusammenspiel .kai-mini-record>p{font-size:13px}
}
/* With motion off the page can give each portrait and explanation their full space. */
@media(max-width:700px){
 #zusammenspiel .story-journey:not(.story-horizontal):not(.story-rail) .kai-mobile-photo img{width:min(100%,300px)!important}
 #zusammenspiel .story-journey:not(.story-horizontal):not(.story-rail) .story-station:has(>.kai-station-copy){padding-block:38px!important}
}

/* Keep the eight readings on one upper edge while the existing track travels in X.
   Each article keeps its natural height; static/reduced and native rail are unchanged. */
#zusammenspiel .story-horizontal .story-station:has(>.kai-station-copy){align-self:flex-start;align-content:start;align-items:start}
@media(max-width:700px){
 #zusammenspiel .story-horizontal .story-station:has(>.kai-station-copy){justify-content:flex-start}
 /* Two full lines reserve the same heading space before every mobile portrait. */
 #zusammenspiel .story-horizontal .kai-station-copy .kai-title{min-height:2.1em}
}

/* Keep every real offer link in the reading window on shorter desktop screens.
   Only decorative circles become smaller; each link retains a 44px hit area. */
@media(min-width:701px) and (max-height:800px){
 #zusammenspiel .story-horizontal .kai-station-copy :is(.kai-open,.kai-offers>a){min-height:44px!important;padding-block:4px!important;gap:10px!important;font-size:14px!important;line-height:1.35}
 #zusammenspiel .story-horizontal .kai-station-copy :is(.kai-open,.kai-offers>a)>.story-control-icon{width:34px;height:34px;flex-basis:34px;font-size:20px}
}
@media(min-width:701px) and (max-height:680px){
 #zusammenspiel .story-horizontal .story-station:has(>.kai-station-copy){grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px!important;padding:8px 28px!important}
 #zusammenspiel .story-horizontal .kai-station-copy .kai-overline{margin-bottom:6px}
 #zusammenspiel .story-horizontal .kai-station-copy .kai-title{font-size:clamp(26px,4.1svh,28px)!important;max-width:none;margin-bottom:8px}
 #zusammenspiel .story-horizontal .kai-station-copy .kai-voice{font-size:14px;line-height:1.4;max-width:none;margin-bottom:7px}
 #zusammenspiel .story-horizontal .kai-station-copy .kai-outcome{font-size:13px;line-height:1.35;max-width:none;padding-top:5px;margin-bottom:6px}
 #zusammenspiel .story-horizontal .kai-outcome>span{line-height:1.35;margin-bottom:2px}
 #zusammenspiel .story-horizontal .kai-open{margin-bottom:4px}
 #zusammenspiel .story-horizontal .kai-offers{gap:0 12px}
 #zusammenspiel .story-horizontal .kai-station-copy .kai-offers>a{font-size:13px!important}
 #zusammenspiel .story-horizontal .kai-sheet{max-width:calc(min(300px,100svh - 330px) * 16 / 9)}
 #zusammenspiel .story-horizontal .kai-sheet figcaption,#zusammenspiel .story-horizontal .kai-context-note{font-size:12px;line-height:1.4;margin-top:8px}
}
/* A single shared edge distinguishes adjacent stations during sideways travel. */
#zusammenspiel .story-horizontal .story-station:has(>.kai-station-copy):not(:first-child){border-inline-start:2px solid #637e70}
