/*!
 * Themeasy — Effects CSS
 *
 * Motion and interaction layer: animations, hover effects,
 * scroll text, and keyframe definitions.
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.tms-text-animation{transition:unset}.tms-text-animation.tms-animation--hidden{opacity:0;pointer-events:none;transition:unset}.tms-text-animation .char,.tms-text-animation .word{display:inline-block}.tms-block-animation{transition:unset}.tms-block-animation.tms-animation--hidden,.tms-animation.tms-animation--hidden .tms-animation__target,.tms-animation.tms-animation--hidden>.elementor-element,.tms-animation.tms-animation--hidden>.e-con-inner>.elementor-element{opacity:0;pointer-events:none;transition:unset}.tms-hover-animation .tms-animation__target{transition:unset}body:not(.tms-elementor-preview) .tms-icon-animation[data-animation=dash] :-webkit-any(path,line,circle,rect,polyline,polygon){stroke-dasharray:9999;stroke-dashoffset:9999px}body:not(.tms-elementor-preview) .tms-icon-animation[data-animation=dash] :is(path,line,circle,rect,polyline,polygon){stroke-dasharray:9999;stroke-dashoffset:9999px}.tms-cursor-interaction{background:var(--tms-button-text-color);width:100px;height:100px;font-size:1rem;font-weight:var(--tms-bold-font-weight);text-align:center;color:var(--tms-button-bg-color);pointer-events:none;opacity:0;z-index:9999;border-radius:50%;justify-content:center;align-items:center;margin-top:-50px;margin-left:-50px;transition:transform .2s ease-out,opacity .2s ease-out;display:flex;position:fixed;top:0;left:0;transform:scale(0);box-shadow:0 7px 29px #64646f33}.tms-page-reveal{z-index:99999;pointer-events:none;will-change:transform, opacity;background-color:#000;animation:1s 3s forwards tms-page-reveal-failsafe;position:fixed;top:0;bottom:0;left:0;right:0}.tms-page-reveal__wave{width:100%;height:120px;display:block;position:absolute;top:100%;left:0}.tms-page-reveal__wave path{fill:#000}:root{--tms-hover-duration:.45s;--tms-hover-duration-fast:.25s;--tms-hover-ease:cubic-bezier(.215, .61, .355, 1);--tms-hover-ease-snappy:cubic-bezier(.2, .9, .2, 1);--tms-hover-scale:1.08;--tms-hover-tilt:3deg;--tms-hover-translate:10px;--tms-hover-shadow:0 18px 45px #0000002e;--tms-hover-shadow-soft:0 14px 35px #00000024;--tms-hover-dim:.88;--tms-hover-brighten:1.06}.tms-hover{display:inline-block;position:relative;transform:translateZ(0)}.tms-hover__target{transition:transform var(--tms-hover-duration) var(--tms-hover-ease), opacity var(--tms-hover-duration) var(--tms-hover-ease), filter var(--tms-hover-duration) var(--tms-hover-ease), box-shadow var(--tms-hover-duration) var(--tms-hover-ease);will-change:transform, opacity, filter;display:block;transform:translateZ(0)}.tms-hover__overlay{pointer-events:none;opacity:0;transition:opacity var(--tms-hover-duration) var(--tms-hover-ease);position:absolute;top:0;bottom:0;left:0;right:0}.tms-hover--overlay .tms-hover__overlay{background:linear-gradient(#0000 35%,#0000008c 100%)}.tms-hover--overlay:hover .tms-hover__overlay{opacity:1}.tms-hover--overlay:focus-visible .tms-hover__overlay{opacity:1}.tms-hover--zoom{overflow:hidden}.tms-hover--zoom:hover .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale))}.tms-hover--zoom:focus-visible .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale))}.tms-hover--zoom-dim{overflow:hidden}.tms-hover--zoom-dim:hover .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale));opacity:var(--tms-hover-dim)}.tms-hover--zoom-dim:focus-visible .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale));opacity:var(--tms-hover-dim)}.tms-hover--zoom-brighten{overflow:hidden}.tms-hover--zoom-brighten:hover .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale));filter:brightness(var(--tms-hover-brighten))}.tms-hover--zoom-brighten:focus-visible .tms-hover__target{-webkit-transform:scale(var(--tms-hover-scale));transform:scale(var(--tms-hover-scale));filter:brightness(var(--tms-hover-brighten))}.tms-hover--lift:hover .tms-hover__target{box-shadow:var(--tms-hover-shadow);transform:translateY(-8px)}.tms-hover--lift:focus-visible .tms-hover__target{box-shadow:var(--tms-hover-shadow);transform:translateY(-8px)}.tms-hover--lift-soft:hover .tms-hover__target{box-shadow:var(--tms-hover-shadow-soft);transform:translateY(-6px)}.tms-hover--lift-soft:focus-visible .tms-hover__target{box-shadow:var(--tms-hover-shadow-soft);transform:translateY(-6px)}.tms-hover--slide-up{overflow:hidden}.tms-hover--slide-up:hover .tms-hover__target{-webkit-transform:translate3d(0, calc(var(--tms-hover-translate) * -1), 0);transform:translate3d(0, calc(var(--tms-hover-translate) * -1), 0)}.tms-hover--slide-up:focus-visible .tms-hover__target{-webkit-transform:translate3d(0, calc(var(--tms-hover-translate) * -1), 0);transform:translate3d(0, calc(var(--tms-hover-translate) * -1), 0)}.tms-hover--tilt:hover .tms-hover__target{transform:perspective(900px)rotateX(2deg)rotateY(-2deg)translateY(-4px)}.tms-hover--tilt:focus-visible .tms-hover__target{transform:perspective(900px)rotateX(2deg)rotateY(-2deg)translateY(-4px)}.tms-hover--rotate:hover .tms-hover__target{transform:rotate(1.25deg)scale(1.02)}.tms-hover--rotate:focus-visible .tms-hover__target{transform:rotate(1.25deg)scale(1.02)}.tms-hover--focus:hover .tms-hover__target{filter:saturate(1.05)contrast(1.04);transform:scale(1.05)}.tms-hover--focus:focus-visible .tms-hover__target{filter:saturate(1.05)contrast(1.04);transform:scale(1.05)}.tms-hover--shine{overflow:hidden}.tms-hover__shine{pointer-events:none;opacity:0;transition:transform var(--tms-hover-duration) var(--tms-hover-ease), opacity var(--tms-hover-duration) var(--tms-hover-ease);background:linear-gradient(90deg,#fff0 0%,#ffffff38 45%,#fff0 70%);position:absolute;top:-40%;bottom:-40%;left:-40%;right:-40%;transform:translate(-30%)rotate(12deg)}.tms-hover--shine:hover .tms-hover__shine{opacity:1;transform:translate(30%)rotate(12deg)}.tms-hover--shine:focus-visible .tms-hover__shine{opacity:1;transform:translate(30%)rotate(12deg)}.tms-hover__underline{display:inline-block;position:relative}.tms-hover__underline:after{content:"";width:0;height:2px;transition:width var(--tms-hover-duration-fast) var(--tms-hover-ease);background:currentColor;position:absolute;bottom:-.12em;left:0}.tms-hover--underline:hover .tms-hover__underline:after{width:100%}.tms-hover--underline:focus-visible .tms-hover__underline:after{width:100%}.tms-hover__icon{transition:transform var(--tms-hover-duration-fast) var(--tms-hover-ease);display:inline-flex}.tms-hover--icon-nudge:hover .tms-hover__icon{transform:translate(6px)}.tms-hover--icon-nudge:focus-visible .tms-hover__icon{transform:translate(6px)}.tms-vertical-scroll-text,.tms-horizontal-scroll-text{grid-template:"stack"1fr/1fr;place-items:stretch stretch;width:-moz-fit-content;width:fit-content;display:inline-grid;position:relative;overflow:hidden}.tms-vertical-scroll-text>.tms-scroll-text--visible,.tms-vertical-scroll-text>.tms-scroll-text--hidden,.tms-horizontal-scroll-text>.tms-scroll-text--visible,.tms-horizontal-scroll-text>.tms-scroll-text--hidden{grid-area:1/1;justify-content:center;place-self:stretch stretch;align-items:center;gap:7.5px;display:flex}.tms-vertical-scroll-text .tms-scroll-text--visible{transform:translateY(0)}.tms-vertical-scroll-text .tms-scroll-text--hidden{transform:translateY(200%)}.tms-horizontal-scroll-text .tms-scroll-text--visible{transform:translate(0)}.tms-horizontal-scroll-text .tms-scroll-text--hidden{transform:translate(200%)}.tms-gallery-item--hidden{display:none!important}.tms-image-gallery[data-gallery-filter] .tms-image-group__item{-webkit-backface-visibility:hidden;backface-visibility:hidden}.tms-image-gallery[data-gallery-filter].tms-gallery--animating .tms-image-group__item{will-change:transform, opacity}.tms-image-gallery[data-gallery-filter] .nav-link{cursor:pointer;-webkit-user-select:none;user-select:none}@keyframes tms-rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes tms-pulse-opacity{0%{opacity:1}50%{opacity:.4}to{opacity:1}}@keyframes tms-loading-bar-slide{0%{transform:translate(-100%)scaleX(.2)}50%{transform:translate(0%,0)scaleX(.5)}to{transform:translate(100%)scaleX(1)}}@keyframes tms-underlinenderline-grow{0%{width:0}to{width:100%}}@keyframes tms-pulse-scale{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes tms-bg-color-cycle{0%{background-color:#ff6b6b}25%{background-color:#ffb400}50%{background-color:#5eead4}75%{background-color:#4f46e5}to{background-color:#ff6b6b}}@keyframes tms-gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes tms-gradient-color-cycle{0%{background-image:linear-gradient(45deg,#ff6b6b 0%,#ffb400 75%)}25%{background-image:linear-gradient(45deg,#ffb400 0%,#5eead4 75%)}50%{background-image:linear-gradient(45deg,#5eead4 0%,#4f46e5 75%)}75%{background-image:linear-gradient(45deg,#4f46e5 0%,#ff6b6b 75%)}to{background-image:linear-gradient(45deg,#ff6b6b 0%,#ffb400 75%)}}@keyframes tms-slide-up{0%{transform:translate(0,0)}to{transform:translateY(-50px)}}@keyframes tms-slide-down{0%{transform:translateY(-50px)}to{transform:translate(0,0)}}@keyframes tms-fade-in-up{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translate(0,0)}}@keyframes tms-fade-out-down{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translateY(25px)}}@keyframes tms-fade-in-down{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translate(0,0)}}@keyframes tms-fade-in-left{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0,0)}}@keyframes tms-fade-in-right{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0,0)}}@keyframes tms-fade-out-up{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translateY(-25px)}}@keyframes tms-fade-out-left{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(-25px)}}@keyframes tms-fade-out-right{0%{opacity:1;transform:translate(0,0)}to{opacity:0;transform:translate(25px)}}@keyframes tms-zoom-in{0%{opacity:0;transform:translate(0,0)scale(.96)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes tms-zoom-out{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translate(0,0)scale(.96)}}@keyframes tms-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes tms-scale-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.92)}}@keyframes tms-fade-blur-in{0%{opacity:0;filter:blur(10px);transform:translateY(12px)}to{opacity:1;filter:blur();transform:translate(0,0)}}@keyframes tms-fade-blur-out{0%{opacity:1;filter:blur();transform:translate(0,0)}to{opacity:0;filter:blur(10px);transform:translateY(12px)}}@keyframes tms-rotate-in{0%{opacity:0;transform-origin:50%;transform:rotate(-6deg)scale(.98)}to{opacity:1;transform-origin:50%;transform:rotate(0)scale(1)}}@keyframes tms-rotate-out{0%{opacity:1;transform-origin:50%;transform:rotate(0)scale(1)}to{opacity:0;transform-origin:50%;transform:rotate(6deg)scale(.98)}}@keyframes tms-bounce-in-up{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(3000px)scaleY(5)}60%{opacity:1;transform:translateY(-20px)scaleY(.9)}75%{transform:translateY(10px)scaleY(.95)}90%{transform:translateY(-5px)scaleY(.985)}to{transform:translate(0,0)}}@keyframes tms-bounce-out-down{20%{transform:translateY(10px)scaleY(.985)}40%,45%{opacity:1;transform:translateY(-20px)scaleY(.9)}to{opacity:0;transform:translateY(2000px)scaleY(3)}}@keyframes tms-pop{0%{transform:scale(.98)}60%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes tms-shake-x{0%,to{transform:translate(0,0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}@keyframes tms-float-y{0%,to{transform:translate(0,0)}50%{transform:translateY(-10px)}}@keyframes tms-page-reveal-failsafe{0%{opacity:1}to{opacity:0;visibility:hidden}}