/*
 * Maker Verified VC Layout Tools
 * Salient/WPBakery contained-content rows with edge-bleeding column backgrounds.
 */

html,
body,
#ajax-content-wrap {
  overflow-x: clip;
}

html, body {
  overflow-y: visible;
}

body #ajax-content-wrap {
  overflow-y: visible !important;
}

body #ajax-content-wrap .kit-vc-edge-row,
body #ajax-content-wrap .kit-vc-edge-row > .row_col_wrap_12,
body #ajax-content-wrap .kit-vc-edge-row > .row_col_wrap_12_inner {
  overflow: visible !important;
}

body #ajax-content-wrap .kit-vc-edge-row > .row_col_wrap_12 > .wpb_column,
body #ajax-content-wrap .kit-vc-edge-row > .row_col_wrap_12_inner > .wpb_column {
  --kit-vc-edge-left: 0px;
  --kit-vc-edge-right: 0px;
  --kit-vc-edge-bg-color: transparent;
  position: relative !important;
  isolation: isolate;
  overflow: visible !important;
}

/*
 * Explicit stacking order:
 *   0 = extended background color
 *   1 = native background image
 *   2 = native overlay
 *  10 = headings, text, buttons, and all normal VC content
 */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner {
  position: relative !important;
  z-index: 1 !important;
  height: 100%;
  isolation: isolate;
}

/* Keep every normal content wrapper above colors, images, and overlays. */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .wpb_wrapper,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .nectar-sticky-column-css,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .vc_column-inner > :not(.column-image-bg-wrap):not(.column-bg-overlay-wrap):not(.border-wrap) {
  position: relative;
  z-index: 10 !important;
  overflow: visible !important;
}

