/* Shared typed channels allow independent animations to compose without overwriting imported transform/filter. */
@property --fx-hover-x{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-hover-y{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-hover-scale{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-hover-angle-current{syntax:"<angle>";inherits:true;initial-value:0deg}
@property --fx-motion-x{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-motion-y{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-motion-size{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-motion-angle-current{syntax:"<angle>";inherits:true;initial-value:0deg}
@property --fx-entry-x{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-entry-y{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-entry-size{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-entry-angle-current{syntax:"<angle>";inherits:true;initial-value:0deg}
@property --fx-entry-opacity{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-entry-blur{syntax:"<length>";inherits:true;initial-value:0px}
@property --fx-hover-brightness{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-hover-opacity{syntax:"<number>";inherits:true;initial-value:1}
@property --fx-glow-alpha{syntax:"<number>";inherits:true;initial-value:.3}
@property --fx-shadow-y{syntax:"<length>";inherits:true;initial-value:4px}
@property --fx-shadow-blur{syntax:"<length>";inherits:true;initial-value:12px}
@property --fx-border-angle{syntax:"<angle>";inherits:true;initial-value:0deg}
.fx-element{--fx-hover-x:0px;--fx-hover-y:0px;--fx-hover-scale:1;--fx-hover-angle-current:0deg;--fx-motion-x:0px;--fx-motion-y:0px;--fx-motion-size:1;--fx-motion-angle-current:0deg;--fx-entry-x:0px;--fx-entry-y:0px;--fx-entry-size:1;--fx-entry-angle-current:0deg;--fx-entry-opacity:1;--fx-entry-blur:0px;--fx-hover-brightness:1;--fx-hover-opacity:1;--fx-glow-alpha:.3;--fx-shadow-y:4px;--fx-shadow-blur:12px;--fx-border-angle:0deg;--fx-motion-animation:none;--fx-entry-animation:none;--fx-glow-animation:none;--fx-shadow-animation:none;--fx-pointer-x:0px;--fx-pointer-y:0px;--fx-tilt-x:0deg;--fx-tilt-y:0deg;
 translate:calc(var(--fx-hover-x) + var(--fx-motion-x) + var(--fx-entry-x) + var(--fx-pointer-x)) calc(var(--fx-hover-y) + var(--fx-motion-y) + var(--fx-entry-y) + var(--fx-pointer-y));
 scale:calc(var(--fx-hover-scale) * var(--fx-motion-size) * var(--fx-entry-size));rotate:calc(var(--fx-hover-angle-current) + var(--fx-motion-angle-current) + var(--fx-entry-angle-current));
 transition:--fx-hover-x var(--fx-hover-duration,.25s) var(--fx-hover-ease,ease),--fx-hover-y var(--fx-hover-duration,.25s) var(--fx-hover-ease,ease),--fx-hover-scale var(--fx-hover-duration,.25s) var(--fx-hover-ease,ease),--fx-hover-angle-current var(--fx-hover-duration,.25s) var(--fx-hover-ease,ease),--fx-hover-brightness var(--fx-hoverFilter-duration,.25s),--fx-hover-opacity var(--fx-hoverFilter-duration,.25s),transform var(--fx-interactive-smoothing,250ms) ease-out,--fx-pointer-x var(--fx-interactive-smoothing,250ms),--fx-pointer-y var(--fx-interactive-smoothing,250ms);
 animation:var(--fx-motion-animation) var(--fx-motion-duration,8s) var(--fx-motion-ease,ease) var(--fx-motion-delay,0s) var(--fx-motion-repeat,infinite) both,
 var(--fx-entry-animation) var(--fx-entry-duration,.6s) var(--fx-entry-ease,ease) var(--fx-entry-delay,0s) 1 both,
 var(--fx-glow-animation) var(--fx-glow-duration,8s) var(--fx-glow-ease,ease) var(--fx-glow-delay,0s) var(--fx-glow-repeat,infinite) both,
 var(--fx-shadow-animation) var(--fx-shadow-duration,8s) var(--fx-shadow-ease,ease) var(--fx-shadow-delay,0s) var(--fx-shadow-repeat,infinite) both}
.fx-element:not(.source-layout-node){position:relative}
.fx-aura-layer,.fx-shine-layer,.fx-border-layer,.fx-light-layer{position:absolute;inset:0;border-radius:inherit;pointer-events:none!important;user-select:none;z-index:1}
.fx-aura-layer{box-shadow:0 var(--fx-shadow-y) var(--fx-shadow-blur) rgb(0 0 0 / .12);opacity:0;transition:opacity .3s,box-shadow .3s}
.fx-shine-layer{overflow:hidden;opacity:calc(var(--fx-shine-strength,1) * .35)}
.fx-shine-layer::before{content:'';position:absolute;inset:-35%;background:linear-gradient(var(--fx-shine-angle),transparent calc(50% - var(--fx-shine-width)/2),var(--fx-shine-color) 50%,transparent calc(50% + var(--fx-shine-width)/2));animation:fx-shine var(--fx-shine-duration,8s) var(--fx-shine-ease,ease) var(--fx-shine-delay,0s) var(--fx-shine-repeat,infinite) var(--fx-shine-direction,normal) both}
.fx-reflection .fx-shine-layer{opacity:.15}
.fx-border-layer{padding:2px;background:linear-gradient(135deg,var(--fx-border-color),var(--fx-border-color2));mask:linear-gradient(#fff 0 0) content-box exclude,linear-gradient(#fff 0 0);-webkit-mask:linear-gradient(#fff 0 0) content-box,-webkit-linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.fx-glow-border .fx-border-layer{background:var(--fx-border-color);filter:drop-shadow(0 0 var(--fx-border-blur) var(--fx-border-color))}
.fx-animated-border .fx-border-layer,.fx-running-light .fx-border-layer{background:conic-gradient(from var(--fx-border-angle),transparent 0deg,var(--fx-border-color) 65deg,var(--fx-border-color2) 100deg,transparent 145deg);animation:fx-border-turn var(--fx-border-duration,8s) linear var(--fx-border-delay,0s) var(--fx-border-repeat,infinite)}
.fx-running-light .fx-border-layer{background:conic-gradient(from var(--fx-border-angle),transparent 0deg 290deg,var(--fx-border-color) 325deg,transparent 360deg)}
.fx-pulse-border .fx-border-layer{animation:fx-border-pulse var(--fx-border-duration,8s) ease-in-out var(--fx-border-delay,0s) var(--fx-border-repeat,infinite)}
.fx-pulse-glow,.fx-neon-pulse{--fx-glow-animation:fx-glow-breathe}
.fx-pulse-glow .fx-aura-layer,.fx-neon-pulse .fx-aura-layer{opacity:var(--fx-glow-alpha);box-shadow:0 0 var(--fx-glow-blur) var(--fx-glow-color)}
.fx-neon-pulse .fx-aura-layer{outline:1px solid var(--fx-glow-color);box-shadow:0 0 6px var(--fx-glow-color),0 0 var(--fx-glow-blur) var(--fx-glow-color)}
.fx-gradient-glow .fx-aura-layer{opacity:.35;box-shadow:0 0 var(--fx-gradient-blur) var(--fx-gradient-color),0 0 8px var(--fx-gradient-color2)}
.fx-animated-shadow{--fx-shadow-animation:fx-shadow-breathe}
.fx-breathing-glow{--fx-shadow-animation:fx-shadow-breathe}
.fx-animated-shadow .fx-aura-layer{opacity:.6;box-shadow:0 var(--fx-shadow-y) var(--fx-shadow-blur) var(--fx-shadow-soft)}
.fx-breathing-glow .fx-aura-layer{opacity:.5;box-shadow:0 0 var(--fx-shadow-blur) var(--fx-shadow-color)}
.fx-gradient-target{background-size:300% 300%!important;animation:var(--fx-gradient-animation,fx-gradient-x) var(--fx-gradient-duration,10s) var(--fx-gradient-ease,ease) var(--fx-gradient-delay,0s) var(--fx-gradient-repeat,infinite) var(--fx-gradient-direction,alternate) both}
/* A native container paints on its model: add gradient as a fifth animation. */
.fx-element.fx-gradient-target{animation-name:var(--fx-motion-animation),var(--fx-entry-animation),var(--fx-glow-animation),var(--fx-shadow-animation),var(--fx-gradient-animation);animation-duration:var(--fx-motion-duration,8s),var(--fx-entry-duration,.6s),var(--fx-glow-duration,8s),var(--fx-shadow-duration,8s),var(--fx-gradient-duration,10s);animation-timing-function:var(--fx-motion-ease,ease),var(--fx-entry-ease,ease),var(--fx-glow-ease,ease),var(--fx-shadow-ease,ease),var(--fx-gradient-ease,ease);animation-iteration-count:var(--fx-motion-repeat,infinite),1,var(--fx-glow-repeat,infinite),var(--fx-shadow-repeat,infinite),var(--fx-gradient-repeat,infinite);animation-direction:normal,normal,normal,normal,var(--fx-gradient-direction,alternate);animation-delay:var(--fx-motion-delay,0s),var(--fx-entry-delay,0s),var(--fx-glow-delay,0s),var(--fx-shadow-delay,0s),var(--fx-gradient-delay,0s)}
.fx-float,.fx-vertical{--fx-motion-animation:fx-float}
.fx-breathe{--fx-motion-animation:fx-breathe}
.fx-pulse{--fx-motion-animation:fx-pulse}
.fx-swing{--fx-motion-animation:fx-swing}
.fx-lateral{--fx-motion-animation:fx-lateral}
.fx-element[data-fx-entry]:not(.fx-entered){--fx-entry-opacity:0}
.fx-entered.fx-fade-in{--fx-entry-animation:fx-fade-in}
.fx-entered.fx-slide-left{--fx-entry-animation:fx-slide-left}
.fx-entered.fx-slide-right{--fx-entry-animation:fx-slide-right}
.fx-entered.fx-slide-top{--fx-entry-animation:fx-slide-top}
.fx-entered.fx-slide-bottom{--fx-entry-animation:fx-slide-bottom}
.fx-entered.fx-zoom-in{--fx-entry-animation:fx-zoom-in}
.fx-entered.fx-zoom-out{--fx-entry-animation:fx-zoom-out}
.fx-entered.fx-bounce-in{--fx-entry-animation:fx-bounce-in}
.fx-entered.fx-blur-in{--fx-entry-animation:fx-blur-in}
.fx-entered.fx-rotate-in{--fx-entry-animation:fx-rotate-in}
.fx-entered.fx-scale-fade{--fx-entry-animation:fx-zoom-in}
/* In editing, entry effects never hide content; replay is an explicit action. */
.fx-element[data-fx-editing=true]:not(.fx-test-entry){--fx-entry-animation:none;--fx-entry-opacity:1}
.fx-light-layer{opacity:0;overflow:hidden;transition:opacity .35s; background:radial-gradient(circle at var(--fx-mouse-x,50%) var(--fx-mouse-y,50%),var(--fx-pointer-soft),transparent 65%)}
.fx-interactive-reflection .fx-light-pointer{background:linear-gradient(115deg,transparent 30%,var(--fx-pointer-soft) 50%,transparent 75%);transform:translate(calc((var(--fx-mouse-x,50%) - 50%) * .2),0)}
.fx-pointer-active>.fx-light-pointer{opacity:1}
.fx-image-clip{display:block;overflow:hidden;max-width:100%;line-height:0}
.fx-image-clip>.site-image{display:block;transition:transform .4s ease}
.fx-element[data-fx-image] .site-image{transition:filter .35s,transform .4s}
.fx-image-unblur{--fx-image-active-filter:blur(3px)}
.fx-image-color{--fx-image-active-filter:grayscale(1)}
.fx-image-brightness{--fx-image-active-filter:brightness(var(--fx-image-filter))}
.fx-image-saturation{--fx-image-active-filter:saturate(var(--fx-image-filter))}
.fx-image-contrast{--fx-image-active-filter:contrast(var(--fx-image-filter))}
.fx-light-image{background:var(--fx-image-soft)}
@media(hover:hover) and (pointer:fine){
 .fx-scale-up:hover{--fx-hover-scale:var(--fx-hover-scale-up)}
 .fx-scale-down:hover{--fx-hover-scale:var(--fx-hover-scale-down)}
 .fx-lift:hover{--fx-hover-y:calc(var(--fx-hover-distance) * -1)}
 .fx-sink:hover{--fx-hover-y:var(--fx-hover-distance)}
 .fx-tilt-left:hover{--fx-hover-angle-current:calc(var(--fx-hover-angle) * -1)}
 .fx-tilt-right:hover{--fx-hover-angle-current:var(--fx-hover-angle)}
 .fx-hover-float:hover{--fx-hover-y:calc(var(--fx-hover-distance) * -1);--fx-hover-scale:var(--fx-hover-scale-up)}
 .fx-lift:hover>.fx-aura-layer,.fx-hover-float:hover>.fx-aura-layer{opacity:.5;box-shadow:0 12px 24px #0003}
 .fx-hover-glow:hover>.fx-aura-layer{opacity:1;box-shadow:0 0 var(--fx-hoverLight-blur) var(--fx-hoverLight-soft)}
 .fx-hover-border:hover>.fx-light-hoverLight{opacity:1;box-shadow:inset 0 0 0 1px var(--fx-hoverLight-color),inset 0 0 12px var(--fx-hoverLight-soft);background:transparent}
 .fx-hover-fill>.fx-light-hoverLight{background:var(--fx-hoverLight-soft);transform:scaleX(0);transform-origin:left;transition:transform var(--fx-hoverLight-duration,.25s),opacity .25s}
 .fx-hover-fill:hover>.fx-light-hoverLight{opacity:1;transform:scaleX(1)}
 .fx-hover-vibrate:hover{animation:fx-vibrate .5s ease-in-out 1}
 .fx-hover-opacity:hover{--fx-hover-opacity:var(--fx-hover-opacity-value)}
 .fx-hover-brightness:hover{--fx-hover-brightness:var(--fx-hover-brightness-value)}
 .fx-hover-color:hover>.site-heading,.fx-hover-color:hover>.site-text,.fx-hover-color:hover>.site-button{color:var(--fx-hoverColor-color)!important;transition:color var(--fx-hoverColor-duration,.25s)}
 .fx-image-zoom:hover .site-image{transform:scale(var(--fx-image-zoom))}
 .fx-image-move:hover .site-image{transform:translateX(3px) scale(1.04)}
 .fx-image-unblur:hover,.fx-image-color:hover{--fx-image-active-filter:brightness(1)}
 .fx-image-gray:hover{--fx-image-active-filter:grayscale(1)}
 .fx-image-overlay:hover>.fx-light-image{opacity:1}
}
@keyframes fx-shine{0%,15%{transform:translateX(-90%);opacity:0}25%{opacity:1}70%,100%{transform:translateX(90%);opacity:0}}
@keyframes fx-border-turn{to{--fx-border-angle:360deg}}
@keyframes fx-border-pulse{0%,100%{opacity:.3}50%{opacity:.8}}
@keyframes fx-glow-breathe{0%,100%{--fx-glow-alpha:var(--fx-glow-floor,.12)}50%{--fx-glow-alpha:var(--fx-glow-ceiling,.45)}}
@keyframes fx-shadow-breathe{0%,100%{--fx-shadow-y:4px;--fx-shadow-blur:10px}50%{--fx-shadow-y:var(--fx-shadow-distance,9px);--fx-shadow-blur:var(--fx-shadow-spread,24px)}}
@keyframes fx-float{0%,100%{--fx-motion-y:0px}50%{--fx-motion-y:calc(var(--fx-motion-distance) * -1)}}
@keyframes fx-breathe{0%,100%{--fx-motion-size:1}50%{--fx-motion-size:var(--fx-motion-scale)}}
@keyframes fx-pulse{0%,100%{--fx-motion-size:1}45%{--fx-motion-size:var(--fx-motion-scale)}65%{--fx-motion-size:1}}
@keyframes fx-swing{0%,100%{--fx-motion-angle-current:0deg}25%{--fx-motion-angle-current:calc(var(--fx-motion-angle) * -1)}75%{--fx-motion-angle-current:var(--fx-motion-angle)}}
@keyframes fx-lateral{0%,100%{--fx-motion-x:0px}50%{--fx-motion-x:var(--fx-motion-distance)}}
@keyframes fx-fade-in{from{--fx-entry-opacity:0}to{--fx-entry-opacity:1}}
@keyframes fx-slide-left{from{--fx-entry-x:calc(var(--fx-entry-distance) * -1);--fx-entry-opacity:0}to{--fx-entry-x:0px;--fx-entry-opacity:1}}
@keyframes fx-slide-right{from{--fx-entry-x:var(--fx-entry-distance);--fx-entry-opacity:0}to{--fx-entry-x:0px;--fx-entry-opacity:1}}
@keyframes fx-slide-top{from{--fx-entry-y:calc(var(--fx-entry-distance) * -1);--fx-entry-opacity:0}to{--fx-entry-y:0px;--fx-entry-opacity:1}}
@keyframes fx-slide-bottom{from{--fx-entry-y:var(--fx-entry-distance);--fx-entry-opacity:0}to{--fx-entry-y:0px;--fx-entry-opacity:1}}
@keyframes fx-zoom-in{from{--fx-entry-size:var(--fx-entry-small);--fx-entry-opacity:0}to{--fx-entry-size:1;--fx-entry-opacity:1}}
@keyframes fx-zoom-out{from{--fx-entry-size:var(--fx-entry-large);--fx-entry-opacity:0}to{--fx-entry-size:1;--fx-entry-opacity:1}}
@keyframes fx-bounce-in{0%{--fx-entry-y:24px;--fx-entry-opacity:0}60%{--fx-entry-y:-4px;--fx-entry-opacity:1}80%{--fx-entry-y:2px}100%{--fx-entry-y:0px;--fx-entry-opacity:1}}
@keyframes fx-blur-in{from{--fx-entry-blur:6px;--fx-entry-opacity:0}to{--fx-entry-blur:0px;--fx-entry-opacity:1}}
@keyframes fx-rotate-in{from{--fx-entry-angle-current:calc(var(--fx-entry-angle) * -1);--fx-entry-opacity:0}to{--fx-entry-angle-current:0deg;--fx-entry-opacity:1}}
@keyframes fx-gradient-x{from{background-position:0% 50%}to{background-position:100% 50%}}
@keyframes fx-gradient-y{from{background-position:50% 0%}to{background-position:50% 100%}}
@keyframes fx-gradient-diagonal{from{background-position:0% 0%}to{background-position:100% 100%}}
@keyframes fx-gradient-orbit{0%,100%{background-position:0% 50%}25%{background-position:50% 0%}50%{background-position:100% 50%}75%{background-position:50% 100%}}
@keyframes fx-vibrate{0%,100%{--fx-hover-x:0px}25%,75%{--fx-hover-x:1px}50%{--fx-hover-x:-1px}}
/* Editing gestures freeze channels instead of altering the model. */
.editor-canvas .fx-element:is(.interacting,.dragging):not(.fx-test-entry),.editor-canvas .fx-element:has([contenteditable=true],[contenteditable=plaintext-only]){translate:0 0!important;scale:1!important;rotate:0deg!important;animation-play-state:paused!important;--fx-tilt-x:0deg!important;--fx-tilt-y:0deg!important}
.fx-paused .fx-element,.fx-paused .fx-element *,.fx-paused .fx-element *::before,.fx-offscreen,.fx-offscreen *,.fx-offscreen *::before{animation-play-state:paused!important;--fx-tilt-x:0deg!important;--fx-tilt-y:0deg!important}
.fx-paused .fx-element{translate:0 0!important;scale:1!important;rotate:0deg!important;--fx-entry-opacity:1!important;--fx-hover-brightness:1!important;--fx-hover-opacity:1!important;--fx-tilt-x:0deg!important;--fx-tilt-y:0deg!important}
@media(hover:none),(pointer:coarse){.fx-light-pointer{display:none}.fx-element{--fx-pointer-x:0px!important;--fx-pointer-y:0px!important;--fx-tilt-x:0deg!important;--fx-tilt-y:0deg!important;--fx-motion-distance:4px;--fx-motion-angle:2deg}}
@media(prefers-reduced-motion:reduce){
 .fx-element,.fx-element *,.fx-element *::before{animation:none!important;transition:none!important}
 .fx-element{translate:0 0!important;scale:1!important;rotate:0deg!important;--fx-entry-opacity:1!important;--fx-hover-brightness:1!important;--fx-hover-opacity:1!important;--fx-entry-blur:0px!important;--fx-tilt-x:0deg!important;--fx-tilt-y:0deg!important}
 .fx-shine-layer,.fx-light-pointer{display:none}
}
/* Glow, hover depth and animated shadows contribute separate shadows to one
   decorative layer, rather than overwriting each other's box-shadow. */
.fx-element{--fx-static-aura:0 0 0 transparent;--fx-hover-aura:0 0 0 transparent;--fx-motion-aura:0 0 0 transparent;--fx-gradient-aura:0 0 0 transparent}
.fx-pulse-glow,.fx-neon-pulse{--fx-static-aura:0 0 var(--fx-glow-blur) color-mix(in srgb,var(--fx-glow-color) calc(var(--fx-glow-alpha) * 100%),transparent)}
.fx-animated-shadow{--fx-motion-aura:0 var(--fx-shadow-y) var(--fx-shadow-blur) var(--fx-shadow-soft)}
.fx-breathing-glow{--fx-motion-aura:0 0 var(--fx-shadow-blur) var(--fx-shadow-soft)}
.fx-gradient-glow{--fx-gradient-aura:0 0 var(--fx-gradient-blur) var(--fx-gradient-soft)}
.fx-element>.fx-aura-layer{box-shadow:var(--fx-static-aura),var(--fx-hover-aura),var(--fx-motion-aura),var(--fx-gradient-aura);opacity:1}
@media(hover:hover) and (pointer:fine){
 .fx-lift:hover,.fx-hover-float:hover{--fx-hover-aura:0 12px 24px #0003}
 .fx-sink:hover{--fx-hover-aura:0 2px 5px #0002}
 .fx-hover-glow:hover{--fx-hover-aura:0 0 var(--fx-hoverLight-blur) var(--fx-hoverLight-soft)}
 .fx-element:is(.fx-lift,.fx-hover-float,.fx-hover-glow):hover>.fx-aura-layer{box-shadow:var(--fx-static-aura),var(--fx-hover-aura),var(--fx-motion-aura),var(--fx-gradient-aura)}
}
.editor-canvas.fx-paused .visual-motion .visual-layer{animation-play-state:paused!important}
.fx-letter-shine::before{display:none}
.fx-letter-shine{overflow:visible}
.fx-letter-shine>.site-heading,.fx-letter-shine>.site-text{margin:0;background-size:300% 100%!important;animation:fx-gradient-x var(--fx-shine-duration,8s) var(--fx-shine-ease,ease) var(--fx-shine-delay,0s) var(--fx-shine-repeat,infinite) var(--fx-shine-direction,normal) both}
@media(hover:hover) and (pointer:fine){
 .fx-hover-color:hover>.site-heading,.fx-hover-color:hover>.site-text,.fx-hover-color:hover>.site-button,.fx-hover-color:hover .site-button-label{color:var(--fx-hoverColor-color)!important;-webkit-text-fill-color:var(--fx-hoverColor-color)!important;transition:color var(--fx-hoverColor-duration,.25s)}
}
.editor-canvas .fx-element:is(.interacting,.dragging) .fx-light-layer,.fx-paused .fx-light-pointer{opacity:0!important}
.editor-canvas .fx-element:is(.interacting,.dragging) .site-image,.fx-paused .fx-element .site-image{transform:none!important}
.editor-canvas .fx-element:has([contenteditable=true],[contenteditable=plaintext-only])>.fx-shine-layer{display:none}
/* Hover opacity is an absolute target, allowing both dimming and restoring an
   originally translucent component to full opacity. */
.fx-hover-opacity{--fx-hover-opacity:var(--fx-base-opacity,1)}
@media(hover:hover) and (pointer:fine){.fx-hover-opacity:hover{--fx-hover-opacity:var(--fx-hover-opacity-value)}}
.fx-paused .fx-hover-opacity{--fx-hover-opacity:var(--fx-base-opacity,1)!important}
@media(prefers-reduced-motion:reduce){.fx-hover-opacity{--fx-hover-opacity:var(--fx-base-opacity,1)!important}}
