/* ============================================================
   Mobile / responsive overrides
   ============================================================ */

@media (max-width: 1024px) {
	.iif-nav { display: none; }
}
@media (max-width: 768px) {
	.iif-mobile-bar { display: flex; }
	body { padding-bottom: 80px; }
	.iif-floating-cta { bottom: 96px; right: 12px; left: 12px; max-width: none; }
}

@media (max-width: 720px) {
	.iif-section { padding: var(--iif-s-5) 0; }
	.iif-hero { padding-block: var(--iif-s-5); }
	.iif-hero__inner { gap: var(--iif-s-4); }
	.iif-hero__stats { gap: var(--iif-s-3); }
	.iif-hero__stats strong { font-size: 1.3rem; }
	.iif-grid--cards { grid-template-columns: repeat(2, 1fr); }
	.iif-card { min-height: auto; }
	.iif-card__title { font-size: 0.95rem; }
	.iif-grid--featured { grid-template-columns: 1fr; }
	.iif-section__head h2 { font-size: 1.5rem; }
}

@media (max-width: 480px) {
	.iif-hero__title { font-size: 2rem; }
	.iif-grid--cards { grid-template-columns: 1fr 1fr; gap: 10px; }
	.iif-card--wide { flex-direction: column; }
	.iif-card--wide .iif-card__media { width: 100%; aspect-ratio: 16/9; }
}

/* Touch-friendly tap targets */
@media (hover: none) {
	.iif-btn, .iif-share, .iif-card { min-height: 44px; }
}

/* PWA / safe areas */
@supports (padding: env(safe-area-inset-bottom)) {
	body { padding-bottom: calc(80px + env(safe-area-inset-bottom)); }
}
