/* =========================================================
   V42 · Soft focus zoom reveal
   - Photos no longer travel sideways.
   - They fade in from white while starting enlarged + blurred.
   - They settle gently to their final size as focus becomes crisp.
   - On exit they dissolve back into white with a subtle soft-focus zoom.
   - Existing exaggerated text choreography from V41 is preserved.
   ========================================================= */

body.cinematic-home .cinema-scene{
  --v42-photo-scale:1.045;
  --v42-photo-opacity:1;
  --v42-photo-blur:0px;
  --v42-photo-brightness:1;
  --v42-overlay-opacity:.94;
  --v41-copy-opacity:1;
  overflow:hidden!important;
  background:#fff!important;
}

body.cinematic-home .cinema-sticky{
  background:#fff!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

/* Pure-white stage: transparency always reveals white, never a dark block. */
body.cinematic-home .cinema-media{
  inset:0!important;
  opacity:var(--v42-photo-opacity,1)!important;
  background:#fff!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:none!important;
  transition:none!important;
  overflow:hidden!important;
  will-change:opacity;
}

body.cinematic-home .cinema-media img{
  width:100%!important;
  height:100%!important;
  opacity:1!important;
  transform:translate3d(0,0,0) scale(var(--v42-photo-scale,1.045))!important;
  transform-origin:center center!important;
  filter:
    saturate(.96)
    contrast(1.01)
    brightness(var(--v42-photo-brightness,1))
    blur(var(--v42-photo-blur,0px))!important;
  transition:none!important;
  will-change:transform,filter;
  backface-visibility:hidden!important;
}

/* No directional wash: the image itself dissolves naturally into the white canvas. */
body.cinematic-home .cinema-media::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-4%!important;
  z-index:5!important;
  pointer-events:none!important;
  opacity:var(--v42-white-wash,0)!important;
  background:rgba(255,255,255,.96)!important;
  filter:blur(22px)!important;
  transform:none!important;
  transition:none!important;
}

