/**
 * Teads Course Grid - base layout.
 *
 * Reproduces the layout rules of the Extras for Elementor "Posts" widget (grid, items, columns)
 * under the same class names, so the theme CSS written for .ee-grid / .ee-post keeps applying.
 */

.ee-grid {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 0 0 0 -24px;
	padding: 0;
	list-style: none;
}

.ee-grid__item {
	box-sizing: border-box;
	display: inline-block;
	vertical-align: top;
	width: 100%;
	max-width: 100% !important;
	padding-left: 24px;
}

.ee-grid__item > * {
	flex-grow: 1;
}

.ee-post {
	background: #fff;
	margin-bottom: 24px;
	position: relative;
	transform: translateZ(0);
	width: 100%;
	max-width: 100%;
	cursor: default;
	font-size: 16px;
}

.ee-post > * {
	order: 1;
}

.ee-grid__item--sizer {
	position: absolute;
}

.ee-posts__nothing-found {
	width: 100%;
}

@media (min-width: 1025px) {
	.ee-grid-columns-1 .ee-grid__item { width: calc(100% / 1); }
	.ee-grid-columns-2 .ee-grid__item { width: calc(100% / 2); }
	.ee-grid-columns-3 .ee-grid__item { width: calc(100% / 3); }
	.ee-grid-columns-4 .ee-grid__item { width: calc(100% / 4); }
	.ee-grid-columns-5 .ee-grid__item { width: calc(100% / 5); }
	.ee-grid-columns-6 .ee-grid__item { width: calc(100% / 6); }
}

@media (min-width: 768px) and (max-width: 1024px) {
	.ee-grid-columns-tablet-1 .ee-grid__item { width: calc(100% / 1); }
	.ee-grid-columns-tablet-2 .ee-grid__item { width: calc(100% / 2); }
	.ee-grid-columns-tablet-3 .ee-grid__item { width: calc(100% / 3); }
	.ee-grid-columns-tablet-4 .ee-grid__item { width: calc(100% / 4); }
	.ee-grid-columns-tablet-5 .ee-grid__item { width: calc(100% / 5); }
	.ee-grid-columns-tablet-6 .ee-grid__item { width: calc(100% / 6); }
}

@media (max-width: 767px) {
	.ee-grid-columns-mobile-1 .ee-grid__item { width: calc(100% / 1); }
	.ee-grid-columns-mobile-2 .ee-grid__item { width: calc(100% / 2); }
	.ee-grid-columns-mobile-3 .ee-grid__item { width: calc(100% / 3); }
	.ee-grid-columns-mobile-4 .ee-grid__item { width: calc(100% / 4); }
	.ee-grid-columns-mobile-5 .ee-grid__item { width: calc(100% / 5); }
	.ee-grid-columns-mobile-6 .ee-grid__item { width: calc(100% / 6); }
}

/* Alignment (classes added by the "layout_align" / "layout_halign" controls). */
.ee-grid-align--top .ee-grid { align-items: flex-start; }
.ee-grid-align--middle .ee-grid { align-items: center; }
.ee-grid-align--bottom .ee-grid { align-items: flex-end; }
.ee-grid-align--stretch .ee-grid { align-items: stretch; }
.ee-grid-align--top .ee-grid__item,
.ee-grid-align--middle .ee-grid__item,
.ee-grid-align--bottom .ee-grid__item,
.ee-grid-align--stretch .ee-grid__item { display: flex; }

.ee-grid-halign--left .ee-grid { justify-content: flex-start; }
.ee-grid-halign--center .ee-grid { justify-content: center; }
.ee-grid-halign--right .ee-grid { justify-content: flex-end; }

/* Card areas: same stacking as the Extras defaults (order, media stacking, no footer border). */
.ee-post__header,
.ee-post__media,
.ee-post__body,
.ee-post__footer {
	order: 1;
}

.ee-post__media {
	z-index: 1;
}

.ee-post__footer {
	border-width: 0;
}

.ee-post__media__overlay {
	mix-blend-mode: normal;
}