/* Extend native column background colors without changing column/content width. */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 0;
  pointer-events: none;
  background-color: var(--kit-vc-edge-bg-color);
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left::before {
  left: calc(var(--kit-vc-edge-left) * -1);
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right::before {
  right: calc(var(--kit-vc-edge-right) * -1);
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both::before {
  left: calc(var(--kit-vc-edge-left) * -1);
  right: calc(var(--kit-vc-edge-right) * -1);
}

/* Salient native image and overlay wrappers. */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  height: 100% !important;
  max-width: none !important;
  overflow: hidden !important;
  pointer-events: none;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-image-bg-wrap {
  z-index: 1 !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
  z-index: 2 !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .n-sticky > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .vc_column-inner > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
  left: calc(var(--kit-vc-edge-left) * -1) !important;
  right: 0 !important;
  width: auto !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .n-sticky > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .vc_column-inner > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
  left: 0 !important;
  right: calc(var(--kit-vc-edge-right) * -1) !important;
  width: auto !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .n-sticky > .vc_column-inner > .column-image-bg-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .vc_column-inner > .column-bg-overlay-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
  left: calc(var(--kit-vc-edge-left) * -1) !important;
  right: calc(var(--kit-vc-edge-right) * -1) !important;
  width: auto !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .column-image-bg-wrap > .inner-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .column-image-bg-wrap .column-image-bg,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .column-bg-overlay-wrap > .inner-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .column-bg-overlay {
  width: 100% !important;
  height: 100% !important;
}

/* Keep Salient's background-position and cover controls authoritative. */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column[data-bg-cover="true"] .column-image-bg,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .column-inner[data-bg-cover="true"] .column-image-bg {
  background-size: cover !important;
  background-repeat: no-repeat !important;
}

/*
 * Normal WPBakery/Salient Single Image fallback.
 * If the column does not use a native column background image, the frontend
 * script marks the first direct Single Image element as the bleed surface.
 */
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target {
  display: block !important;
  max-width: none !important;
  overflow: visible !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-left .kit-vc-edge-media-target {
  margin-left: calc(var(--kit-vc-edge-left) * -1) !important;
  width: calc(100% + var(--kit-vc-edge-left)) !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-right .kit-vc-edge-media-target {
  margin-right: calc(var(--kit-vc-edge-right) * -1) !important;
  width: calc(100% + var(--kit-vc-edge-right)) !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-active-both .kit-vc-edge-media-target {
  margin-left: calc(var(--kit-vc-edge-left) * -1) !important;
  margin-right: calc(var(--kit-vc-edge-right) * -1) !important;
  width: calc(100% + var(--kit-vc-edge-left) + var(--kit-vc-edge-right)) !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target .wpb_wrapper,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target .vc_figure,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target .vc_single_image-wrapper,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target > .inner,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target .hover-wrap,
body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target .hover-wrap-inner {
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
}

body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target img {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
}

/* When Salient stacks columns, each active background spans the full viewport. */
@media only screen and (max-width: 999px) {
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column .kit-vc-edge-media-target {
    margin-left: calc(var(--kit-vc-edge-left) * -1) !important;
    margin-right: calc(var(--kit-vc-edge-right) * -1) !important;
    width: calc(100% + var(--kit-vc-edge-left) + var(--kit-vc-edge-right)) !important;
  }

  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column::before {
    left: calc(var(--kit-vc-edge-left) * -1);
    right: calc(var(--kit-vc-edge-right) * -1);
  }

  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-image-bg-wrap,
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-image-bg-wrap,
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-image-bg-wrap,
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .column-bg-overlay-wrap,
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .vc_column-inner > .column-bg-overlay-wrap,
  body #ajax-content-wrap .kit-vc-edge-row .kit-vc-edge-column > .n-sticky > .vc_column-inner > .column-bg-overlay-wrap {
    left: calc(var(--kit-vc-edge-left) * -1) !important;
    right: calc(var(--kit-vc-edge-right) * -1) !important;
    width: auto !important;
  }
}

/* =========================================================
 * Row SVG overlay layer
 * Sits above Salient's native row background image/color and below content.
 * ========================================================= */
body #ajax-content-wrap .kit-vc-svg-overlay-host {
  position: relative !important;
  isolation: isolate;
}

body #ajax-content-wrap .kit-vc-svg-overlay-host > .row-bg-wrap {
  z-index: 0 !important;
}

body #ajax-content-wrap .kit-vc-svg-overlay-host > .kit-vc-svg-overlay-layer {
  position: absolute !important;
  z-index: 1 !important;
  max-width: none !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

body #ajax-content-wrap .kit-vc-svg-overlay-host > .row_col_wrap_12,
body #ajax-content-wrap .kit-vc-svg-overlay-host > .row_col_wrap_12_inner {
  position: relative !important;
  z-index: 2 !important;
}

body #ajax-content-wrap .kit-vc-svg-overlay-host .kit-vc-svg-overlay-shape {
  position: absolute !important;
  left: var(--kit-vc-svg-left, -10%) !important;
  top: var(--kit-vc-svg-top, -18%) !important;
  width: var(--kit-vc-svg-width, 0px) !important;
  height: var(--kit-vc-svg-height, 0px) !important;
  max-width: none !important;
  background: var(--kit-vc-svg-color, #a6a6a6) !important;
  opacity: var(--kit-vc-svg-opacity, 0.1) !important;
  transform: translate(var(--kit-vc-svg-translate-x, 0%), var(--kit-vc-svg-translate-y, 0%)) rotate(var(--kit-vc-svg-rotation, 0deg)) !important;
  transform-origin: center center !important;
  -webkit-mask-image: var(--kit-vc-svg-url) !important;
  mask-image: var(--kit-vc-svg-url) !important;
  -webkit-mask-repeat: no-repeat !important;
  mask-repeat: no-repeat !important;
  -webkit-mask-position: center !important;
  mask-position: center !important;
  -webkit-mask-size: 100% 100% !important;
  mask-size: 100% 100% !important;
  pointer-events: none !important;
}

/* =========================================================
 * True shape-following shadow for Salient Image elements.
 * Uses drop-shadow so transparent SVG/PNG artwork casts the shadow.
 * ========================================================= */
body #ajax-content-wrap .img-with-aniamtion-wrap.kit-vc-shape-shadow,
body #ajax-content-wrap .img-with-animation-wrap.kit-vc-shape-shadow,
body #ajax-content-wrap .kit-vc-shape-shadow .inner,
body #ajax-content-wrap .kit-vc-shape-shadow .hover-wrap,
body #ajax-content-wrap .kit-vc-shape-shadow .hover-wrap-inner {
  overflow: visible !important;
}

body #ajax-content-wrap .img-with-aniamtion-wrap.kit-vc-shape-shadow img,
body #ajax-content-wrap .img-with-animation-wrap.kit-vc-shape-shadow img,
body #ajax-content-wrap .kit-vc-shape-shadow img {
  filter: drop-shadow(
    var(--kit-vc-shadow-x, 0px)
    var(--kit-vc-shadow-y, 8px)
    var(--kit-vc-shadow-blur, 18px)
    var(--kit-vc-shadow-color, rgba(0, 0, 0, 0.2))
  ) !important;
}


/* Overall SVG/transparent image opacity. Kept separate from the shadow opacity control. */
body #ajax-content-wrap .img-with-aniamtion-wrap.kit-vc-svg-image-settings img,
body #ajax-content-wrap .img-with-animation-wrap.kit-vc-svg-image-settings img,
body #ajax-content-wrap .kit-vc-svg-image-settings img {
  opacity: var(--kit-vc-image-opacity, 1) !important;
}

