/* Background editing touches only the two photographic layers.
   Leave hero effects, masks, floating astronaut, orbit and CTA text untouched. */
#orbit-stage img.hero-real-background.dcv-custom-hero-background{
  object-fit:var(--dcv-hero-fit,cover)!important;
  max-height:none!important;
  transform-origin:center center!important;
}
#contact.cta.dcv-custom-cta-background{isolation:isolate!important;overflow:hidden!important}
#contact.cta.dcv-custom-cta-background>.dcv-editable-cta-photo{
  position:absolute!important;inset:0!important;z-index:0!important;
  overflow:hidden!important;pointer-events:none!important;
  border:0!important;border-radius:inherit!important;margin:0!important;padding:0!important;
  width:100%!important;height:100%!important;min-width:0!important;
  display:block!important;transform:none!important;box-shadow:none!important;
}
#contact.cta.dcv-custom-cta-background>.dcv-editable-cta-photo img{
  width:100%!important;height:100%!important;display:block!important;
  transform-origin:center center!important;max-width:none!important;max-height:none!important;
}
/* The overlay stays the exact existing gradient. Only its image is isolated
   below it, so zoom and pan cannot zoom or reposition the mask. */
#contact.cta.dcv-custom-cta-background::before{
  background-image:linear-gradient(90deg,rgba(5,3,18,.28),rgba(8,4,25,.39))!important;
  z-index:1!important;
}
#contact.cta.dcv-custom-cta-background>.cta-icon{z-index:2!important}
#contact.cta.dcv-custom-cta-background>div:not(.cta-icon):not(.dcv-editable-cta-photo),
#contact.cta.dcv-custom-cta-background>.btn{z-index:3!important}
@media(max-width:760px){
  #contact.cta.dcv-custom-cta-background::before{
    background-image:linear-gradient(90deg,rgba(5,3,18,.27),rgba(8,4,25,.37))!important;
  }
}

/* Owner-adjustable photo shading. At 100% these selectors are never used;
   the originally approved gradients, filters, crops and motion remain intact.
   No filter is applied to the astronaut, orbit rings, stars, or CTA copy. */
#orbit-stage img.hero-real-background.dcv-hero-mask-adjusted{
  filter:saturate(1.08) contrast(1.04) brightness(var(--dcv-hero-shade-desktop,.96))!important;
}
@media(max-width:760px){
  #orbit-stage img.hero-real-background.dcv-hero-mask-adjusted{
    filter:saturate(1.1) contrast(1.04) brightness(var(--dcv-hero-shade-mobile,.94))!important;
  }
}
/* Original photo is still painted by its existing ::before layer when no
   upload/crop override is active; its gradient is adjustable independently. */
#contact.cta.dcv-cta-mask-adjusted:not(.dcv-custom-cta-background)::before{
  background-image:linear-gradient(90deg,
    rgba(5,3,18,var(--dcv-mask-left,.28)),
    rgba(8,4,25,var(--dcv-mask-right,.39))),
    url('/assets/dcv-astronaut-space-scene-full.webp?v=1')!important;
}
/* Custom image already has its own clipped <img>; never tint/scale that image
   directly, and never add a second copy of the scene. */
#contact.cta.dcv-cta-mask-adjusted.dcv-custom-cta-background::before{
  background-image:linear-gradient(90deg,
    rgba(5,3,18,var(--dcv-mask-left,.28)),
    rgba(8,4,25,var(--dcv-mask-right,.39)))!important;
}
@media(max-width:760px){
  #contact.cta.dcv-cta-mask-adjusted:not(.dcv-custom-cta-background)::before{
    background-image:linear-gradient(90deg,
      rgba(5,3,18,var(--dcv-mask-mobile-left,.27)),
      rgba(8,4,25,var(--dcv-mask-mobile-right,.37))),
      url('/assets/dcv-astronaut-space-scene-full.webp?v=1')!important;
  }
  #contact.cta.dcv-cta-mask-adjusted.dcv-custom-cta-background::before{
    background-image:linear-gradient(90deg,
      rgba(5,3,18,var(--dcv-mask-mobile-left,.27)),
      rgba(8,4,25,var(--dcv-mask-mobile-right,.37)))!important;
  }
}

/* The old CTA art-direction rule set ::before to 65% width / 220% height.
   The photo editor's overlay inherited those dimensions, making a sharp
   vertical line and leaving the right side of the photo unshaded.
   Force the overlay to cover the ENTIRE rounded CTA at every viewport,
   including custom crops and original photos. Do not alter saved settings. */
#contact.cta::before{
  position:absolute!important;
  inset:0!important;
  top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100%!important;height:100%!important;
  box-sizing:border-box!important;
  border-radius:inherit!important;
  background-repeat:no-repeat!important;
  background-size:cover,cover!important;
  pointer-events:none!important;
}
/* Delicate silhouette-following glow; transparent astronaut source means
   drop-shadow follows the cutout, not the card's rectangular bounds. */
#contact.cta > .cta-icon {
  /* Light core plus owner-selectable colored halo, following transparency. */
  filter:drop-shadow(0 0 2px rgba(254,251,255,.74))
         drop-shadow(0 0 6px color-mix(in srgb, var(--dcv-cta-glow-color, #E8D9FF) 68%, transparent))
         drop-shadow(0 0 13px color-mix(in srgb, var(--dcv-cta-glow-color, #E8D9FF) 39%, transparent))!important;
}
