/* DC Defense Instagram Feed */

.dcif-feed {
	--dcif-cols: 3;
	--dcif-accent: #E1306C;
	width: 100%;
}

.dcif-grid {
	display: grid;
	grid-template-columns: repeat(var(--dcif-cols), minmax(0, 1fr));
	gap: 20px;
	align-items: start;
}

.dcif-item {
	min-width: 0;
}

/* Tame Instagram's own inline styles so the cards behave inside a grid. */
.dcif-item blockquote.instagram-media,
.dcif-item iframe.instagram-media,
.dcif-item .instagram-media-rendered {
	margin: 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	border-radius: 12px !important;
	box-shadow: 0 6px 24px rgba(0, 0, 0, .08) !important;
}

/* Placeholder look before embed.js swaps the blockquote for an iframe. */
.dcif-item blockquote.instagram-media:not(.instagram-media-rendered) {
	background: #fafafa;
	border: 1px solid #e6e6e6;
	padding: 32px 16px;
	text-align: center;
	font: inherit;
	min-height: 420px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.dcif-item blockquote.instagram-media a {
	color: inherit;
	text-decoration: none;
	opacity: .6;
}

/* Follow button */
.dcif-follow-wrap {
	text-align: center;
	margin-top: 32px;
}

.dcif-follow {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 28px;
	border-radius: 999px;
	background: var(--dcif-accent);
	color: #fff;
	font: inherit;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .02em;
	text-decoration: none;
	transition: transform .18s ease, filter .18s ease, box-shadow .18s ease;
}

.dcif-follow:hover,
.dcif-follow:focus {
	color: #fff;
	transform: translateY(-2px);
	filter: brightness(1.06);
	box-shadow: 0 8px 22px rgba(0, 0, 0, .18);
}

.dcif-follow:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 3px;
}

.dcif-ig-icon {
	flex: 0 0 auto;
}

.dcif-empty {
	padding: 16px;
	border: 1px dashed #c3c4c7;
	border-radius: 8px;
	background: #fcf9e8;
	text-align: center;
}

/* Responsive fallback for the shortcode (Elementor sets its own per-device columns). */
@media (max-width: 1024px) {
	.dcif-feed:not(.dcif-elementor) .dcif-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.dcif-feed:not(.dcif-elementor) .dcif-grid {
		grid-template-columns: minmax(0, 1fr);
	}

	.dcif-item blockquote.instagram-media:not(.instagram-media-rendered) {
		min-height: 340px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.dcif-follow {
		transition: none;
	}

	.dcif-follow:hover,
	.dcif-follow:focus {
		transform: none;
	}
}
