/* OnlySatvik Facebook Feed — responsive wrapper + grid for the API feed. */
.osfb-feed {
	max-width: 100%;
	margin: 0 auto;
}
.osfb-feed iframe {
	max-width: 100%;
	display: block;
	margin: 0 auto;
}

/* API grid: 3 columns on desktop, 2 on tablet, 1 on phones. */
.osfb-grid {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}
.osfb-grid.osfb-cols-2 {
	grid-template-columns: repeat(2, minmax(0, 1fr));
}
.osfb-grid.osfb-cols-1 {
	grid-template-columns: minmax(0, 1fr);
}
@media (max-width: 900px) {
	.osfb-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}
@media (max-width: 600px) {
	.osfb-grid,
	.osfb-grid.osfb-cols-2 {
		grid-template-columns: minmax(0, 1fr);
	}
	.osfb-feed iframe {
		width: 100% !important;
	}
}

.osfb-card {
	background: #fff;
	border: 1px solid #e5e5e5;
	border-radius: 12px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
}
.osfb-card-img {
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f6f6f6;
}
.osfb-card-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.osfb-card-body {
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1;
}
.osfb-card-text {
	margin: 0;
	font-size: 15px;
	line-height: 1.5;
}
.osfb-card-meta {
	margin: 0;
	font-size: 13px;
	color: #777;
}
.osfb-card-link {
	margin: auto 0 0;
	font-size: 14px;
}
