/* 
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 */


/* Ken Burns zoom on the HERO Carousel */
/* Animate only the background image of all slide containers */

.elementor-widget-n-carousel .swiper-slide .elementor-element {
  animation: kenBurnsZoom 20s ease-in-out infinite alternate;
  will-change: background-size;
}

/* Zoom animation */
@keyframes kenBurnsZoom {
  0% {
    background-size: 100%;
  }
  100% {
    background-size: 110%;
  }
}



/* Carousel-Aware Animations */

/* Default hidden state */
.fade-in,
.fade-in-down,
.fade-in-left,
.fade-in-right,
.fade-in-up,
.zoom-in,
.slide-in-down,
.slide-in-left,
.slide-in-right,
.slide-in-up {
  opacity: 0;
}

/* Active slide animations */
.swiper-slide.swiper-slide-active .fade-in        { animation-name: fadeIn; }
.swiper-slide.swiper-slide-active .fade-in-down   { animation-name: fadeInDown; }
.swiper-slide.swiper-slide-active .fade-in-left   { animation-name: fadeInLeft; }
.swiper-slide.swiper-slide-active .fade-in-right  { animation-name: fadeInRight; }
.swiper-slide.swiper-slide-active .fade-in-up     { animation-name: fadeInUp; }
.swiper-slide.swiper-slide-active .zoom-in        { animation-name: zoomIn; }
.swiper-slide.swiper-slide-active .slide-in-down  { animation-name: slideInDown; }
.swiper-slide.swiper-slide-active .slide-in-left  { animation-name: slideInLeft; }
.swiper-slide.swiper-slide-active .slide-in-right { animation-name: slideInRight; }
.swiper-slide.swiper-slide-active .slide-in-up    { animation-name: slideInUp; }

/* All animated items get these core settings */
.swiper-slide.swiper-slide-active .fade-in,
.swiper-slide.swiper-slide-active .fade-in-down,
.swiper-slide.swiper-slide-active .fade-in-left,
.swiper-slide.swiper-slide-active .fade-in-right,
.swiper-slide.swiper-slide-active .fade-in-up,
.swiper-slide.swiper-slide-active .zoom-in,
.swiper-slide.swiper-slide-active .slide-in-down,
.swiper-slide.swiper-slide-active .slide-in-left,
.swiper-slide.swiper-slide-active .slide-in-right,
.swiper-slide.swiper-slide-active .slide-in-up {
  animation-duration: 0.8s;
  animation-fill-mode: both;
  animation-timing-function: ease-out;
  animation-iteration-count: 1;	
}

/* Reset non-active slide content */
.swiper-slide:not(.swiper-slide-active) [class*="fade-in"],
.swiper-slide:not(.swiper-slide-active) [class*="slide-in"],
.swiper-slide:not(.swiper-slide-active) [class*="zoom-in"] {
  animation: none !important;
  opacity: 0 !important;
}

.swiper-slide.swiper-slide-active .delay-1 { animation-delay: 0.2s; }
.swiper-slide.swiper-slide-active .delay-2 { animation-delay: 0.4s; }
.swiper-slide.swiper-slide-active .delay-3 { animation-delay: 0.6s; }
.swiper-slide.swiper-slide-active .delay-4 { animation-delay: 0.8s; }
.swiper-slide.swiper-slide-active .delay-5 { animation-delay: 1s; }
.swiper-slide.swiper-slide-active .delay-6 { animation-delay: 1.2s; }
.swiper-slide.swiper-slide-active .delay-7 { animation-delay: 1.4s; }
.swiper-slide.swiper-slide-active .delay-8 { animation-delay: 1.6s; }
.swiper-slide.swiper-slide-active .delay-9 { animation-delay: 1.8s; }
.swiper-slide.swiper-slide-active .delay-10 { animation-delay: 2s; }

/* Optional duration classes */
.duration-fast   { animation-duration: 0.5s !important; }
.duration-normal { animation-duration: 0.8s !important; }
.duration-slow   { animation-duration: 1.2s !important; }
.duration-glacial { animation-duration: 2s !important; }


@keyframes fadeIn       { from { opacity: 0; } to { opacity: 1; } }
@keyframes fadeInDown   { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }
@keyframes fadeInLeft   { from { opacity: 0; transform: translateX(-20px); } to { opacity: 1; transform: translateX(0); } }
@keyframes fadeInRight  { from { opacity: 0; transform: translateX(20px); }  to { opacity: 1; transform: translateX(0); } }
@keyframes fadeInUp     { from { opacity: 0; transform: translateY(20px); }  to { opacity: 1; transform: translateY(0); } }

@keyframes zoomIn       { from { opacity: 0; transform: scale(0.95); } to { opacity: 1; transform: scale(1); } }

@keyframes slideInDown  { from { transform: translateY(-100%); } to { transform: translateY(0); } }
@keyframes slideInLeft  { from { transform: translateX(-100%); } to { transform: translateX(0); } }
@keyframes slideInRight { from { transform: translateX(100%); }  to { transform: translateX(0); } }
@keyframes slideInUp    { from { transform: translateY(100%); }  to { transform: translateY(0); } }