/* =========================================================
   MAKER VERIFIED SCROLL REVEAL HERO 2.11.0

   Desktop structure:
   1. Title content over the image
   2. Stationary raised panel on the lower-left
   3. Editable action/content area over the lower-right image

   The full-width reveal sheet rises behind column three. Column two sets the
   reveal color through its normal Visual Composer background color, and the
   same color is applied to the extended panel and moving sheet. The reveal is
   visible only on the right side. Tablet and mobile hide column three and stack the
   column-two panel below the image.
   ========================================================= */

body #ajax-content-wrap .mv-vc-scroll-reveal-row {
  --mv-vc-scroll-min-height-d: 70vh;
  --mv-vc-scroll-title-width-d: 50%;
  --mv-vc-scroll-cutout-width-d: 28%;
  --mv-vc-scroll-panel-content-width-d: 100%;
  --mv-vc-scroll-overlap-d: 145px;
  --mv-vc-scroll-landing-bottom-d: 64px;
  --mv-vc-scroll-min-height-t: 500px;
  --mv-vc-scroll-title-width-t: 100%;
  --mv-vc-scroll-cutout-width-t: 100%;
  --mv-vc-scroll-panel-content-width-t: 100%;
  --mv-vc-scroll-overlap-t: 0px;
  --mv-vc-scroll-landing-bottom-t: 48px;
  --mv-vc-scroll-min-height-p: 420px;
  --mv-vc-scroll-title-width-p: 100%;
  --mv-vc-scroll-cutout-width-p: 100%;
  --mv-vc-scroll-panel-content-width-p: 100%;
  --mv-vc-scroll-overlap-p: 0px;
  --mv-vc-scroll-landing-bottom-p: 34px;
  --mv-vc-scroll-reveal-distance: 520px;
  --mv-vc-scroll-panel-bg-color: #fff;
  --mv-vc-scroll-min-height: var(--mv-vc-scroll-min-height-d);
  --mv-vc-scroll-title-width: var(--mv-vc-scroll-title-width-d);
  --mv-vc-scroll-cutout-width: var(--mv-vc-scroll-cutout-width-d);
  --mv-vc-scroll-panel-content-width: var(--mv-vc-scroll-panel-content-width-d);
  --mv-vc-scroll-overlap: var(--mv-vc-scroll-overlap-d);
  --mv-vc-scroll-effective-overlap: var(--mv-vc-scroll-overlap-d);
  --mv-vc-scroll-landing-bottom: var(--mv-vc-scroll-landing-bottom-d);
  --mv-vc-scroll-sheet-rise: 0px;
  --mv-vc-scroll-action-open-color: #fff;
  --mv-vc-scroll-action-closed-color: #4e5057;
  --mv-vc-scroll-action-current-color: #fff;
  --mv-vc-scroll-reveal-progress: 0;
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  height: auto !important;
  min-height: calc(var(--mv-vc-scroll-min-height) + var(--mv-vc-scroll-landing-bottom)) !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  isolation: isolate;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row.vc_row-flex,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.vc_row-o-equal-height {
  display: block !important;
  align-items: initial !important;
}

