/* SFM Motion v1.0 — scoped to page 1990. Reveal states sit inside a
   reduced-motion guard. Uses the independent `translate` / `scale`
   properties, never `transform`, so Elementor's own rotations survive. */
html.sfm-motion{--sfm-ease:cubic-bezier(.16,1,.3,1);--sfm-ease-soft:cubic-bezier(.33,1,.68,1);--sfm-rise:18px;--sfm-dur:760ms;--sfm-delay:0ms}
@media (prefers-reduced-motion:no-preference){
html.sfm-motion .elementor-1990 .elementor-widget,
html.sfm-motion .elementor-1990 .sfm-unit{opacity:0;translate:0 var(--sfm-rise);transition:opacity var(--sfm-dur) var(--sfm-ease) var(--sfm-delay),translate var(--sfm-dur) var(--sfm-ease) var(--sfm-delay)}
html.sfm-motion .elementor-1990 .elementor-widget.sfm-in,
html.sfm-motion .elementor-1990 .sfm-unit.sfm-in{opacity:1;translate:0 0}
html.sfm-motion .elementor-1990 .elementor-widget.sfm-hold{opacity:1;translate:0 0;transition:none}
html.sfm-motion .elementor-1990 .elementor-widget-image:not(.sfm-hold){opacity:0;translate:0 0;clip-path:inset(0 0 18% 0);transition:clip-path 1150ms var(--sfm-ease) var(--sfm-delay),opacity 900ms var(--sfm-ease) var(--sfm-delay)}
html.sfm-motion .elementor-1990 .elementor-widget-image.sfm-in{opacity:1;clip-path:inset(0 0 0 0)}
html.sfm-motion .elementor-1990 .elementor-widget-image:not(.sfm-hold) img{scale:1.05;transition:scale 1500ms var(--sfm-ease) var(--sfm-delay)}
html.sfm-motion .elementor-1990 .elementor-widget-image.sfm-in img{scale:1}
html.sfm-motion .elementor-1990 .sfm-rule{opacity:1;translate:0 0;transition:scale 900ms var(--sfm-ease) var(--sfm-delay)}
html.sfm-motion .elementor-1990 .sfm-rule[data-sfm-axis="x"]{scale:0 1;transform-origin:left center}
html.sfm-motion .elementor-1990 .sfm-rule[data-sfm-axis="y"]{scale:1 0;transform-origin:center top}
html.sfm-motion .elementor-1990 .sfm-rule.sfm-in{scale:1 1}
html.sfm-motion .elementor-1990 .sfm-hero .elementor-widget,
html.sfm-motion .elementor-1990 .sfm-hero .sfm-unit{--sfm-dur:520ms;--sfm-rise:12px}
}
html.sfm-motion .elementor-1990 .elementor-button,
html.sfm-motion .elementor-1990 .elementor-field-type-submit button{transition:background-color .3s var(--sfm-ease-soft),color .3s var(--sfm-ease-soft),box-shadow .42s var(--sfm-ease),translate .42s var(--sfm-ease)}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
html.sfm-motion .elementor-1990 .elementor-button:hover,
html.sfm-motion .elementor-1990 .elementor-field-type-submit button:hover{translate:0 -2px;box-shadow:0 16px 34px rgba(0,0,0,.24)}
}

/* ==========================================================================
   Hover system v1.1 — four groups.
   The lift is done with `top` rather than `translate` so it can never
   collide with the reveal transition, which owns `translate` on the same
   elements. Where a base `transition` had to be declared on a revealing
   element, the reveal's own transitions are restated so entrance timing
   is preserved. Movement sits behind a reduced-motion guard; colour and
   shadow changes do not.
   ========================================================================== */

