/*!
 * SaaqiTech Speed & Audit Fix — CSS corrections
 *
 * "Avoid non-composited animations" listed 165 elements. The site's own
 * @keyframes (wingMarquee, her-video, luxuryReveal, wa-ripple, wa-bounce) are
 * all transform/opacity and composite fine. The warnings come from wildcard
 * `transition: all` rules — `#services *`, `body #main-btn *`,
 * `body #hero-btn *`, `body #head-btn *` — which drag non-compositable
 * properties (color, border-*-color, visibility) onto every descendant,
 * including the <svg>, <defs>, <g> and <path> nodes inside button icons.
 *
 * Narrowing the transition to transform/opacity on those SVG internals removes
 * the warnings with no visible change: an SVG's <defs> and <g> nodes have no
 * border or text colour to animate in the first place. The buttons themselves
 * are left alone, so their own hover colour transitions still work.
 *
 * Note: this audit carries zero weight in the Lighthouse performance score —
 * it is a diagnostic. Clearing the remaining entries means editing the theme's
 * `transition: all` declarations directly (see readme.txt).
 */

#services svg,
#services svg *,
#main-btn svg,
#main-btn svg *,
#hero-btn svg,
#hero-btn svg *,
#head-btn svg,
#head-btn svg *,
.elementor-button-icon svg,
.elementor-button-icon svg *,
.elementor-button-content-wrapper svg,
.elementor-button-content-wrapper svg * {
	transition-property: transform, opacity !important;
}

/*
 * Videos are deferred by the plugin: the poster paints immediately and the MP4
 * arrives afterwards. Reserve the box so nothing shifts (protects CLS), and
 * keep a dark backdrop for the one video that has no poster, instead of a
 * white flash.
 */
video.sst-video {
	background-color: transparent;
}

video.sst-video[data-sst-noposter]:not(.sst-video-loaded) {
	background-color: #000;
}

/*
 * The marquee track is already transform-animated with will-change; keep the
 * cloned groups off the main thread while their videos stream in.
 */
.hero-wing-marquee .wing-track {
	backface-visibility: hidden;
}