/* Salient's native photograph stays locked to the selected hero height. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row-bg-wrap,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row-bg-overlay,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .video-color-overlay,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .nectar-video-wrap {
  position: absolute !important;
  z-index: 0 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  left: 50% !important;
  width: 100vw !important;
  height: var(--mv-vc-scroll-min-height) !important;
  min-height: var(--mv-vc-scroll-min-height) !important;
  max-height: var(--mv-vc-scroll-min-height) !important;
  margin: 0 0 0 -50vw !important;
  overflow: hidden !important;
  transform: none !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row-bg-wrap .row-bg,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row-bg-wrap .row-bg-overlay,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row-bg-wrap .inner-wrap {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  background-size: cover !important;
}

/* Moving sheet across the lower-right cutout. Its color mirrors Column 2's
   normal Visual Composer background color. Keeping it out from under the
   translucent left panel prevents two glass tints from stacking. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .mv-vc-scroll-reveal-sheet {
  position: absolute !important;
  z-index: 5 !important;
  top: calc(var(--mv-vc-scroll-min-height) - var(--mv-vc-scroll-sheet-rise)) !important;
  right: calc(50% - 50vw) !important;
  bottom: 0 !important;
  left: calc(100% - var(--mv-vc-scroll-cutout-width)) !important;
  width: auto !important;
  height: auto !important;
  background-color: var(--mv-vc-scroll-panel-bg-color, #fff) !important;
  background-color: color-mix(in srgb, var(--mv-vc-scroll-panel-bg-color, #fff) 60%, transparent) !important;
  -webkit-backdrop-filter: blur(16px) saturate(135%);
  backdrop-filter: blur(16px) saturate(135%);
  pointer-events: none !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row_col_wrap_12,
body #ajax-content-wrap .mv-vc-scroll-reveal-row > .row_col_wrap_12_inner {
  position: relative !important;
  z-index: 6 !important;
  box-sizing: border-box !important;
  height: auto !important;
  min-height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  overflow: visible !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-layout,
body #ajax-content-wrap .mv-vc-scroll-reveal-row :is(.row_col_wrap_12, .row_col_wrap_12_inner):has(> .mv-vc-scroll-reveal-title) {
  position: relative !important;
  z-index: 6 !important;
  display: grid !important;
  grid-template-columns: minmax(0, calc(100% - var(--mv-vc-scroll-cutout-width))) minmax(0, var(--mv-vc-scroll-cutout-width)) !important;
  grid-template-rows: calc(var(--mv-vc-scroll-min-height) - var(--mv-vc-scroll-overlap)) auto !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: auto !important;
  min-height: calc(var(--mv-vc-scroll-min-height) + var(--mv-vc-scroll-landing-bottom)) !important;
  margin: 0 !important;
  padding-top: 0 !important;
  padding-bottom: var(--mv-vc-scroll-landing-bottom) !important;
  overflow: visible !important;
  align-items: stretch !important;
}

/* Column 1: title over the image. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title {
  position: absolute !important;
  z-index: 8 !important;
  top: 0 !important;
  right: auto !important;
  bottom: auto !important;
  left: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  float: none !important;
  box-sizing: border-box !important;
  width: var(--mv-vc-scroll-title-width) !important;
  max-width: var(--mv-vc-scroll-title-width) !important;
  min-width: 0 !important;
  height: calc(var(--mv-vc-scroll-min-height) - var(--mv-vc-scroll-overlap)) !important;
  min-height: calc(var(--mv-vc-scroll-min-height) - var(--mv-vc-scroll-overlap)) !important;
  margin: 0 !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: transparent !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title > .n-sticky,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title .wpb_wrapper {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  transform: none !important;
}

/* Column 2: stationary raised panel on the left. Its native Visual Composer
   background color is the source of truth for the extended panel and sheet. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel {
  position: relative !important;
  z-index: 10 !important;
  grid-column: 1 !important;
  grid-row: 2 !important;
  align-self: stretch !important;
  float: none !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: var(--mv-vc-scroll-overlap) !important;
  margin: 0 !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  isolation: isolate;
  overflow: visible !important;
}

/* The panel color is rendered by the glass layer below. Neutralize Salient's
   original opaque column background so it cannot hide the photograph being
   sampled by backdrop-filter. Content remains fully opaque above the layer. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .n-sticky,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .n-sticky > .vc_column-inner {
  background-color: transparent !important;
}

/* Salient paints the selected column color on this nested overlay at opacity 1.
   Hide only the copy inside scroll-reveal panels so it cannot cover the glass. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel .column-bg-overlay-wrap,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel .column-bg-overlay {
  opacity: 0 !important;
  background-color: transparent !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: auto;
  width: 100vw;
  background-color: var(--mv-vc-scroll-panel-bg-color, #fff);
  background-color: color-mix(in srgb, var(--mv-vc-scroll-panel-bg-color, #fff) 60%, transparent);
  -webkit-backdrop-filter: blur(16px) saturate(135%);
  backdrop-filter: blur(16px) saturate(135%);
  border-top-right-radius: inherit;
  pointer-events: none;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .n-sticky,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .n-sticky > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel .wpb_wrapper {
  position: relative !important;
  z-index: 1 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-wrap: anywhere;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel .wpb_wrapper > * {
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* Narrow only the panel content frame. Its selected Column 2 background still
   bleeds to the left browser edge. A narrower frame remains anchored to the contained
   left edge instead of being pushed toward the cutout. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel > .n-sticky > .vc_column-inner {
  width: var(--mv-vc-scroll-panel-content-width) !important;
  max-width: var(--mv-vc-scroll-panel-content-width) !important;
  margin-left: 0 !important;
  margin-right: auto !important;
}

/* Column 3: editable content over the lower-right photograph. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action {
  position: relative !important;
  z-index: 8 !important;
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: stretch !important;
  float: none !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: var(--mv-vc-scroll-overlap) !important;
  margin: 0 !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  overflow: hidden !important;
  background: transparent !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action > .n-sticky,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action > .n-sticky > .vc_column-inner,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action .wpb_wrapper {
  position: relative !important;
  z-index: 8 !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  overflow: visible !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action .wpb_wrapper > *,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h1,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h2,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h3,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h4,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h5,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action h6,
body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action p {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row .nectar-next-section-wrap {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Optional foreground transition for editable column three. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .wpb_wrapper,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .wpb_wrapper > *,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h1,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h2,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h3,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h4,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h5,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action h6,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action p,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action a,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action span,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action i {
  color: var(--mv-vc-scroll-action-current-color) !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action svg,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action svg * {
  color: var(--mv-vc-scroll-action-current-color) !important;
  stroke: var(--mv-vc-scroll-action-current-color) !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .nectar-next-section-wrap *,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .nectar-next-section-wrap *::before,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .nectar-next-section-wrap *::after {
  color: var(--mv-vc-scroll-action-current-color) !important;
  border-color: var(--mv-vc-scroll-action-current-color) !important;
}

body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .nectar-next-section-wrap *::before,
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-action-color-yes .mv-vc-scroll-reveal-action .nectar-next-section-wrap *::after {
  background-color: var(--mv-vc-scroll-action-current-color) !important;
}

/* Desktop title placement and optional panel-to-hero-bottom alignment. */
@media only screen and (min-width: 1001px) {
  /* 70vh becomes too shallow on common 1280x720/768 Windows laptops and at
     browser/display scaling. Preserve the selected desktop height, but never
     let hero-bottom mode start below the proven 620px desktop floor. */
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero {
    --mv-vc-scroll-min-height: max(var(--mv-vc-scroll-min-height-d), 620px);
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-center .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-center .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-center .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-center .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: center !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-bottom .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-bottom .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-bottom .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-d-bottom .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: flex-end !important;
  }

  /* In hero-bottom mode row two sizes itself from the panel. The hero height is
     a minimum, not a hard ceiling: row one keeps the title's intrinsic height
     and the grid expands when a short viewport, Windows font metrics, browser
     zoom, or longer panel copy would otherwise squeeze/cover the H1. */
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero .mv-vc-scroll-reveal-layout,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero :is(.row_col_wrap_12, .row_col_wrap_12_inner):has(> .mv-vc-scroll-reveal-title) {
    grid-template-rows: minmax(max-content, 1fr) auto var(--mv-vc-scroll-landing-bottom) !important;
    height: auto !important;
    min-height: calc(var(--mv-vc-scroll-min-height) + var(--mv-vc-scroll-landing-bottom)) !important;
    padding-bottom: 0 !important;
  }

  /* When the content forces the hero taller than the configured 70vh (or other
     selected minimum), extend the photograph to the actual hero bottom instead
     of leaving it locked to the shorter configured value. */
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero > .row-bg-wrap,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero > .row-bg-overlay,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero > .video-color-overlay,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero > .nectar-video-wrap {
    top: 0 !important;
    bottom: var(--mv-vc-scroll-landing-bottom) !important;
    height: auto !important;
    min-height: var(--mv-vc-scroll-min-height) !important;
    max-height: none !important;
  }

  /* The reveal sheet must start at the real (possibly expanded) hero bottom. */
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero > .mv-vc-scroll-reveal-sheet {
    top: calc(100% - var(--mv-vc-scroll-landing-bottom) - var(--mv-vc-scroll-sheet-rise)) !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero .mv-vc-scroll-reveal-title {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: stretch !important;
    width: var(--mv-vc-scroll-title-width) !important;
    max-width: var(--mv-vc-scroll-title-width) !important;
    height: auto !important;
    min-height: 0 !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero .mv-vc-scroll-reveal-panel,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-panel-bottom-hero .mv-vc-scroll-reveal-action {
    grid-row: 2 !important;
    min-height: 0 !important;
  }
}

/* Tablet and mobile: keep the text panel, hide the arrow/reveal column. */
@media only screen and (max-width: 1000px) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row {
    --mv-vc-scroll-min-height: var(--mv-vc-scroll-min-height-t);
    --mv-vc-scroll-title-width: 100%;
    --mv-vc-scroll-cutout-width: 100%;
    --mv-vc-scroll-panel-content-width: var(--mv-vc-scroll-panel-content-width-t);
    --mv-vc-scroll-overlap: 0px;
    --mv-vc-scroll-landing-bottom: var(--mv-vc-scroll-landing-bottom-t);
    --mv-vc-scroll-sheet-rise: 0px;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row > .mv-vc-scroll-reveal-sheet {
    display: none !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-layout,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row :is(.row_col_wrap_12, .row_col_wrap_12_inner):has(> .mv-vc-scroll-reveal-title) {
    grid-template-columns: 100% !important;
    grid-template-rows: var(--mv-vc-scroll-min-height) auto !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-title {
    width: 100% !important;
    max-width: 100% !important;
    height: var(--mv-vc-scroll-min-height) !important;
    min-height: var(--mv-vc-scroll-min-height) !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-action {
    display: none !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row .mv-vc-scroll-reveal-panel::before {
    right: auto;
    left: calc(50% - 50vw);
    width: 100vw;
  }
}

@media only screen and (max-width: 690px) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row {
    --mv-vc-scroll-min-height: var(--mv-vc-scroll-min-height-p);
    --mv-vc-scroll-landing-bottom: var(--mv-vc-scroll-landing-bottom-p);
    --mv-vc-scroll-panel-content-width: var(--mv-vc-scroll-panel-content-width-p);
  }
}

/* Tablet and phone title placement. */
@media only screen and (min-width: 691px) and (max-width: 1000px) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-center .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-center .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-center .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-center .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: center !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: flex-end !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-t-bottom .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    padding-bottom: 34px !important;
  }
}

@media only screen and (max-width: 690px) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-center .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-center .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-center .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-center .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: center !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title > .n-sticky,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    justify-content: flex-end !important;
  }

  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title > .vc_column-inner,
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-scroll-title-p-bottom .mv-vc-scroll-reveal-title > .n-sticky > .vc_column-inner {
    padding-bottom: 28px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row {
    --mv-vc-scroll-sheet-rise: var(--mv-vc-scroll-effective-overlap) !important;
  }
}


/* ==========================================================
   Maker Verified editorial image reveal

   The wrapper is the fixed frame. The image begins slightly oversized inside
   that clipped frame and settles to its natural scale when it enters view.
   The neutral gray remains visible while the image fades in. Because the
   class is written server-side, the initial state exists before JavaScript
   observes the element, preventing an unstyled first frame.
   ========================================================== */
body #ajax-content-wrap .mv-vc-editorial-reveal {
  position: relative !important;
  overflow: hidden !important;
  background-color: #f5f5f7 !important;
  isolation: isolate;
}

body #ajax-content-wrap .mv-vc-editorial-reveal img {
  display: block;
  opacity: 0;
  transform: scale(1.075);
  transform-origin: 50% 50%;
  transition:
    transform 1600ms cubic-bezier(0.22, 0.61, 0.36, 1),
    opacity 900ms ease-out;
  will-change: transform, opacity;
  backface-visibility: hidden;
}

