:root {
  --cew-base-size: 1;
  --var-cew-advanced-title-highlight-animation-duration: 2000ms;
  /* Alias for ThemeREX compatibility */
  --trx-addons-base-size: 1;
  --var-trx-addons-advanced-title-highlight-animation-duration: 2000ms;
}

.cew-advanced-title,
.trx-addons-advanced-title {
  position: relative;
  margin: 0;
}

.elementor-widget-cew_advanced_title.cew-animate .cew-svg-wrapper path,
.elementor-widget-trx_elm_advanced_title.cew-animate .cew-svg-wrapper path,
.elementor-widget-trx_elm_advanced_title.trx-addons-animate .trx-addons-svg-wrapper path {
  stroke-dasharray: 1500;
  animation: highlighted-line var(--var-cew-advanced-title-highlight-animation-duration) cubic-bezier(0.29, 1.11, 0.74, 1.04) forwards;
  animation-play-state: paused;
}

.cew-advanced-title-item {
  display: inline;
  position: relative;
}

.cew-advanced-title-item.cew-advanced-title-item-nowrap {
  white-space: nowrap;
}

.cew-advanced-title-item.cew-advanced-title-color, 
.cew-advanced-title-item[class*="cew-advanced-title-stroke"] {
  padding-left: 0.1em;
  padding-right: 0.1em;
}

.cew-advanced-title-item-text {
  position: relative;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  -ms-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}

.cew-advanced-title-item-text[class*="cew-advanced-title-stroke"] {
  white-space: nowrap;
}

.cew-advanced-title-item-highlighted[class*="cew-advanced-title-stroke"] .cew-advanced-title-text {
  position: relative;
  z-index: 1;
}

.cew-advanced-title-item-text svg {
  position: absolute;
  top: auto;
  left: -3%;
  width: 106%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
}

.cew-advanced-title-item-text svg path {
  stroke-width: 9;
  fill: none;
  -webkit-transition: stroke 0.3s ease, fill 0.3s ease;
  -ms-transition: stroke 0.3s ease, fill 0.3s ease;
  transition: stroke 0.3s ease, fill 0.3s ease;
}

.cew-advanced-title-item-text .cew-svg-wrapper {
  position: absolute;
  top: 0;
  left: -3%;
  width: 106%;
  height: 100%;
  pointer-events: none;
}

.cew-advanced-title-item-text .cew-svg-wrapper svg {
  left: 0;
  width: 100%;
}

.cew-advanced-title-item-text.cew-advanced-title-color {
  --cew-advanced-title-color: #f00;
  background-image: -webkit-gradient(linear, left top, right top, from(var(--cew-advanced-title-color)), to(var(--cew-advanced-title-color)));
  background-image: -webkit-linear-gradient(left, var(--cew-advanced-title-color) 0%, var(--cew-advanced-title-color) 100%);
  background-image: -o-linear-gradient(left, var(--cew-advanced-title-color) 0%, var(--cew-advanced-title-color) 100%);
  background-image: linear-gradient(to right, var(--cew-advanced-title-color) 0%, var(--cew-advanced-title-color) 100%);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 0 100%;
  -webkit-transition: background-size 1s cubic-bezier(0.5, 0.5, 0, 1);
  -ms-transition: background-size 1s cubic-bezier(0.5, 0.5, 0, 1);
  transition: background-size 1s cubic-bezier(0.5, 0.5, 0, 1);
}

.cew-advanced-title-item-text.cew-advanced-title-color.cew-animate-complete {
  background-size: 100% 100%;
}

.cew-advanced-title-item-gallery img:not(:first-child) {
  display: none;
}

.cew-advanced-title-item-icon svg,
.cew-advanced-title-item-image img,
.cew-advanced-title-item-gallery img,
.cew-advanced-title-item-video video {
  vertical-align: middle;
  max-height: calc( 0.88em * var(--cew-base-size, 1) );
  max-width: none !important;
  width: auto;
  -webkit-box-sizing: content-box;
  -ms-box-sizing: content-box;
  box-sizing: content-box;
}

.cew-advanced-title-item-image img,
.cew-advanced-title-item-gallery img,
.cew-advanced-title-item-video video {
  -webkit-transition: background-color 0.3s ease, border-color 0.3s ease;
  -ms-transition: background-color 0.3s ease, border-color 0.3s ease;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}

.cew-advanced-title-item.cew-advanced-title-item-video video {
  min-height: 0;
  width: auto;
}

.cew-advanced-title-item-icon svg {
  height: calc( 0.88em * var(--cew-base-size, 1) );
  overflow: visible !important;
}

.cew-advanced-title-item-icon .cew-advanced-title-item-icon-svg {
  display: inline-block;
  vertical-align: middle;
  line-height: 0;
  overflow: hidden;
}

.cew-advanced-title-item-icon i {
  vertical-align: middle;
  font-size: calc( 0.88em * var(--cew-base-size, 1) );
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  -ms-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
}

@keyframes cew-advanced-title-animate-gradient {
  0% {
    background-position: 0 0;
  }
  50% {
    background-position: 100% 0;
  }
  100% {
    background-position: 0 0;
  }
}

@keyframes highlighted-line {
  from {
    stroke-dasharray: 0 1500;
  }
  to {
    stroke-dasharray: 1500 1500;
  }
}