@media (hover:hover){

/* --- Stats band: the four figure blocks ------------------------------- */
html.sfm-motion .elementor-1990 .e-con.elementor-element-53a78d6,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d00a0ae,
html.sfm-motion .elementor-1990 .e-con.elementor-element-1a25ba3,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d3c10cc{position:relative;top:0;background-color:rgba(255,255,255,0);transition:opacity var(--sfm-dur) var(--sfm-ease) var(--sfm-delay),translate var(--sfm-dur) var(--sfm-ease) var(--sfm-delay),top 420ms var(--sfm-ease),background-color 420ms var(--sfm-ease)}
html.sfm-motion .elementor-1990 .e-con.elementor-element-53a78d6:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d00a0ae:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-1a25ba3:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d3c10cc:hover{background-color:rgba(255,255,255,.05)}

/* --- Comparison table: row highlight --------------------------------- */
html.sfm-motion .elementor-1990 .e-con.elementor-element-4602b2b,
html.sfm-motion .elementor-1990 .e-con.elementor-element-c220ba6,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d7a8a1a,
html.sfm-motion .elementor-1990 .e-con.elementor-element-b62aa64,
html.sfm-motion .elementor-1990 .e-con.elementor-element-a19cca3,
html.sfm-motion .elementor-1990 .e-con.elementor-element-85f0b92,
html.sfm-motion .elementor-1990 .e-con.elementor-element-e519642,
html.sfm-motion .elementor-1990 .e-con.elementor-element-7679a6e{transition:background-color 320ms var(--sfm-ease-soft)}
html.sfm-motion .elementor-1990 .elementor-element-b61f6ff:hover .elementor-element-4602b2b,
html.sfm-motion .elementor-1990 .elementor-element-171b986:hover .elementor-element-c220ba6,
html.sfm-motion .elementor-1990 .elementor-element-6695a24:hover .elementor-element-d7a8a1a,
html.sfm-motion .elementor-1990 .elementor-element-38cc36c:hover .elementor-element-b62aa64{background-color:#EAE8DE}
html.sfm-motion .elementor-1990 .elementor-element-b61f6ff:hover .elementor-element-a19cca3,
html.sfm-motion .elementor-1990 .elementor-element-171b986:hover .elementor-element-85f0b92,
html.sfm-motion .elementor-1990 .elementor-element-6695a24:hover .elementor-element-e519642,
html.sfm-motion .elementor-1990 .elementor-element-38cc36c:hover .elementor-element-7679a6e{background-color:#FCFBF8}

/* --- Three steps: tint the step, answer with the coral numeral -------- */
html.sfm-motion .elementor-1990 .e-con.elementor-element-afae7c1,
html.sfm-motion .elementor-1990 .e-con.elementor-element-ab92c19,
html.sfm-motion .elementor-1990 .e-con.elementor-element-bdae8a1{transition:background-color 380ms var(--sfm-ease-soft)}
html.sfm-motion .elementor-1990 .e-con.elementor-element-afae7c1:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-ab92c19:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-bdae8a1:hover{background-color:#FBFAF6}
html.sfm-motion .elementor-1990 .e-con.elementor-element-7fe7aa0,
html.sfm-motion .elementor-1990 .e-con.elementor-element-ed33807,
html.sfm-motion .elementor-1990 .e-con.elementor-element-e57e327{box-shadow:0 8px 20px rgba(244,59,89,0);transition:scale 420ms var(--sfm-ease),box-shadow 420ms var(--sfm-ease)}
html.sfm-motion .elementor-1990 .elementor-element-afae7c1:hover .elementor-element-7fe7aa0,
html.sfm-motion .elementor-1990 .elementor-element-ab92c19:hover .elementor-element-ed33807,
html.sfm-motion .elementor-1990 .elementor-element-bdae8a1:hover .elementor-element-e57e327{box-shadow:0 8px 20px rgba(244,59,89,.32)}

/* --- Specialist cards ------------------------------------------------- */
html.sfm-motion .elementor-1990 .e-con.elementor-element-7b80235,
html.sfm-motion .elementor-1990 .e-con.elementor-element-dec200a,
html.sfm-motion .elementor-1990 .e-con.elementor-element-0da9e42,
html.sfm-motion .elementor-1990 .e-con.elementor-element-c2808fe{position:relative;top:0;box-shadow:0 18px 40px rgba(0,0,0,0);transition:opacity var(--sfm-dur) var(--sfm-ease) var(--sfm-delay),translate var(--sfm-dur) var(--sfm-ease) var(--sfm-delay),top 420ms var(--sfm-ease),box-shadow 420ms var(--sfm-ease),border-color 420ms var(--sfm-ease)}
html.sfm-motion .elementor-1990 .e-con.elementor-element-7b80235:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-dec200a:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-0da9e42:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-c2808fe:hover{box-shadow:0 18px 40px rgba(0,0,0,.10);border-color:rgba(244,59,89,.34)}

}

/* --- Movement only: suppressed for reduced-motion users --------------- */
@media (hover:hover) and (prefers-reduced-motion:no-preference){

html.sfm-motion .elementor-1990 .e-con.elementor-element-53a78d6:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d00a0ae:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-1a25ba3:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-d3c10cc:hover{top:-3px}

html.sfm-motion .elementor-1990 .elementor-element-afae7c1:hover .elementor-element-7fe7aa0,
html.sfm-motion .elementor-1990 .elementor-element-ab92c19:hover .elementor-element-ed33807,
html.sfm-motion .elementor-1990 .elementor-element-bdae8a1:hover .elementor-element-e57e327{scale:1.07}

html.sfm-motion .elementor-1990 .e-con.elementor-element-7b80235:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-dec200a:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-0da9e42:hover,
html.sfm-motion .elementor-1990 .e-con.elementor-element-c2808fe:hover{top:-6px}

}