body #ajax-content-wrap .mv-vc-editorial-reveal.mv-vc-editorial-reveal-in img {
  opacity: 1;
  transform: scale(1);
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-editorial-reveal img,
  body #ajax-content-wrap .mv-vc-editorial-reveal.mv-vc-editorial-reveal-in img {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}


/* ==========================================================
   Maker Verified editorial row-background reveal

   This is the companion treatment for native Salient row backgrounds.
   The row itself is the fixed frame. Only Salient's background layer fades
   in and settles from a slight overscale; row content never moves.
   ========================================================== */
body #ajax-content-wrap .mv-vc-editorial-bg-reveal {
  position: relative;
}

/* The gray placeholder is the actual Salient background frame, not the row.
 * This matters for full-bleed layouts: the frame is already browser-edge width
 * while the photograph is still hidden, so there is nothing to stretch when
 * the reveal starts. */
body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap {
  overflow: hidden !important;
  opacity: 1 !important;
  background-color: #f5f5f7 !important;
}

body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap .row-bg {
  opacity: 0;
  scale: 1.075;
  transform-origin: 50% 50%;
  transition:
    scale 1600ms cubic-bezier(0.22, 0.61, 0.36, 1),
    opacity 900ms ease-out;
  will-change: scale, opacity;
  backface-visibility: hidden;
}

