/* Nova Dragon Scroll Hero v0.3.9 */


.elementor-widget-nova_dragon_scroll_hero,
.elementor-widget-nova-dragon-scroll-hero {
  --nova-dsh-min-height: var(--nova-dsh-min-height, 100vh);
}

.nova-dsh {
  --nova-dsh-min-height: 100vh;
  --nova-dsh-frame-width: 1700px;
  --nova-dsh-frame-x: 50%;
  --nova-dsh-frame-y: 50%;
  --nova-dsh-frame-opacity: 1;
  --nova-dsh-mobile-frame-opacity: .58;
  --nova-dsh-mobile-frame-blur: 0px;
  --nova-dsh-mobile-scrim-opacity: .35;
  --nova-dsh-vignette-opacity: .35;
  --nova-dsh-spark-opacity: .8;
  --nova-dsh-progress: 0;
  --nova-dsh-pin-height: 260vh;
  --nova-dsh-sticky-top: 0px;
  --nova-dsh-sticky-height: 100vh;
  position: relative;
  isolation: isolate;
  min-height: var(--nova-dsh-min-height);
  overflow: hidden;
  color: #fff;
  background: #090306;
}

.nova-dsh--background-layer {
  min-height: 100%;
  height: 100%;
  width: 100%;
  pointer-events: none;
  background: transparent;
}

.nova-dsh--standalone {
  min-height: var(--nova-dsh-min-height);
}

.nova-dsh--sticky {
  min-height: var(--nova-dsh-pin-height);
  overflow: visible;
}

.nova-dsh--background-layer.nova-dsh--sticky {
  min-height: 100%;
  height: 100%;
  overflow: visible;
}

.nova-dsh--sticky .nova-dsh__stage {
  position: sticky;
  top: var(--nova-dsh-sticky-top);
  left: 0;
  right: 0;
  bottom: auto;
  width: 100%;
  height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top));
  min-height: 420px;
}

.nova-dsh__stage {
  position: absolute;
  inset: 0;
  overflow: hidden;
  z-index: 0;
  background: #090306;
  pointer-events: none;
}

.nova-dsh__stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 4;
  pointer-events: none;
  background: rgba(0,0,0,0);
}

.nova-dsh--standalone .nova-dsh__stage {
  position: absolute;
}

.nova-dsh__overlay {
  position: absolute;
  inset: 0;
  z-index: 12;
  pointer-events: none;
}

.nova-dsh--sticky .nova-dsh__overlay {
  position: sticky;
  top: var(--nova-dsh-sticky-top);
  left: 0;
  right: 0;
  width: 100%;
  height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top));
  min-height: 420px;
}

.nova-dsh__frame {
  position: absolute;
  left: var(--nova-dsh-frame-x);
  top: var(--nova-dsh-frame-y);
  width: var(--nova-dsh-frame-width);
  height: auto;
  max-width: none !important;
  min-width: 100%;
  display: block;
  opacity: 1;
  transition: opacity .12s linear;
  transform: translate3d(-50%, -50%, 0) scale(calc(1 + (var(--nova-dsh-progress) * 0.018)));
  transform-origin: 50% 50%;
  filter: none;
  will-change: transform, opacity;
  user-select: none;
  pointer-events: none;
  -webkit-user-drag: none;
}

.nova-dsh__frame--a { z-index: 1; opacity: var(--nova-dsh-frame-opacity); }
.nova-dsh__frame--b { z-index: 2; opacity: 0; }

.nova-dsh__vignette {
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  opacity: var(--nova-dsh-vignette-opacity);
  background:
    radial-gradient(circle at 72% 42%, rgba(255,255,255,.08), transparent 27%),
    linear-gradient(90deg, rgba(0,0,0,.42), transparent 26%, transparent 65%, rgba(0,0,0,.35)),
    radial-gradient(circle at center, transparent 45%, rgba(0,0,0,.7) 100%);
  mix-blend-mode: normal;
}

.nova-dsh__sparks {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
}

.nova-dsh__sparks--back { z-index: 1; opacity: .55; }
.nova-dsh__sparks--front { z-index: 5; opacity: 1; }

.nova-dsh__spark {
  --x: 50%;
  --y: 50%;
  --s: 4px;
  --dx: 0px;
  --dy: -80px;
  --alpha: .8;
  --dur: 2200ms;
  --delay: 0ms;
  --c: #e88b19;
  position: absolute;
  left: var(--x);
  top: var(--y);
  width: var(--s);
  height: var(--s);
  border-radius: 999px;
  opacity: calc(var(--alpha) * var(--nova-dsh-spark-opacity));
  background: var(--c);
  box-shadow: 0 0 calc(var(--s) * 3) var(--c), 0 0 calc(var(--s) * 7) color-mix(in srgb, var(--c) 45%, transparent);
  transform: translate3d(calc(var(--dx) * var(--nova-dsh-progress)), calc(var(--dy) * var(--nova-dsh-progress)), 0) scale(calc(.72 + (var(--nova-dsh-progress) * .45)));
  animation: nova-dsh-spark-twinkle var(--dur) ease-in-out infinite alternate;
  animation-delay: var(--delay);
  will-change: transform, opacity;
}

