.iddd-gridEl,
.rey-gridEl.iddd-gridEl {
	--autoplay-duration: 9000ms;
	--per-row: 1;
	--gap: 15px;
	--vgap: var(--gap);
	--offset: 130px;
	direction: inherit;
	unicode-bidi: isolate;
}

@media (min-width: 768px) and (max-width: 1024px) {
	.iddd-gridEl {
		--per-row: 2;
		--gap: 15px;
	}
}

@media (min-width: 1025px) {
	.iddd-gridEl {
		--per-row: 3;
		--gap: 30px;
	}
}

.iddd-gridEl .__items {
	box-sizing: border-box;
	height: auto;
	min-height: 100px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	margin-block-start: calc(-1 * var(--gap));
	margin-inline-start: calc(-1 * var(--gap));
}

.iddd-gridEl .__item {
	box-sizing: border-box;
	width: calc((100% - var(--gap) * var(--per-row)) / var(--per-row));
	margin-inline-start: var(--gap);
	margin-block-start: var(--gap);
	backface-visibility: hidden;
	position: relative;
	display: flex;
}

.iddd-gridEl .__item > .rey-gs-editSection,
.iddd-gridEl .__item > .elementor {
	width: 100%;
	flex: 1;
}

.iddd-gridEl[data-layout="code"] .__item {
	display: block;
}

@supports (display: grid) {
	.iddd-gridEl .__items {
		width: 100%;
		margin: 0;
		display: grid;
		gap: var(--vgap) var(--gap);
		grid-template-columns: repeat(var(--per-row), minmax(0, 1fr));
	}

	.iddd-gridEl .__item {
		width: 100%;
		margin: 0;
		min-width: 0;
	}

	.iddd-gridEl.--type-list .__items,
	.iddd-gridEl.--type-md-list .__items,
	.iddd-gridEl.--type-sm-list .__items {
		display: grid;
		grid-column: 1 / -1;
		gap: var(--gap);
		grid-template-columns: repeat(
			var(--total),
			calc(100% / var(--per-row) - var(--gap) - var(--offset) / var(--per-row))
		);
		grid-template-rows: minmax(220px, 1fr);
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x proximity;
		padding-block-end: calc(0.75 * var(--gap));
		-webkit-overflow-scrolling: touch;
	}

	.iddd-gridEl.--type-list .__item,
	.iddd-gridEl.--type-md-list .__item,
	.iddd-gridEl.--type-sm-list .__item {
		scroll-snap-align: start;
	}

	.iddd-gridEl.--type-vlist .__items,
	.iddd-gridEl.--type-md-vlist .__items,
	.iddd-gridEl.--type-sm-vlist .__items {
		display: grid;
		gap: var(--vgap);
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	@supports (display: grid) {
		.iddd-gridEl.--type-md-list .__items {
			display: grid;
			grid-column: 1 / -1;
			overflow-x: auto;
			scroll-snap-type: x proximity;
		}

		.iddd-gridEl.--type-md-vlist .__items {
			grid-template-columns: minmax(0, 1fr);
		}
	}
}

@media (max-width: 767px) {
	@supports (display: grid) {
		.iddd-gridEl.--type-sm-list .__items {
			display: grid;
			grid-column: 1 / -1;
			overflow-x: auto;
			scroll-snap-type: x proximity;
		}

		.iddd-gridEl.--type-sm-vlist .__items {
			grid-template-columns: minmax(0, 1fr);
		}
	}
}

.iddd-gridEl .js-horizontal-drag.__items {
	scroll-snap-type: none;
	cursor: grab;
}

.iddd-gridEl .js-horizontal-drag.__items.--active {
	cursor: grabbing;
}

.iddd-gridEl.--msnry-js .__items {
	--col-size: calc(100% / var(--per-row));
	display: flex;
	align-items: flex-start;
	margin-inline-start: calc(-1 * var(--gap));
	width: calc(100% + var(--gap));
}

.iddd-gridEl.--msnry-js .__item {
	padding-inline-start: var(--gap);
	margin-block-end: var(--gap);
	max-width: var(--col-size);
	flex-basis: var(--col-size);
}

.iddd-gridEl.--msnry-css .__items {
	column-count: var(--per-row);
	column-gap: var(--gap);
	display: block;
}

.iddd-gridEl.--msnry-css .__item {
	margin-block-end: var(--gap);
	width: 100%;
	break-inside: avoid;
}