body #ajax-content-wrap .mv-vc-editorial-bg-reveal.mv-vc-editorial-reveal-in > .row-bg-wrap .row-bg {
  opacity: 1;
  scale: 1;
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap {
    opacity: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }

  body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap .row-bg,
  body #ajax-content-wrap .mv-vc-editorial-bg-reveal.mv-vc-editorial-reveal-in > .row-bg-wrap .row-bg {
    opacity: 1 !important;
    scale: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* ==========================================================
   Maker Verified editorial inline-row reveal 2.16.0

   Row-level reveal no longer depends on rewriting nested image shortcodes.
   The opted-in VC row is marked before render, and these selectors target
   Salient/WPBakery image wrappers directly. This keeps the first frame styled
   before JavaScript runs and lets the row itself be the IntersectionObserver
   target.
   ========================================================== */
body #ajax-content-wrap .mv-vc-editorial-inline-reveal :is(
  .img-with-aniamtion-wrap,
  .img-with-animation-wrap,
  .wpb_single_image,
  .vc_single_image-wrapper
) {
  overflow: hidden !important;
  background-color: #f5f5f7 !important;
}

body #ajax-content-wrap .mv-vc-editorial-inline-reveal :is(
  .img-with-aniamtion-wrap,
  .img-with-animation-wrap,
  .wpb_single_image,
  .vc_single_image-wrapper
) img {
  display: block;
  opacity: 0;
  scale: 1.075;
  transform-origin: 50% 50%;
  transition:
    scale 1600ms cubic-bezier(0.22, 0.61, 0.36, 1),
    opacity 900ms ease-out;
  will-change: scale, opacity;
  backface-visibility: hidden;
}

