.text-gradient-yellow-green {
  color: #fff;
  background: linear-gradient(90deg, #F3FF97 0%, #818E1B 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.3));
}

.text-gradient-lilac-purple {
  color: #fff;
  background: linear-gradient(90deg, #D5A5E3 32.31%, #A92ECD 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.3));
}

.text-gradient-dark-purple {
  color: #fff;
  background: linear-gradient(90deg, #875CFF 0%, #4E22C9 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.3));
}

.relative-z4 {
  position: relative;
}

.relative-z10 {
  position: relative;
  z-index: 10;
}

.container-pr-0 {
  margin-left: auto;
  box-sizing: border-box;
}
@media (min-width: 2099px) {
  .container-pr-0 {
    width: calc(50vw + var(--container-max-width) / 2 - var(--container-padding));
    padding-left: 10px;
  }
}
@media (max-width: 2100px) {
  .container-pr-0 {
    padding-left: calc(var(--container-padding));
  }
}

.text-shadow-contrast-dark {
  /* Use dark, soft multi-layer shadow for light/low-contrast backgrounds */
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.45), 0 2px 2px rgba(0, 0, 0, 0.3), 0 3px 4px rgba(0, 0, 0, 0.2);
}

.text-shadow-contrast-light {
  /* Use subtle light glow for dark backgrounds */
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.35), 0 2px 2px rgba(255, 255, 255, 0.2);
}

.wp-block-pulp-full-cta {
  padding-top: 0;
}
.wp-block-pulp-full-cta .text-large p {
  margin-bottom: 40px;
}
@media (min-width: 993px) {
  .wp-block-pulp-full-cta .hero-img {
    margin-bottom: -100px;
  }
}
@media (max-width: 993px) {
  .wp-block-pulp-full-cta .hero-img {
    position: absolute;
    right: -50%;
    top: 0px;
    display: block;
    isolation: isolate;
    pointer-events: none;
    z-index: -1;
    background-repeat: no-repeat;
  }
  .wp-block-pulp-full-cta .hero-img img {
    background-size: contain;
    -o-object-fit: contain;
    object-fit: contain;
    height: 800px;
    transform: translateY(-25%);
  }
}