.nova-dsh__spark--arcane { --c: #18a4a1; }
.nova-dsh__spark--ember { --c: #e88b19; }
.nova-dsh__spark--rose { --c: #e34960; }

@keyframes nova-dsh-spark-twinkle {
  0% { opacity: calc(var(--alpha) * .38 * var(--nova-dsh-spark-opacity)); filter: blur(.1px); }
  100% { opacity: calc(var(--alpha) * var(--nova-dsh-spark-opacity)); filter: blur(0); }
}

.nova-dsh__content {
  position: absolute;
  z-index: 10;
  left: 10%;
  top: 54%;
  transform: translateY(-50%);
  pointer-events: none;
}

.nova-dsh__content-inner {
  max-width: 560px;
  pointer-events: auto;
}

.nova-dsh__eyebrow {
  margin: 0 0 .8rem;
  font-size: clamp(1rem, 1.3vw, 1.3rem);
  line-height: 1.1;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #18A4A1;
}

.nova-dsh__headline {
  margin: 0;
}

.nova-dsh__headline-line {
  display: block;
  margin: 0;
  color: #fff;
  font-size: clamp(3rem, 7vw, 7.5rem);
  line-height: .88;
  font-weight: 900;
  letter-spacing: -.04em;
  text-transform: uppercase;
  white-space: normal;
  overflow-wrap: anywhere;
}

.nova-dsh__headline-line--signal {
  color: #E88B19;
}

.nova-dsh__body {
  max-width: 52ch;
  margin: 0;
  color: #fff;
  font-size: clamp(1rem, 1.45vw, 1.25rem);
  line-height: 1.45;
  font-weight: 600;
  text-wrap: pretty;
}

.nova-dsh__body p:last-child { margin-bottom: 0; }

.nova-dsh__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  margin-top: 1.35rem;
  min-height: 48px;
  padding: .85rem 1.45rem;
  border-radius: 999px;
  background: #E88B19;
  color: #fff;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  text-transform: uppercase;
  transition: transform .18s ease, filter .18s ease;
  pointer-events: auto;
}

.nova-dsh__button:hover,
.nova-dsh__button:focus-visible {
  color: #fff;
  background-color: #18A4A1;
  transform: translateY(-2px);
  filter: brightness(1.02);
}

.nova-dsh__button-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
  flex: 0 0 auto;
}

.nova-dsh__button-icon i,
.nova-dsh__discord-svg {
  display: block;
  width: 1.15em;
  height: 1.15em;
  fill: currentColor;
}


/* Background-layer helper: JS adds this class to the parent Elementor container. */
.nova-dsh-parent-ready {
  position: relative !important;
  isolation: isolate;
  overflow: hidden;
  min-height: var(--nova-dsh-parent-min-height, 100vh);
  width: 100%;
}

.nova-dsh-parent-ready.nova-dsh-parent-sticky {
  min-height: var(--nova-dsh-pin-height, 260vh) !important;
  overflow: visible !important;
}

.nova-dsh-parent-ready.nova-dsh-parent-sticky.nova-dsh-parent-lock-content > .e-con-inner,
.nova-dsh-parent-ready.nova-dsh-parent-sticky.nova-dsh-parent-lock-content > .elementor-container,
.nova-dsh-parent-ready.nova-dsh-parent-sticky.nova-dsh-parent-lock-content > .elementor-element,
.nova-dsh-parent-ready.nova-dsh-parent-sticky.nova-dsh-parent-lock-content > .e-con {
  position: sticky !important;
  top: var(--nova-dsh-sticky-top, 0px);
  min-height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
  z-index: 2;
}

.nova-dsh-parent-ready.nova-dsh-parent-sticky > .e-con-inner,
.nova-dsh-parent-ready.nova-dsh-parent-sticky > .elementor-container {
  position: sticky !important;
  top: var(--nova-dsh-sticky-top, 0px);
  min-height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
  width: 100%;
  align-items: stretch;
  z-index: 2;
}

.nova-dsh-parent-ready .elementor-widget-nova_dragon_scroll_hero,
.nova-dsh-parent-ready .elementor-widget-nova-dragon-scroll-hero {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 0 !important;
  margin: 0 !important;
  pointer-events: none !important;
}

.nova-dsh-parent-ready .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
.nova-dsh-parent-ready .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container {
  height: 100%;
}

.nova-dsh-parent-ready > .e-con-inner,
.nova-dsh-parent-ready > .elementor-container {
  position: relative;
  z-index: 2;
}

.nova-dsh-parent-ready > .elementor-widget:not(.elementor-widget-nova_dragon_scroll_hero),
.nova-dsh-parent-ready > .e-con-inner > .elementor-widget:not(.elementor-widget-nova_dragon_scroll_hero),
.nova-dsh-parent-ready > .e-con-inner > .elementor-element:not(.elementor-widget-nova_dragon_scroll_hero),
.nova-dsh-parent-ready > .elementor-container > .elementor-column {
  position: relative;
  z-index: 3;
}

.nova-dsh--editor::after {
  content: "Nova Dragon Scroll Hero – Background layer active. Add headings/buttons in the same parent container above it.";
  position: absolute;
  left: 12px;
  bottom: 12px;
  z-index: 20;
  max-width: 320px;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(0,0,0,.55);
  color: rgba(255,255,255,.85);
  font: 600 11px/1.35 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  pointer-events: none;
}

.nova-dsh--editor.nova-dsh--has-content::after,
.nova-dsh--standalone.nova-dsh--editor::after {
  content: none;
}

@media (max-width: 1024px) {
}

@media (max-width: 767px) {
  .nova-dsh__frame {
    opacity: var(--nova-dsh-mobile-frame-opacity) !important;
    filter: blur(var(--nova-dsh-mobile-frame-blur));
  }

  .nova-dsh__stage::after {
    background: linear-gradient(90deg, rgba(0,0,0,var(--nova-dsh-mobile-scrim-opacity)) 0%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .82)) 52%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .38)) 100%);
  }

  .nova-dsh__content {
    left: 6%;
    right: 6%;
    top: 58%;
  }

  .nova-dsh__content-inner {
    max-width: 100%;
  }

  .nova-dsh__headline {
    font-size: clamp(2.7rem, 16vw, 5rem);
  }

  .nova-dsh__body {
    font-size: 1rem;
    max-width: 34ch;
  }
}