/* Wide feathered perimeter prevents any visible rectangular photo edge. */
body.cinematic-home .cinema-media::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-2px!important;
  z-index:6!important;
  pointer-events:none!important;
  background:
    linear-gradient(90deg,
      #fff 0%,rgba(255,255,255,.96) 2.5%,rgba(255,255,255,.62) 6%,rgba(255,255,255,.18) 12%,rgba(255,255,255,0) 20%,
      rgba(255,255,255,0) 80%,rgba(255,255,255,.18) 88%,rgba(255,255,255,.62) 94%,rgba(255,255,255,.96) 97.5%,#fff 100%),
    linear-gradient(180deg,
      #fff 0%,rgba(255,255,255,.92) 3%,rgba(255,255,255,.48) 7%,rgba(255,255,255,.12) 13%,rgba(255,255,255,0) 20%,
      rgba(255,255,255,0) 80%,rgba(255,255,255,.15) 87%,rgba(255,255,255,.52) 93%,rgba(255,255,255,.92) 97%,#fff 100%)!important;
  box-shadow:none!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
}

/* Editorial/team section gets a broader merge toward the text side. */
body.cinematic-home .cinema-scene-white-blend .cinema-media::after{
  background:
    linear-gradient(90deg,
      #fff 0%,#fff 12%,rgba(255,255,255,.995) 21%,rgba(255,255,255,.92) 33%,
      rgba(255,255,255,.68) 45%,rgba(255,255,255,.34) 57%,rgba(255,255,255,.09) 68%,
      rgba(255,255,255,0) 77%,rgba(255,255,255,0) 88%,rgba(255,255,255,.34) 95%,#fff 100%),
    linear-gradient(180deg,
      #fff 0%,rgba(255,255,255,.90) 3%,rgba(255,255,255,.42) 8%,rgba(255,255,255,.10) 14%,rgba(255,255,255,0) 21%,
      rgba(255,255,255,0) 82%,rgba(255,255,255,.20) 90%,rgba(255,255,255,.72) 96%,#fff 100%)!important;
}

body.cinematic-home .cinema-overlay{
  opacity:var(--v42-overlay-opacity,.94)!important;
  transition:none!important;
  will-change:opacity;
}
body.cinematic-home .cinema-scene-white-blend .cinema-overlay{opacity:1!important}

/* ---------- Preserve V41 exaggerated typography ---------- */
body.cinematic-home .cinema-copy{
  opacity:var(--v41-copy-opacity,1)!important;
  transform:none!important;
  filter:none!important;
  transition:none!important;
  overflow:visible!important;
}

body.cinematic-home [data-cinema-line]{
  opacity:var(--v41-line-opacity,1)!important;
  transform:
    translate3d(var(--v41-line-x,0px),var(--v41-line-y,0px),0)
    scale(var(--v41-line-scale,1))!important;
  filter:blur(var(--v41-line-blur,0px))!important;
  transition:none!important;
  will-change:transform,opacity,filter;
  backface-visibility:hidden!important;
}

body.cinematic-home .cinema-copy h1 [data-cinema-line],
body.cinematic-home .cinema-copy h2 [data-cinema-line]{
  overflow:visible!important;
  transform-origin:left center!important;
  letter-spacing:var(--v41-line-track,0em)!important;
}
body.cinematic-home .cinema-content-right .cinema-copy h1 [data-cinema-line],
body.cinematic-home .cinema-content-right .cinema-copy h2 [data-cinema-line]{transform-origin:right center!important}
body.cinematic-home .cinema-copy-centered h1 [data-cinema-line],
body.cinematic-home .cinema-copy-centered h2 [data-cinema-line]{transform-origin:center center!important}

body.cinematic-home .cinema-copy h1,
body.cinematic-home .cinema-copy h2{overflow:visible!important}

body.cinematic-home .cinema-scene-white-blend.is-v36-visible [data-cinema-line],
body.cinematic-home .cinema-scene.is-v36-visible [data-cinema-line]{
  opacity:var(--v41-line-opacity,1)!important;
  transform:
    translate3d(var(--v41-line-x,0px),var(--v41-line-y,0px),0)
    scale(var(--v41-line-scale,1))!important;
  filter:blur(var(--v41-line-blur,0px))!important;
}

body.cinematic-home .hero-facts{
  opacity:var(--v41-facts-opacity,1)!important;
  transform:translate3d(0,var(--v41-facts-y,0px),0) scale(var(--v41-facts-scale,1))!important;
  filter:blur(var(--v41-facts-blur,0px))!important;
  transition:none!important;
  will-change:transform,opacity,filter;
}

body.cinematic-home .cinema-scene-white-blend .cinema-copy h2,
body.cinematic-home .cinema-scene-white-blend .cinema-copy p,
body.cinematic-home .cinema-scene-white-blend .cinema-kicker,
body.cinematic-home .cinema-scene-white-blend .cinema-text-link{text-shadow:none!important}

@media(max-width:900px){
  body.cinematic-home .cinema-media::before{filter:blur(16px)!important}
  body.cinematic-home .cinema-copy h1 [data-cinema-line],
  body.cinematic-home .cinema-copy h2 [data-cinema-line]{transform-origin:left center!important}
  body.cinematic-home .cinema-copy-centered h1 [data-cinema-line],
  body.cinematic-home .cinema-copy-centered h2 [data-cinema-line]{transform-origin:center center!important}
}

@media(max-width:600px){
  body.cinematic-home .cinema-media::after{
    background:
      linear-gradient(90deg,#fff 0%,rgba(255,255,255,.72) 7%,rgba(255,255,255,.16) 15%,rgba(255,255,255,0) 23%,rgba(255,255,255,0) 77%,rgba(255,255,255,.16) 85%,rgba(255,255,255,.72) 93%,#fff 100%),
      linear-gradient(180deg,#fff 0%,rgba(255,255,255,.72) 6%,rgba(255,255,255,.16) 14%,rgba(255,255,255,0) 22%,rgba(255,255,255,0) 78%,rgba(255,255,255,.16) 87%,rgba(255,255,255,.72) 94%,#fff 100%)!important;
  }
}

@media(prefers-reduced-motion:reduce){
  body.cinematic-home .cinema-media,
  body.cinematic-home .cinema-media img,
  body.cinematic-home [data-cinema-line],
  body.cinematic-home .hero-facts{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
    transition:none!important;
    will-change:auto!important;
  }
  body.cinematic-home .cinema-media::before{display:none!important}
}
