/* Background boxes for the two approved image-overlay captions. */
.buus-contrast-box{box-sizing:border-box;background:rgba(3,20,48,.92);color:#fff!important;border:1px solid rgba(174,217,255,.28);border-radius:12px;box-shadow:0 8px 24px rgba(0,10,30,.18);text-shadow:none!important}
.sector-hero .buus-contrast-tagline{padding:15px 18px;max-width:220px;line-height:1.4}
.sector-hero .buus-contrast-tagline:before{display:none}
.mobility-problem .problem-heading .buus-contrast-summary{display:inline-block;width:fit-content;max-width:100%;padding:12px 18px;line-height:1.5;color:#fff;margin-top:20px}
@media(max-width:700px){.mobility-problem .problem-heading .buus-contrast-summary{padding:12px 14px;border-radius:10px}.sector-hero .buus-contrast-tagline{max-width:min(220px,100%)}}
/* Mirror the side portraits around the exact center of the platform illustration. */
.platform-diagram{margin-left:auto;margin-right:auto}
.platform-diagram .platform-art{left:50%;transform:translateX(-50%)}
.platform-diagram .cloud-caption{left:50%;transform:translateX(-50%);margin-left:0;margin-right:0}
.platform-diagram .actors.left{left:0;right:auto}
.platform-diagram .actors.right{right:0;left:auto}
.platform-diagram .actors .actor{width:100%;box-sizing:border-box}
.platform-diagram .actors.right .actor{flex-direction:row-reverse;text-align:right}
@media(max-width:700px){.platform-diagram .actors.right .actor{text-align:right}.platform-diagram .actors.right .actor>img{margin-left:auto;margin-right:0}.platform-diagram .actors.right .actor>span{margin-left:auto;margin-right:0}}

/* Keep the platform caption below the artwork, never over its information. */
.pl-hero .pl-hero-visual .pl-hero-visual-label{position:static;inset:auto;display:flex;width:fit-content;max-width:calc(100% - 24px);margin:14px 12px 10px;padding:12px 16px;box-sizing:border-box;backdrop-filter:none;transform:none}
.pl-hero .pl-hero-visual .pl-hero-visual-label span{min-width:0;overflow-wrap:anywhere}
