.painting-case .plyr{--plyr-color-main:#1f365b;--plyr-font-family:Roboto,Arial,sans-serif;--plyr-control-radius:3px;--plyr-video-control-background-hover:#1f365b;--plyr-menu-radius:3px;border-radius:2px;isolation:isolate}
.painting-case .plyr button{box-shadow:none;text-shadow:none;margin:0;min-width:0}
.painting-case .plyr__control--overlaid{padding:20px;background:#1f365b;color:#fff}
.painting-case .plyr__control--overlaid:hover{background:#294873}
.painting-case .plyr__controls{padding:30px 15px 12px;gap:5px}
.painting-case .plyr__control svg{fill:currentColor}
.painting-case .plyr__poster{background-size:contain;background-color:#151515}
@media(max-width:500px){.painting-case .plyr__controls{padding:25px 8px 8px;gap:2px}.painting-case .plyr__volume{min-width:0;max-width:70px}}
/* Shared hover/tap previews retain the original video aspect ratio. */
.painting-case .cnn-motion__toggle{display:block;position:relative;width:100%;padding:0;border:0;border-radius:2px;overflow:hidden;background:#101114;cursor:pointer;color:#fff;text-align:left}
.painting-case .cnn-motion__toggle video{display:block;width:100%;height:auto}
.painting-case .cnn-motion__hint{position:absolute;bottom:15px;left:15px;right:15px;display:flex;justify-content:space-between;font:12px/1.4 'IBM Plex Mono',monospace;text-transform:uppercase;text-shadow:0 1px 8px #000;transition:opacity .25s}
.painting-case .cnn-motion__toggle[aria-pressed=true] .cnn-motion__hint{opacity:0}
.painting-case .cnn-motion__toggle:focus-visible{outline:2px solid #1f365b;outline-offset:5px}
.js-case-motion .painting-case h1{visibility:hidden}
.case-type-char{opacity:0}
@media(prefers-reduced-motion:reduce){.js-case-motion .painting-case h1{visibility:visible}.case-type-char{opacity:1}.painting-case .cnn-motion__hint{transition:none}}

/* One live-project invitation across every case study. */
.painting-case .case-primary-cta{display:block;margin-top:36px;padding:30px 34px;border:0;border-radius:2px;background:#e5edf6;color:#1f365b;text-decoration:none;font-weight:400;transition:background-color 250ms ease}
.case-primary-cta__label{display:block;margin-bottom:16px;font:12px/1.5 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.04em}
.case-primary-cta__title{display:flex;align-items:center;justify-content:space-between;gap:28px;font-size:clamp(25px,3.2vw,42px);line-height:1.2}
.painting-case .case-primary-cta svg{flex:none;width:30px;height:30px;transition:transform 250ms ease}
.painting-case .case-primary-cta:hover,.painting-case .case-primary-cta:focus-visible{background:#d5e3f2;color:#1f365b}
.painting-case .case-primary-cta:hover svg{transform:translate(3px,-3px)}
.painting-case .case-primary-cta:focus-visible{outline:2px solid #1f365b;outline-offset:5px}
@media(max-width:700px){.painting-case .case-primary-cta{padding:24px 22px}.case-primary-cta__title{gap:18px}.painting-case .case-primary-cta svg{width:25px;height:25px}}
@media(prefers-reduced-motion:reduce){.painting-case .case-primary-cta,.painting-case .case-primary-cta svg{transition:none}}
.painting-case .painting-case__closing{max-width:none}
.painting-case .painting-case__closing>p:not(:last-child){max-width:760px}

/* Case-study typography follows Work; metadata remains an annotation layer. */
body.case-type-system .painting-case,body.case-type-system .painting-case *{font-family:Roboto,Arial,sans-serif!important}
body.case-type-system .painting-case h1,body.case-type-system .painting-case h1 *,body.case-type-system .painting-case h2{font-family:'Roboto Slab',Georgia,serif!important;font-weight:400}
body.case-type-system .work-case__label,body.case-type-system .painting-case__facts dt,body.case-type-system .painting-case figcaption,body.case-type-system .painting-case figcaption *,body.case-type-system .cnn-motion__hint,body.case-type-system .cnn-motion__hint *,body.case-type-system .case-primary-cta__label{font-family:'IBM Plex Mono',monospace!important}
.painting-case .cnn-motion__hint{inset:auto auto 12px 12px;display:inline-flex;align-items:center;gap:14px;padding:8px 11px;background:#f6f6f6;color:#1f365b;text-shadow:none;border-radius:2px;font-size:11px}
.painting-case .case-image-placeholder{border:1px dashed #c6ced8;border-radius:2px;background:#eef0f2}
.case-image-placeholder>div{aspect-ratio:16/9}
