/* A source marker, not a layout element. Must not change the homepage flow. */
body.page-id-52 .dk-home-photo-film-slot {
  display: contents !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  border: 0 !important;
}
/* Never draw the film in its Gutenberg source location on the public homepage. */
body.page-id-52 .dk-home-photo-film-slot .dk-native-film__strip {
  visibility: hidden !important;
}
/* The film is moved into the actual runtime-created rotating photo section. */
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: visible !important;
  pointer-events: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  isolation: auto !important;
}
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay .dk-native-film__strip {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  visibility: visible !important;
  width: var(--dk-native-film-width) !important;
  height: var(--dk-native-film-height) !important;
  opacity: var(--dk-native-film-opacity) !important;
  
  pointer-events: none !important;
  background: transparent !important;
  z-index: auto !important;
}
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-align="center"] .dk-native-film__strip {
  left: 50% !important;
  margin-left: calc(var(--dk-native-film-width) / -2) !important;
}
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-align="right"] .dk-native-film__strip {
  left: auto !important;
  right: 0 !important;
}
/* Image slides are opaque; layers below images can be invisible by design. */
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-layer="behind-all"] { z-index: -1 !important; }
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-layer="behind-images"] { z-index: 0 !important; }
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-layer="behind-text"] { z-index: 2 !important; }
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-layer="front-all"] { z-index: 8 !important; }
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay,
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay * { pointer-events: none !important; }


/* V8.4 photo-specific geometry, aligned with the editor photo reference. */
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay .dk-native-film__strip {
  transform: translate(var(--dk-native-film-x), var(--dk-native-film-y))
    rotate(var(--dk-native-film-rotation, 0deg))
    scale(var(--dk-native-film-flip-x, 1), var(--dk-native-film-flip-y, 1)) !important;
  transform-origin: center center !important;
}
body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-align="custom"] .dk-native-film__strip {
  left: var(--dk-native-film-anchor-x) !important;
  top: var(--dk-native-film-anchor-y) !important;
  right: auto !important;
  margin-left: calc(var(--dk-native-film-width) / -2) !important;
  margin-top: calc(var(--dk-native-film-height) / -2) !important;
}
@media (max-width: 767px) {
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-hidden="1"] .dk-native-film__strip {
    display:none !important;
  }
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-override="1"] .dk-native-film__strip {
    width: var(--dk-native-film-mobile-width) !important;
    height: var(--dk-native-film-mobile-height) !important;
    left: 0 !important; top: 0 !important; right: auto !important;
    margin-left:0 !important; margin-top:0 !important;
    opacity: var(--dk-native-film-mobile-opacity) !important;
    transform: translate(var(--dk-native-film-mobile-x), var(--dk-native-film-mobile-y))
      rotate(var(--dk-native-film-mobile-rotation, 0deg))
      scale(var(--dk-native-film-flip-x, 1), var(--dk-native-film-flip-y, 1)) !important;
  }
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-override="1"] .dk-native-film__frame {
    transform: scale(var(--dk-native-film-mobile-scale)) !important;
  }
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="center"] .dk-native-film__strip {
    left:50% !important;
    margin-left:calc(var(--dk-native-film-mobile-width) / -2) !important;
  }
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="right"] .dk-native-film__strip {
    left:auto !important; right:0 !important;
  }
  body.page-id-52 .dk-home1150-photo > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="custom"] .dk-native-film__strip {
    left:var(--dk-native-film-mobile-anchor-x) !important;
    top:var(--dk-native-film-mobile-anchor-y) !important;
    right:auto !important;
    margin-left:calc(var(--dk-native-film-mobile-width) / -2) !important;
    margin-top:calc(var(--dk-native-film-mobile-height) / -2) !important;
  }
}