body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in :is(
  .img-with-aniamtion-wrap,
  .img-with-animation-wrap,
  .wpb_single_image,
  .vc_single_image-wrapper
) img {
  opacity: 1;
  scale: 1;
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal :is(
    .img-with-aniamtion-wrap,
    .img-with-animation-wrap,
    .wpb_single_image,
    .vc_single_image-wrapper
  ) img,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in :is(
    .img-with-aniamtion-wrap,
    .img-with-animation-wrap,
    .wpb_single_image,
    .vc_single_image-wrapper
  ) img {
    opacity: 1 !important;
    scale: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }
}


/* ==========================================================
   Maker Verified editorial column-background reveal

   Salient often stores editorial photography on a VC column rather than on
   the row itself or as an <img>. In that markup the photograph lives in
   .column-image-bg-wrap / .column-image-bg. Rows using the VH Image reveal
   now animate those native column background layers with the same gray-frame,
   fade, and scale-down treatment as row backgrounds and inline images.
   ========================================================== */
body #ajax-content-wrap .mv-vc-editorial-inline-reveal .column-image-bg-wrap {
  overflow: hidden !important;
  background-color: #f5f5f7 !important;
}

body #ajax-content-wrap .mv-vc-editorial-inline-reveal .column-image-bg-wrap .column-image-bg {
  opacity: 0 !important;
  scale: 1.075 !important;
  transform-origin: 50% 50%;
  transition:
    scale 1600ms cubic-bezier(0.22, 0.61, 0.36, 1),
    opacity 900ms ease-out !important;
  will-change: scale, opacity;
  backface-visibility: hidden;
}

body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in .column-image-bg-wrap .column-image-bg {
  opacity: 1 !important;
  scale: 1 !important;
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal .column-image-bg-wrap .column-image-bg,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in .column-image-bg-wrap .column-image-bg {
    opacity: 1 !important;
    scale: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }
}

/* ==========================================================
   First-paint reveal geometry 2.20.1

   Edge geometry is now present in the server-rendered column classes. Before
   JavaScript measures the exact gutter, the ACTUAL gray media frame is safely
   over-extended past the appropriate browser edge and clipped by the page.
   The later pixel measurement therefore refines invisible overflow instead of
   changing anything the visitor can see.
   ========================================================== */
body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-left :is(.column-image-bg-wrap, .column-bg-overlay-wrap) {
  left: -100vw !important;
  right: 0 !important;
  width: auto !important;
}

