/**
 * Cumulative Layout Shift (CLS) mitigation + smoother compositing for Naseem Elementor widgets.
 * Loads after Elementor + cascade fix. Skips heavy tricks under prefers-reduced-motion.
 *
 * @package Naseem
 */

/* -------------------------------------------------------------------------- */
/* Lucide: reserve box before createIcons replaces <i data-lucide> with SVG   */
/* -------------------------------------------------------------------------- */

.elementor-widget[class*="elementor-widget-naseem-"] i[data-lucide] {
	display: inline-block;
	box-sizing: content-box;
	width: 1.25rem;
	height: 1.25rem;
	min-width: 1.25rem;
	min-height: 1.25rem;
	vertical-align: middle;
}

.elementor-widget-naseem-icon-text-banner .naseem-icon-text-banner__icon i[data-lucide],
.elementor-widget-naseem-collab-list .collab__feature-icon i[data-lucide],
.elementor-widget-naseem-strategy-list .strategy__item-icon i[data-lucide] {
	width: 1.375rem;
	height: 1.375rem;
	min-width: 1.375rem;
	min-height: 1.375rem;
}

/* -------------------------------------------------------------------------- */
/* Scroll-reveal surfaces: stable GPU layers (opacity + transform transitions) */
/* -------------------------------------------------------------------------- */

@media (prefers-reduced-motion: no-preference) {
	.elementor-widget-naseem-services-grid .services__card,
	.elementor-widget-naseem-portfolio-slider .portfolio__slide,
	.elementor-widget-naseem-team-grid .naseem-team-grid__card,
	.elementor-widget-naseem-icon-card .naseem-icon-card__card,
	.elementor-widget-naseem-single-icon-card .naseem-icon-card__card,
	.elementor-widget-naseem-image-banner .naseem-image-banner__card,
	.elementor-widget-naseem-blog-grid .naseem-blog-grid__item {
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}

	.elementor-widget-naseem-brand-slider .brands__marquee,
	.elementor-widget-naseem-text-marquee .naseem-text-marquee__track {
		transform: translateZ(0);
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}

	.elementor-widget-naseem-testimonial-carousel .naseem-testimonial-carousel__track {
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}
}

/* Reserve carousel height so first paint does not jump when slide copy loads */
.elementor-widget-naseem-testimonial-carousel .naseem-testimonial-carousel__viewport {
	min-height: clamp(12rem, 36vw, 20rem);
}

/* Isolate overlay paint (services grid) without affecting fixed descendants elsewhere */
.elementor-widget-naseem-services-grid .services__card-overlay {
	contain: paint;
}

/* Service list: stable line box while word-reveal runs inside links */
.elementor-widget-naseem-services-list .service2__list li {
	min-height: 1.35em;
}
