/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

/* =========================================
   Basic Elementor Text Reveal - delayed start
========================================= */

.bb-text-reveal-basic,
.bb-text-reveal-basic .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-basic .elementor-heading-title{
  margin: 0;
}

.bb-text-reveal-basic .bb-word{
  display:inline-block;
  opacity:0;
  transform:translateY(30px) scale(.96);
  filter:blur(8px);
  margin-right:.22em;
  will-change:transform, opacity, filter;
}

.bb-text-reveal-basic .bb-word:last-child{
  margin-right:0;
}

.bb-text-reveal-basic.bb-start .bb-word{
  animation:bbBasicWordReveal .9s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes bbBasicWordReveal{
  0%{
    opacity:0;
    transform:translateY(30px) scale(.96);
    filter:blur(8px);
  }
  60%{
    opacity:1;
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

@media (max-width: 767px){
  .bb-text-reveal-basic .bb-word{
    transform:translateY(20px) scale(.98);
    filter:blur(6px);
    margin-right:.16em;
  }
}

/* =========================================
   Premium Hero Reveal
========================================= */

.bb-text-reveal-hero,
.bb-text-reveal-hero .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-hero .bb-word{
  display:inline-block;
  opacity:0;
  transform:translateY(40px) scale(.94);
  filter:blur(10px);
  margin-right:.22em;
  will-change:transform, opacity, filter;
}

.bb-text-reveal-hero .bb-word:last-child{
  margin-right:0;
}

.bb-text-reveal-hero.bb-start .bb-word{
  animation:bbHeroReveal 1.1s cubic-bezier(.19,1,.22,1) forwards;
}

@keyframes bbHeroReveal{
  0%{
    opacity:0;
    transform:translateY(40px) scale(.94);
    filter:blur(10px);
  }
  60%{
    opacity:1;
    transform:translateY(-3px) scale(1.02);
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

.bb-text-reveal-hero .bb-word{
  background:linear-gradient(
    135deg,
    #ffffff,
    #f3e8ff,
    #c9b6ff,
    #b9ffe7,
    #ffffff
  );
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;

  text-shadow:
    0 0 10px rgba(255,255,255,.08),
    0 0 22px rgba(200,150,255,.12),
    0 0 36px rgba(110,255,215,.10);
}

/* =========================================
   Framer-Style Mask Reveal
========================================= */

.bb-text-reveal-mask,
.bb-text-reveal-mask .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-mask .elementor-heading-title{
  margin: 0;
}

.bb-text-reveal-mask .bb-word-wrap{
  display:inline-block;
  overflow:hidden;
  vertical-align:bottom;
  margin-right:.22em;
}

.bb-text-reveal-mask .bb-word-wrap:last-child{
  margin-right:0;
}

.bb-text-reveal-mask .bb-word{
  display:inline-block;
  position:relative;
  opacity:0;
  transform:translateY(110%);
  filter:blur(8px);
  will-change:transform, opacity, filter;
}

.bb-text-reveal-mask.bb-start .bb-word{
  animation:bbMaskReveal 1s cubic-bezier(.19,1,.22,1) forwards;
}

.bb-text-reveal-mask .bb-word::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:-20%;
  width:55%;
  background:linear-gradient(
    90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.26) 50%,
    rgba(255,255,255,0) 100%
  );
  transform:translateX(-180%) skewX(-18deg);
  opacity:0;
  pointer-events:none;
  mix-blend-mode:screen;
}

.bb-text-reveal-mask.bb-start .bb-word::after{
  animation:bbMaskShine .9s ease forwards;
  animation-delay:calc(var(--bb-delay, 0s) + .22s);
}

@keyframes bbMaskReveal{
  0%{
    opacity:0;
    transform:translateY(110%);
    filter:blur(8px);
  }
  60%{
    opacity:1;
    transform:translateY(-6%);
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
  }
}

@keyframes bbMaskShine{
  0%{
    opacity:0;
    transform:translateX(-180%) skewX(-18deg);
  }
  30%{
    opacity:.85;
  }
  100%{
    opacity:0;
    transform:translateX(260%) skewX(-18deg);
  }
}

/* Optional dark-background premium text */
.bb-text-reveal-mask.is-glow .bb-word{
  background:linear-gradient(
    135deg,
    #ffffff 0%,
    #f4ebff 24%,
    #d8c2ff 52%,
    #caffef 78%,
    #ffffff 100%
  );
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:
    0 0 10px rgba(255,255,255,.08),
    0 0 20px rgba(179,138,255,.10),
    0 0 30px rgba(92,255,214,.08);
}

@media (max-width: 767px){
  .bb-text-reveal-mask .bb-word-wrap{
    margin-right:.16em;
  }

  .bb-text-reveal-mask .bb-word{
    filter:blur(6px);
  }
}

/* =========================================
   Split Line Reveal
========================================= */

.bb-text-reveal-splitline,
.bb-text-reveal-splitline .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-splitline .elementor-heading-title{
  margin: 0;
}

.bb-text-reveal-splitline .bb-line-wrap{
  display:block;
  overflow:hidden;
}

.bb-text-reveal-splitline .bb-line{
  display:inline-block;
  opacity:0;
  transform:translateY(110%);
  filter:blur(8px);
  will-change:transform, opacity, filter;
}

.bb-text-reveal-splitline.bb-start .bb-line{
  animation:bbSplitLineReveal 1s cubic-bezier(.19,1,.22,1) forwards;
}

@keyframes bbSplitLineReveal{
  0%{
    opacity:0;
    transform:translateY(110%);
    filter:blur(8px);
  }
  60%{
    opacity:1;
    transform:translateY(-4%);
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:translateY(0);
    filter:blur(0);
  }
}

/* =========================================
   Blur Focus Reveal
========================================= */

.bb-text-reveal-blurfocus,
.bb-text-reveal-blurfocus .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-blurfocus .elementor-heading-title{
  margin: 0;
}

.bb-text-reveal-blurfocus .bb-word{
  display:inline-block;
  opacity:0;
  transform:translateY(22px) scale(.98);
  filter:blur(16px);
  margin-right:.22em;
  will-change:transform, opacity, filter;
}

.bb-text-reveal-blurfocus .bb-word:last-child{
  margin-right:0;
}

.bb-text-reveal-blurfocus.bb-start .bb-word{
  animation:bbBlurFocusReveal 1s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes bbBlurFocusReveal{
  0%{
    opacity:0;
    transform:translateY(22px) scale(.98);
    filter:blur(16px);
  }
  55%{
    opacity:1;
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

@media (max-width: 767px){
  .bb-text-reveal-blurfocus .bb-word{
    margin-right:.16em;
    filter:blur(10px);
  }
}

/* =========================================
   Character Luxury Reveal
========================================= */

.bb-text-reveal-charlux,
.bb-text-reveal-charlux .elementor-heading-title{
  overflow: visible;
}

.bb-text-reveal-charlux .elementor-heading-title{
  margin: 0;
}

.bb-text-reveal-charlux .bb-char{
  display:inline-block;
  opacity:0;
  transform:translateY(34px) scale(.94);
  filter:blur(8px);
  will-change:transform, opacity, filter;
}

.bb-text-reveal-charlux .bb-space{
  display:inline-block;
  width:.28em;
}

.bb-text-reveal-charlux.bb-start .bb-char{
  animation:bbCharLuxReveal .9s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes bbCharLuxReveal{
  0%{
    opacity:0;
    transform:translateY(34px) scale(.94);
    filter:blur(8px);
  }
  60%{
    opacity:1;
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
    filter:blur(0);
  }
}

@media (max-width: 767px){
  .bb-text-reveal-charlux .bb-char{
    transform:translateY(20px) scale(.98);
    filter:blur(6px);
  }
}

/* Character Wave Reveal */

.bb-text-reveal-charwave .bb-char{
  display:inline-block;
  opacity:0;
  transform:translateY(40px);
}

.bb-text-reveal-charwave.bb-start .bb-char{
  animation:bbCharWave .7s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes bbCharWave{
  0%{
    opacity:0;
    transform:translateY(40px);
  }
  60%{
    opacity:1;
    transform:translateY(-6px);
  }
  100%{
    opacity:1;
    transform:translateY(0);
  }
}


/* Premium Typewriter */

.bb-text-reveal-typepro .bb-char{
  display:inline-block;
  opacity:0;
}

.bb-text-reveal-typepro.bb-start .bb-char{
  animation:bbTypePro .4s ease forwards;
}

@keyframes bbTypePro{
  from{opacity:0}
  to{opacity:1}
}

/* Pop Reveal */

.bb-text-reveal-pop .bb-word{
  display:inline-block;
  opacity:0;
  transform:scale(.6);
}

.bb-text-reveal-pop.bb-start .bb-word{
  animation:bbPopReveal .6s cubic-bezier(.22,.61,.36,1) forwards;
}

@keyframes bbPopReveal{

  0%{
    opacity:0;
    transform:scale(.6);
  }

  60%{
    transform:scale(1.1);
  }

  100%{
    opacity:1;
    transform:scale(1);
  }

}

/* Rotate Reveal */

.bb-text-reveal-rotate .bb-word{
  display:inline-block;
  opacity:0;
  transform:rotateX(90deg);
}

.bb-text-reveal-rotate.bb-start .bb-word{
  animation:bbRotateReveal .8s ease forwards;
}

@keyframes bbRotateReveal{

  0%{
    opacity:0;
    transform:rotateX(90deg);
  }

  100%{
    opacity:1;
    transform:rotateX(0);
  }

}

/* Elastic Bounce Reveal */

.bb-text-reveal-bounce .bb-word{
  display:inline-block;
  opacity:0;
  transform:translateY(50px);
}

.bb-text-reveal-bounce.bb-start .bb-word{
  animation:bbBounceReveal .9s cubic-bezier(.34,1.56,.64,1) forwards;
}

@keyframes bbBounceReveal{

  0%{
    opacity:0;
    transform:translateY(50px);
  }

  70%{
    transform:translateY(-8px);
  }

  100%{
    opacity:1;
    transform:translateY(0);
  }

}