body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-right :is(.column-image-bg-wrap, .column-bg-overlay-wrap) {
  left: 0 !important;
  right: -100vw !important;
  width: auto !important;
}

body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-both :is(.column-image-bg-wrap, .column-bg-overlay-wrap) {
  left: -100vw !important;
  right: -100vw !important;
  width: auto !important;
}

/* Inline-image fallback for edge-bleed reveal rows. */
body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-left:not(:has(.column-image-bg-wrap)) :is(.wpb_single_image, .img-with-aniamtion-wrap, .img-with-animation-wrap) {
  margin-left: -100vw !important;
  width: calc(100% + 100vw) !important;
  max-width: none !important;
}

body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-right:not(:has(.column-image-bg-wrap)) :is(.wpb_single_image, .img-with-aniamtion-wrap, .img-with-animation-wrap) {
  margin-right: -100vw !important;
  width: calc(100% + 100vw) !important;
  max-width: none !important;
}

body #ajax-content-wrap .mv-vc-editorial-row-reveal.kit-vc-edge-row .wpb_column.kit-vc-edge-column:not([data-kit-vc-edge-ready="1"]).kit-vc-edge-active-both:not(:has(.column-image-bg-wrap)) :is(.wpb_single_image, .img-with-aniamtion-wrap, .img-with-animation-wrap) {
  margin-left: -100vw !important;
  margin-right: -100vw !important;
  width: calc(100% + 200vw) !important;
  max-width: none !important;
}

/* Above-the-fold scroll-reveal heroes get a calmer entrance. The observer may
   mark them ready immediately because they already occupy most of the viewport,
   but the photograph waits briefly before fading and settling. Body reveals
   keep the existing 80% trigger and timing. */
body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-editorial-bg-reveal > .row-bg-wrap .row-bg {
  transition:
    scale 2000ms cubic-bezier(0.22, 0.61, 0.36, 1) 400ms,
    opacity 1300ms ease-out 400ms;
}

@media (prefers-reduced-motion: reduce) {
  body #ajax-content-wrap .mv-vc-scroll-reveal-row.mv-vc-editorial-bg-reveal > .row-bg-wrap .row-bg {
    transition: none !important;
  }
}

/* ==========================================================
   Editorial reveal: DESKTOP ONLY — v2.22.3

   Maker Verified's existing responsive system treats 1000px and below as
   tablet/mobile. At those widths the editorial reveal is not merely shortened:
   it is completely bypassed. Images and background layers render immediately
   in their normal final state with no gray reveal frame, fade, scale, delay,
   transition, or will-change hint.
   ========================================================== */
@media only screen and (max-width: 1000px) {

  body #ajax-content-wrap .mv-vc-editorial-reveal,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal :is(
    .img-with-aniamtion-wrap,
    .img-with-animation-wrap,
    .wpb_single_image,
    .vc_single_image-wrapper
  ),
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal .column-image-bg-wrap,
  body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap {
    background-color: transparent !important;
  }

  body #ajax-content-wrap .mv-vc-editorial-reveal img,
  body #ajax-content-wrap .mv-vc-editorial-reveal.mv-vc-editorial-reveal-in img,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal :is(
    .img-with-aniamtion-wrap,
    .img-with-animation-wrap,
    .wpb_single_image,
    .vc_single_image-wrapper
  ) img,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in :is(
    .img-with-aniamtion-wrap,
    .img-with-animation-wrap,
    .wpb_single_image,
    .vc_single_image-wrapper
  ) img {
    opacity: 1 !important;
    transform: none !important;
    scale: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }

  body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap,
  body #ajax-content-wrap .mv-vc-editorial-bg-reveal.mv-vc-editorial-reveal-in > .row-bg-wrap {
    opacity: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }

  body #ajax-content-wrap .mv-vc-editorial-bg-reveal > .row-bg-wrap .row-bg,
  body #ajax-content-wrap .mv-vc-editorial-bg-reveal.mv-vc-editorial-reveal-in > .row-bg-wrap .row-bg,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal .column-image-bg-wrap .column-image-bg,
  body #ajax-content-wrap .mv-vc-editorial-inline-reveal.mv-vc-editorial-reveal-in .column-image-bg-wrap .column-image-bg {
    opacity: 1 !important;
    transform: none !important;
    scale: 1 !important;
    transition: none !important;
    will-change: auto !important;
  }
}
