/* Page 02 only: master identity, companion alphabet and responsive connections. */
#platforms .series-family{position:relative;margin-top:32px}
#platforms .series-parent{position:relative;text-align:center;z-index:1}
#platforms .series-parent>img{display:block;width:min(48%,470px);height:auto;margin:0 auto}
#platforms .series-parent>p{font:500 11px/1.5 'IBM Plex Mono',monospace;letter-spacing:.22em;color:#b8c7d8;margin:18px 0 0}
#platforms .series-branches{display:block;width:100%;height:76px;overflow:visible;margin-top:16px}
#platforms .series-branches g{fill:none;stroke:#e9ad50;stroke-width:.85;opacity:.48;vector-effect:non-scaling-stroke}
#platforms .worlds{margin-top:0;position:relative}
#platforms .world{min-height:310px;position:relative}
#platforms .world:before{background:radial-gradient(ellipse at 50% 0,rgba(242,181,68,.11),transparent 65%);opacity:1}
#platforms .world .number:after{content:'';position:absolute;top:0;left:50%;width:5px;height:5px;border-radius:50%;background:#eabd73;transform:translate(-50%,-50%);box-shadow:0 0 12px #e9ad5066}
#platforms .series-identity{display:flex;align-items:center;justify-content:center;width:100%;height:126px;flex:none;min-width:0;margin:12px 0 8px;position:relative}
#platforms .series-companion{display:block;width:auto;height:clamp(26px,2.6vw,39px);max-width:100%;object-fit:contain;flex:none}
#platforms .series-identity:after{content:'';position:absolute;bottom:19px;width:44px;height:1px;background:linear-gradient(90deg,transparent,#dca958,transparent);opacity:.65}
#platforms .world:hover .series-identity:after,#platforms .world:focus-visible .series-identity:after{width:72px;box-shadow:0 0 14px #f2b54455;transition:width .3s ease}
@media(min-width:701px) and (max-width:1000px){
 #platforms .series-branches{display:none}
 #platforms .series-parent:after{content:"";display:block;width:1px;height:30px;background:#e9ad5066;margin:16px auto 0}
 #platforms .worlds{grid-template-columns:repeat(3,minmax(0,1fr));border-top-color:#e9ad5055}
 #platforms .world{padding:15px 10px;min-height:310px}
 #platforms .series-companion{height:26px}
 #platforms .world .programme-description{font-size:15px}
}
@media(max-width:700px){
 /* Mobile only: one column, an internal rail gutter, and intrinsic artwork ratios. */
 #platforms{min-width:0}
 #platforms .section-label{gap:12px;flex-wrap:wrap}
 #platforms .split,#platforms .split>*{min-width:0;max-width:100%}
 #platforms h2{font-size:clamp(30px,8vw,42px);line-height:1.14;overflow-wrap:normal;text-wrap:balance}
 #platforms .lead{overflow-wrap:break-word}
 #platforms .series-family{width:100%;min-width:0;margin-top:28px}
 #platforms .series-parent>img{width:100%;max-width:330px;height:auto;object-fit:contain;margin-inline:auto}
 #platforms .series-parent>p{font-size:9px;letter-spacing:.15em;line-height:1.6;margin:14px 0 0;text-wrap:balance}
 #platforms .series-branches{display:none}
 #platforms .series-parent:after{content:'';display:block;height:24px;width:calc(50% - 10px);margin:16px 0 0 10px;border-top:1px solid #e9ad5066;border-left:1px solid #e9ad5066;border-top-left-radius:20px;box-sizing:border-box}
 #platforms .worlds{display:grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0;margin:0;padding:0;gap:12px;border:0;box-sizing:border-box;position:relative}
 #platforms .worlds:before{content:'';position:absolute;left:10px;top:0;bottom:0;width:1px;background:linear-gradient(#e9ad5066,#e9ad5022);pointer-events:none}
 #platforms .world,#platforms .world:first-child{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;grid-template-rows:auto 66px auto;gap:12px 8px;width:100%;min-width:0;min-height:0;margin:0;padding:20px 18px 20px 32px!important;box-sizing:border-box;border:1px solid #ffffff26;border-left:0;overflow:hidden;align-items:center}
 #platforms .world+.world{border-left:0;border-top:1px solid #ffffff26}
 #platforms .world:before{content:'';position:absolute;inset:auto;left:10px;top:27px;width:14px;height:1px;background:#e9ad5066;opacity:1;transform:none;z-index:0;pointer-events:none}
 #platforms .world:after{inset:0;pointer-events:none}
 #platforms .world .number{grid-column:1;grid-row:1;align-self:center;line-height:1;font-size:12px}
 #platforms .world .number:after{left:10px;top:27px;width:4px;height:4px;transform:translate(-50%,-50%);z-index:1}
 #platforms .series-identity{grid-column:1 / -1;grid-row:2;display:flex;align-items:center;justify-content:center;width:100%;min-width:0;height:66px;margin:0;padding:0;box-sizing:border-box}
 #platforms .series-companion{display:block;height:auto;max-width:100%;object-fit:contain;flex:0 1 auto}
 #platforms .world:nth-child(1) .series-companion{width:45.6px}
 #platforms .world:nth-child(2) .series-companion{width:162.6px}
 #platforms .world:nth-child(3) .series-companion{width:142.2px}
 #platforms .world:nth-child(4) .series-companion{width:154.2px}
 #platforms .world:nth-child(5) .series-companion{width:131.4px}
 #platforms .series-identity:after{bottom:2px;width:36px;pointer-events:none}
 #platforms .world .programme-description{grid-column:1 / -1;grid-row:3;min-width:0;width:100%;max-width:none;margin:0;font-size:16px;line-height:1.5;overflow-wrap:break-word;text-wrap:pretty}
 #platforms .world-arrow{grid-column:3;grid-row:1;align-self:center;justify-self:end;margin:0;padding:0;line-height:1}
}
