/* OzoShip post grid shortcode styles */

.ozoship-post-grid,
.ozoship-post-grid * {
	box-sizing: border-box;
	font-family: var(--ozoship-font-family);
}

.ozoship-post-grid {
	width: 100%;
}

.ozoship-post-grid__inner {
	display: grid;
	grid-template-columns: repeat(var(--ozoship-post-grid-columns, 2), minmax(0, 1fr));
	gap: var(--ozoship-post-grid-gap, 24px);
}

.ozoship-post-grid__card {
	padding: 20px 30px;
	border-radius: var(--ozoship-post-grid-card-radius, 8px);
	background: var(--ozoship-post-grid-card-bg, #f3f3f3);
	min-height: 100%;
}

.ozoship-post-grid__title {
	margin: 0 0 10px;
	font-size: var(--ozoship-post-grid-title-size, 16px);
	line-height: 1.2;
	font-weight: var(--ozoship-post-grid-title-weight, 700);
	color: var(--ozoship-post-grid-title-color, #0079BC);
	text-transform: uppercase;
}

.ozoship-post-grid__title a {
	color: inherit;
	text-decoration: none;
}

.ozoship-post-grid__meta {
	margin: 0 0 12px;
	font-size: 15px;
	line-height: 1.35;
	font-weight: 500;
	color: var(--ozoship-post-grid-meta-color, #111111);
}

.ozoship-post-grid__excerpt {
	margin: 0 0 20px;
	font-size: var(--ozoship-post-grid-excerpt-size, 14px);
	line-height: 1.45;
	font-weight: var(--ozoship-post-grid-excerpt-weight, 400);
	color: var(--ozoship-post-grid-excerpt-color, #111111);
}

.ozoship-post-grid__actions {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 16px;
}

.ozoship-post-grid__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	min-width: 96px;
	padding: 10px 22px;
	border-radius: var(--ozoship-post-grid-button-radius, 4px);
	text-decoration: none;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease, color 0.2s ease;
}

.ozoship-post-grid__button:hover {
	transform: translateY(-1px);
}

.ozoship-post-grid__button--primary {
	background: #FF5721;
	color: #fff;
}

.ozoship-post-grid__button--secondary {
	background: #fff;
	color: #0079BC;
	box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.04);
}

@media (max-width: 900px) {
	.ozoship-post-grid__inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 767px) {
	.ozoship-post-grid__card {
		padding: 18px 18px 16px;
	}

	.ozoship-post-grid__button {
		min-height: 38px;
		padding: 10px 18px;
	}
}