.nova-dsh__scroll-indicator {
  position: absolute;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%);
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  color: #ffffff;
  pointer-events: none;
  z-index: 14;
}

.nova-dsh__scroll-mouse {
  width: 28px;
  height: 44px;
  border: 2px solid currentColor;
  border-radius: 18px;
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 8px;
}

.nova-dsh__scroll-wheel {
  width: 4px;
  height: 8px;
  border-radius: 999px;
  background: currentColor;
  animation: nova-dsh-wheel 1.5s ease-in-out infinite;
}

.nova-dsh__scroll-label {
  display: inline-block;
  font-size: .95rem;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

@keyframes nova-dsh-wheel {
  0% { transform: translateY(0); opacity: .95; }
  70% { transform: translateY(10px); opacity: .15; }
  100% { transform: translateY(0); opacity: .95; }
}

@media (max-width: 767px) {
  .nova-dsh__headline-line {
    white-space: normal;
  }
  .nova-dsh__scroll-indicator {
    gap: .45rem;
  }
}



/* Device-specific sticky override. The PHP class may still contain nova-dsh--sticky,
   so JS adds nova-dsh-device-not-sticky when sticky is disabled for the current device. */
.nova-dsh.nova-dsh-device-not-sticky {
  min-height: var(--nova-dsh-min-height, 100vh);
  overflow: hidden;
}

.nova-dsh.nova-dsh-device-not-sticky .nova-dsh__stage,
.nova-dsh.nova-dsh-device-not-sticky .nova-dsh__overlay {
  position: absolute !important;
  top: 0 !important;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100% !important;
  min-height: 0 !important;
}

/* Mobile external stack mode.
   Based on the stable 0.3.0 behavior: no bridge, no desktop column escape.
   Only below 768px the widget can become its own block below external Elementor content. */
@media (max-width: 767px) {
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack {
    overflow: visible !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-lock-content > .e-con-inner,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-lock-content > .elementor-container,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-lock-content > .elementor-element,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-lock-content > .e-con,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-sticky > .e-con-inner,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack.nova-dsh-parent-sticky > .elementor-container {
    position: relative !important;
    top: auto !important;
    min-height: auto !important;
    height: auto !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .elementor-widget-nova_dragon_scroll_hero,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .elementor-widget-nova-dragon-scroll-hero {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
    z-index: 1 !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container {
    height: auto !important;
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .nova-dsh--background-layer,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .nova-dsh--background-layer.nova-dsh--sticky {
    height: auto !important;
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
  }


  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova_dragon_scroll_hero,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova-dragon-scroll-hero {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    min-height: var(--nova-dsh-sticky-height, 100vh) !important;
    height: auto !important;
    z-index: 1 !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .nova-dsh--background-layer {
    min-height: var(--nova-dsh-sticky-height, 100vh) !important;
    height: auto !important;
  }


  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack:not(.nova-dsh-parent-sticky) .nova-dsh__stage {
    position: absolute !important;
    inset: 0 !important;
    width: 100%;
    height: 100% !important;
    min-height: 0 !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-mobile-stack .nova-dsh__stage {
    position: sticky !important;
    top: var(--nova-dsh-sticky-top, 0px);
    width: 100%;
    height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
    min-height: 420px;
  }
}


/* Tablet external stack mode. Applies when Elementor stacks the text container above
   the dragon on tablet widths, while desktop should remain a side-by-side overlay. */
@media (min-width: 768px) and (max-width: 1024px) {
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack {
    overflow: visible !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .e-con-inner,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .elementor-container,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .elementor-element,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .e-con,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-sticky > .e-con-inner,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-sticky > .elementor-container {
    position: relative !important;
    top: auto !important;
    min-height: auto !important;
    height: auto !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova_dragon_scroll_hero,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova-dragon-scroll-hero {
    position: relative !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
    height: auto !important;
    z-index: 1 !important;
    margin: 0 !important;
    pointer-events: none !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container {
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
    height: auto !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh--background-layer,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh--background-layer.nova-dsh--sticky {
    min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
    height: auto !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova_dragon_scroll_hero,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova-dragon-scroll-hero,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container,
  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .nova-dsh--background-layer {
    min-height: var(--nova-dsh-sticky-height, 100vh) !important;
    height: auto !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack:not(.nova-dsh-parent-sticky) .nova-dsh__stage {
    position: absolute !important;
    inset: 0 !important;
    width: 100%;
    height: 100% !important;
    min-height: 0 !important;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__stage {
    position: sticky !important;
    top: var(--nova-dsh-sticky-top, 0px);
    width: 100%;
    height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
    min-height: 420px;
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__frame {
    opacity: var(--nova-dsh-mobile-frame-opacity) !important;
    filter: blur(var(--nova-dsh-mobile-frame-blur));
  }

  .nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__stage::after {
    background: linear-gradient(90deg, rgba(0,0,0,var(--nova-dsh-mobile-scrim-opacity)) 0%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .82)) 52%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .38)) 100%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .nova-dsh__frame,
  .nova-dsh__spark {
    animation: none !important;
    transition: none !important;
  }
}


/* Class-driven tablet stack. This is intentionally not inside a fixed 1024px media query,
   because iPad landscape can be wider than 1024px. JS adds this class using the
   configurable Tablet / iPad max width setting. */
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack {
  overflow: visible !important;
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .e-con-inner,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .elementor-container,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .elementor-element,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-lock-content > .e-con,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-sticky > .e-con-inner,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack.nova-dsh-parent-sticky > .elementor-container {
  position: relative !important;
  top: auto !important;
  min-height: auto !important;
  height: auto !important;
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova_dragon_scroll_hero,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova-dragon-scroll-hero {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
  height: auto !important;
  z-index: 1 !important;
  margin: 0 !important;
  pointer-events: none !important;
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova_dragon_scroll_hero > .elementor-widget-container,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .elementor-widget-nova-dragon-scroll-hero > .elementor-widget-container,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh--background-layer,
.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh--background-layer.nova-dsh--sticky {
  min-height: max(var(--nova-dsh-pin-height, 180vh), var(--nova-dsh-sticky-height, 100vh)) !important;
  height: auto !important;
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__stage {
  position: sticky !important;
  top: var(--nova-dsh-sticky-top, 0px);
  width: 100%;
  height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
  min-height: 420px;
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__frame {
  opacity: var(--nova-dsh-mobile-frame-opacity) !important;
  filter: blur(var(--nova-dsh-mobile-frame-blur));
}

.nova-dsh-parent-ready.nova-dsh-parent-tablet-stack .nova-dsh__stage::after {
  background: linear-gradient(90deg, rgba(0,0,0,var(--nova-dsh-mobile-scrim-opacity)) 0%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .82)) 52%, rgba(0,0,0,calc(var(--nova-dsh-mobile-scrim-opacity) * .38)) 100%);
}

/* v0.3.9 sticky overrides loaded late on purpose. */
.nova-dsh.nova-dsh--sticky .nova-dsh__stage,
.nova-dsh.nova-dsh--standalone.nova-dsh--sticky .nova-dsh__stage,
.nova-dsh.nova-dsh--background-layer.nova-dsh--sticky .nova-dsh__stage {
  position: sticky;
  top: var(--nova-dsh-sticky-top, 0px);
  left: 0;
  right: 0;
  bottom: auto;
  width: 100%;
  height: calc(var(--nova-dsh-sticky-height, 100vh) - var(--nova-dsh-sticky-top, 0px));
  min-height: 420px;
}