/* V8.6.1: portal declarations ONLY. Original photo-scoped rules untouched. */
body.page-id-52 > .dk-home-photo-film-overlay {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: visible !important;
  pointer-events: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  isolation: auto !important;
}
body.page-id-52 > .dk-home-photo-film-overlay .dk-native-film__strip {
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  visibility: visible !important;
  width: var(--dk-native-film-width) !important;
  height: var(--dk-native-film-height) !important;
  opacity: var(--dk-native-film-opacity) !important;
  
  pointer-events: none !important;
  background: transparent !important;
  z-index: auto !important;
}
body.page-id-52 > .dk-home-photo-film-overlay[data-film-align="center"] .dk-native-film__strip {
  left: 50% !important;
  margin-left: calc(var(--dk-native-film-width) / -2) !important;
}
body.page-id-52 > .dk-home-photo-film-overlay[data-film-align="right"] .dk-native-film__strip {
  left: auto !important;
  right: 0 !important;
}
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="behind-all"] { z-index: -1 !important; }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="behind-images"] { z-index: 0 !important; }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="behind-text"] { z-index: 2 !important; }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="front-all"] { z-index: 8 !important; }
body.page-id-52 > .dk-home-photo-film-overlay,
body.page-id-52 > .dk-home-photo-film-overlay * { pointer-events: none !important; }
body.page-id-52 > .dk-home-photo-film-overlay .dk-native-film__strip {
  transform: translate(var(--dk-native-film-x), var(--dk-native-film-y))
    rotate(var(--dk-native-film-rotation, 0deg))
    scale(var(--dk-native-film-flip-x, 1), var(--dk-native-film-flip-y, 1)) !important;
  transform-origin: center center !important;
}
body.page-id-52 > .dk-home-photo-film-overlay[data-film-align="custom"] .dk-native-film__strip {
  left: var(--dk-native-film-anchor-x) !important;
  top: var(--dk-native-film-anchor-y) !important;
  right: auto !important;
  margin-left: calc(var(--dk-native-film-width) / -2) !important;
  margin-top: calc(var(--dk-native-film-height) / -2) !important;
}
@media  (max-width: 767px)  {
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-hidden="1"] .dk-native-film__strip {
    display:none !important;
  }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-override="1"] .dk-native-film__strip {
    width: var(--dk-native-film-mobile-width) !important;
    height: var(--dk-native-film-mobile-height) !important;
    left: 0 !important; top: 0 !important; right: auto !important;
    margin-left:0 !important; margin-top:0 !important;
    opacity: var(--dk-native-film-mobile-opacity) !important;
    transform: translate(var(--dk-native-film-mobile-x), var(--dk-native-film-mobile-y))
      rotate(var(--dk-native-film-mobile-rotation, 0deg))
      scale(var(--dk-native-film-flip-x, 1), var(--dk-native-film-flip-y, 1)) !important;
  }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-override="1"] .dk-native-film__frame {
    transform: scale(var(--dk-native-film-mobile-scale)) !important;
  }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="center"] .dk-native-film__strip {
    left:50% !important;
    margin-left:calc(var(--dk-native-film-mobile-width) / -2) !important;
  }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="right"] .dk-native-film__strip {
    left:auto !important; right:0 !important;
  }
body.page-id-52 > .dk-home-photo-film-overlay[data-film-mobile-override="1"][data-film-mobile-align="custom"] .dk-native-film__strip {
    left:var(--dk-native-film-mobile-anchor-x) !important;
    top:var(--dk-native-film-mobile-anchor-y) !important;
    right:auto !important;
    margin-left:calc(var(--dk-native-film-mobile-width) / -2) !important;
    margin-top:calc(var(--dk-native-film-mobile-height) / -2) !important;
  }
}

/* V8.6.1 — FRONT-ALL ONLY: independent viewport overlay outside the clipped photos.
 * The film strip keeps all existing CSS variables and desktop/mobile positioning.
 * JS tracks the source photo rectangle; pointer events pass through to the player.
 */
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="front-all"] {
  inset: auto !important;
  z-index: 2147483000 !important;
  isolation: auto !important;
  overflow: visible !important;
  pointer-events: none !important;
  background: transparent !important;
}
body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="front-all"] * {
  pointer-events: none !important;
}

/* Scoped mobile touch correction: film front-all follows its photograph, not the screen. 
 * Host width/height/top/left already follow the real photo from existing front.js.
 * Clip only the portal's mobile touch rendering at the source photo bounds. */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {
  body.page-id-52 > .dk-home-photo-film-overlay[data-film-layer="front-all"] {
    position: absolute !important;
    overflow: hidden !important;
  }
}
