/* Yankeee Tech | Site-wide premium motion layer
   Adds presentation only; does not rewrite Elementor data, content, or layouts.
   Accessibility: all motion disabled for prefers-reduced-motion.
*/
:root{--yt-motion-ease:cubic-bezier(.22,1,.36,1);--yt-motion-purple:#ab60f0;--yt-motion-dark:#10091b}

/* All intersection animations are progressive-enhancement only: without JS,
   without an IntersectionObserver, in the Elementor editor, or with reduced
   motion content remains fully visible and usable. */
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending {
  opacity:0;
  transform:translate3d(0,18px,0);
  transition:
    opacity .68s var(--yt-motion-ease),
    transform .82s var(--yt-motion-ease);
  transition-delay:var(--yt-motion-delay,0ms);
  will-change:opacity,transform;
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending.yt-motion-visible {
  opacity:1;
  transform:translate3d(0,0,0);
  will-change:auto;
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="copy"] {
  transform:translate3d(0,12px,0);
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="image"] {
  transform:translate3d(0,16px,0) scale(.985);
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="card"] {
  transform:translate3d(0,24px,0) scale(.987);
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="button"] {
  transform:translate3d(0,9px,0);
}
html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending.yt-motion-visible:is([data-yt-motion="copy"],[data-yt-motion="image"],[data-yt-motion="card"],[data-yt-motion="button"]) {
  transform:translate3d(0,0,0) scale(1);
}

/* Hero: separate cascading text entrance. Animate nested text, never the
   structural container or Elementor's own motion-effects wrapper. */
@keyframes yt-hero-text-in {from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes yt-hero-orbit {0%,100%{opacity:.65;filter:brightness(1)}50%{opacity:1;filter:brightness(1.2)}}
html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a .elementor-element-aed7335 .elementor-heading-title {animation:yt-hero-text-in .78s .04s both var(--yt-motion-ease)}
html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a .elementor-element-25f7656 .elementor-heading-title {animation:yt-hero-text-in .88s .15s both var(--yt-motion-ease)}
html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a .elementor-element-637aa3e .elementor-heading-title {animation:yt-hero-text-in .85s .12s both var(--yt-motion-ease)}
html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a::before {animation:yt-hero-orbit 11s ease-in-out infinite}

/* Subtle interactive feedback on cards. Target the card itself, not Swiper's
   moving slides or its .swiper-wrapper, and don't override active UI states. */
@media(hover:hover) and (pointer:fine) {
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-icon-box:not(.yt-motion-pending),
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-image-box:not(.yt-motion-pending) {
    transition:transform .36s var(--yt-motion-ease),box-shadow .36s ease,border-color .36s ease;
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-icon-box:not(.yt-motion-pending):hover,
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-image-box:not(.yt-motion-pending):hover {
    transform:translate3d(0,-3px,0);
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-button .elementor-button {
    transition:background-color .28s ease,background .28s ease,color .28s ease,
      box-shadow .28s ease,transform .32s var(--yt-motion-ease),border-color .28s ease;
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-button .elementor-button:hover {
    transform:translate3d(0,-2px,0);
    box-shadow:0 12px 30px rgba(117,35,191,.24);
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-button .elementor-button:active {
    transform:translate3d(0,0,0);
  }
  /* Keep the existing featured-image hover treatment and crop. */
  html.yt-motion-allowed body:not(.wp-admin) .elementor-6711 .elementor-element-7dabe0b9 {
    overflow:hidden;
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-6711 .elementor-element-7dabe0b9:hover {
    filter:brightness(1.07);
    transition:filter .4s ease;
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-image img {
    transition:filter .38s ease;
  }
  html.yt-motion-allowed body:not(.wp-admin) .elementor-widget-image:hover img {
    filter:brightness(1.035);
  }
}
/* Menus animate their *contents*, not their popover positioning or trigger. */
@keyframes yt-dropdown-fade {from{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
html.yt-motion-allowed body:not(.wp-admin) .elementor-707 .e-n-menu-title:has(.e-n-menu-dropdown-icon[aria-expanded="true"]) + .e-n-menu-content > .e-con {
  animation:yt-dropdown-fade .28s var(--yt-motion-ease) both;
}
html.yt-motion-allowed body:not(.wp-admin) .elementor-707 .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container {
  transition:color .22s ease,background-color .22s ease;
}
/* Focus/FAQ/forms respond without moving controls or labels. */
html.yt-motion-allowed body:not(.wp-admin) :is(.elementor-accordion .elementor-tab-title,.e-n-accordion-item-title,.elementor-toggle .elementor-tab-title) {
  transition:background-color .23s ease,color .23s ease,border-color .23s ease;
}
html.yt-motion-allowed body:not(.wp-admin) :is(.elementor-form input,.elementor-form textarea,.elementor-form select) {
  transition:border-color .23s ease,box-shadow .23s ease,background-color .23s ease;
}
html.yt-motion-allowed body:not(.wp-admin) :is(.elementor-form input,.elementor-form textarea,.elementor-form select):focus-visible {
  border-color:#ab60f0;
  box-shadow:0 0 0 3px rgba(171,96,240,.18);
}
/* Swiper track/slides and Elementor motion-effect layers are deliberately
   left untouched. */

@media(max-width:767px) {
  html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending {transform:translate3d(0,12px,0);transition-duration:.5s,.6s;transition-delay:min(var(--yt-motion-delay,0ms),100ms)}
  html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending.yt-motion-visible {transform:translate3d(0,0,0) scale(1)}
  html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="image"],
  html.yt-motion-allowed body:not(.wp-admin) .yt-motion-pending[data-yt-motion="card"] {transform:translate3d(0,12px,0) scale(.99)}
}
@media(prefers-reduced-motion:reduce) {
  /* Accessibility: cancel all added motion including text entrances. */
  html body:not(.wp-admin) .yt-motion-pending,html body:not(.wp-admin) .yt-motion-visible {opacity:1!important;transform:none!important;animation:none!important;transition:none!important;will-change:auto!important}
  html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a :is(.elementor-heading-title,.elementor-button),
  html.yt-motion-allowed .elementor-22 .elementor-element-6c3a20a::before,
  html.yt-motion-allowed .elementor-707 .e-n-menu-content > .e-con,
  html.yt-motion-allowed :is(.elementor-widget-button .elementor-button,.elementor-widget-icon-box,.elementor-widget-image-box,.elementor-widget-image img,.elementor-form input,.elementor-form select,.elementor-form textarea){animation:none!important;transition:none!important;transform:none!important}
}
