/* OneScene UX12 — Today hero ONLY: real location + upper-body actor composition.
   Does not change journey catalog, carousels, application runtime or mobile layout. */
@media (min-width:980px) {
  /* The source image is a portrait, not a 16:9 scene. The old CSS blurred that
     same portrait behind itself; UX12 replaces it with the program/story's
     existing editorial location art after an image load check. */
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media.ux12-scene-composed {
    position:absolute!important;inset:0!important;overflow:hidden!important;
    isolation:isolate;background:#15110f!important;
  }
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media.ux12-scene-composed::before {
    content:""!important;position:absolute!important;inset:-1%!important;
    background-image:var(--ux12-location)!important;
    background-position:center 49%!important;
    background-size:cover!important;background-repeat:no-repeat!important;
    filter:brightness(.76) saturate(.92) contrast(1.04)!important;
    transform:none!important;opacity:1!important;
    pointer-events:none!important;z-index:0!important;
  }
  /* Readability on the left; location remains clear and recognizable on right. */
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media.ux12-scene-composed::after {
    content:""!important;position:absolute!important;inset:0!important;
    background:linear-gradient(90deg,rgba(9,6,5,.96) 0%,rgba(9,6,5,.88) 27%,rgba(9,6,5,.63) 48%,rgba(9,6,5,.14) 77%,rgba(9,6,5,.05) 100%),linear-gradient(0deg,rgba(8,5,4,.36),transparent 48%)!important;
    z-index:1!important;pointer-events:none!important;
  }
  /* Upper-body crop like the journey hero: scale inside the fixed viewport.
     The bottom of the image is naturally clipped; do not stretch the face. */
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media.ux12-scene-composed > img.ss-today-hero-art {
    position:absolute!important;
    left:auto!important;right:-1%!important;top:-6%!important;bottom:auto!important;
    width:54%!important;max-width:54%!important;
    height:190%!important;max-height:none!important;
    object-fit:contain!important;object-position:center top!important;
    transform:none!important;transform-origin:center top!important;
    filter:brightness(.97) saturate(.97) drop-shadow(-16px 7px 17px rgba(0,0,0,.33))!important;
    -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%)!important;
    mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%)!important;
    z-index:2!important;opacity:1!important;
    pointer-events:none!important;
  }
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media.ux12-scene-composed > :is(.ss-today-hero-shade,.ss-today-hero-glow) {
    z-index:3!important;pointer-events:none!important;
  }
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero:hover > .ss-today-hero-media.ux12-scene-composed > img.ss-today-hero-art {
    transform:none!important;
  }

  /* Scenario cards already have a real scene photo + separate cutout. Keep
     their background intact and crop only the cutout, based on actor framing. */
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media > .ss-today-hero-visual > img.pv3-visual-card-foreground {
    left:auto!important;right:1%!important;top:-4%!important;bottom:auto!important;
    width:56%!important;max-width:56%!important;
    height:152%!important;max-height:none!important;
    object-fit:contain!important;object-position:center top!important;
    transform:none!important;transform-origin:center top!important;
    filter:brightness(.95) saturate(.96) drop-shadow(-12px 7px 16px rgba(0,0,0,.30))!important;
    opacity:1!important;
  }
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media > .ss-today-hero-visual > img.pv3-visual-card-foreground[data-r18-actor-frame="full"] {height:190%!important;}
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media > .ss-today-hero-visual > img.pv3-visual-card-foreground[data-r18-actor-frame="knee"] {height:160%!important;}
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media > .ss-today-hero-visual > img.pv3-visual-card-foreground[data-r18-actor-frame="waist"] {height:133%!important;}
  html body .pv3-root .ss-today-page[data-today-ui="canonical-v2418"][data-today-freeze="v2422"]
  .ss-today-hero > .ss-today-hero-media > .ss-today-hero-visual > img.pv3-visual-card-foreground[data-r18-actor-frame="chest"] {height:110%!important;}
}
