/*
 * FDSH Elementor Widgets — advanced control engine.
 * Derived from the proven AC control model, adapted to FDSH identity.
 * Strict rule: square corners only; no radius controls or rounded defaults.
 */

:root {
	--fdsh-color-beige: #D4B894;
	--fdsh-color-grey: #939393;
	--fdsh-color-olive: #B6A700;
	--fdsh-color-white: #FFFFFF;
	--fdsh-color-off-white: #F8F6F2;
	--fdsh-color-ink: #2B2927;
	--fdsh-color-border: #E4DED5;
	--fdsh-font-latin: "Myriad Pro", Arial, sans-serif;
	--fdsh-font-amazigh: "Tifinagh Ircam Premium", sans-serif;
	--fdsh-font-arabic: "Hacen Saudi Arabia", sans-serif;
}

.fdsh-widget,
.fdsh-widget *,
.fdsh-widget *::before,
.fdsh-widget *::after {
	border-radius: 0 !important;
}

.fdsh-widget {
	--fdsh-box-x: 0px;
	--fdsh-box-y: 0px;
	--fdsh-box-scale: 1;
	--fdsh-box-rotate: 0deg;
	--fdsh-box-hover-y: 0px;
}

.fdsh-flex-media,
.fdsh-widget img,
.fdsh-widget video {
	--fdsh-media-x: 0px;
	--fdsh-media-y: 0px;
	--fdsh-media-scale: 1;
	--fdsh-media-rotate: 0deg;
	transform:
		translate(var(--fdsh-media-x), var(--fdsh-media-y))
		rotate(var(--fdsh-media-rotate))
		scale(var(--fdsh-media-scale));
}

.fdsh-icon,
.fdsh-widget [class*="__icon"] {
	--fdsh-icon-x: 0px;
	--fdsh-icon-y: 0px;
	--fdsh-icon-rotate: 0deg;
	transform:
		translate(var(--fdsh-icon-x), var(--fdsh-icon-y))
		rotate(var(--fdsh-icon-rotate));
}

.fdsh-widget [class*="__item"],
.fdsh-widget [class*="__card"],
.fdsh-widget [class*="__content"] {
	transform:
		translate(var(--fdsh-box-x, 0px), calc(var(--fdsh-box-y, 0px) + var(--fdsh-box-hover-y, 0px)))
		rotate(var(--fdsh-box-rotate, 0deg))
		scale(var(--fdsh-box-scale, 1));
}

.fdsh-widget .fdsh-button,
.fdsh-widget .fdsh-card-link {
	border-radius: 0 !important;
}

html[dir="rtl"] .fdsh-widget {
	direction: rtl;
}

html[dir="rtl"] .fdsh-widget .fdsh-button,
html[dir="rtl"] .fdsh-widget .fdsh-card-link {
	text-align: right;
}

@media (prefers-reduced-motion: reduce) {
	.fdsh-widget *,
	.fdsh-widget *::before,
	.fdsh-widget *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
