/* Layout only: no colours, borders, radius or shadows. Fonts come from the site (Elementor global kit / theme). */
.pib-wrap {
	width: 100%;
	box-sizing: border-box;
}
.pib-grid {
	display: grid;
	grid-template-columns: repeat(var(--pib-cols, 4), minmax(0, 1fr));
	gap: 30px 20px;
}
.pib-item {
	text-align: var(--pib-align, center);
}
.pib-icon {
	display: flex;
	justify-content: var(--pib-justify, center);
	margin-bottom: 12px;
}
.pib-icon img {
	width: auto;
	height: var(--pib-icon, 48px);
	max-width: 100%;
	object-fit: contain;
	display: block;
}
.pib-title {
	font-family: var(--e-global-typography-primary-font-family, inherit);
	font-weight: var(--e-global-typography-primary-font-weight, bold);
	font-size: 1.25em;
	line-height: 1.2;
}
.pib-sub {
	font-family: var(--e-global-typography-text-font-family, inherit);
	font-weight: var(--e-global-typography-text-font-weight, inherit);
	margin-top: 4px;
}
@media (max-width: 768px) {
	.pib-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 420px) {
	.pib-grid { grid-template-columns: 1fr; }
}

/* Remove any shadow, background, border or filter the theme / Elementor applies to images */
.pib-wrap .pib-icon,
.pib-wrap .pib-icon img {
	box-shadow: none !important;
	background: none !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	filter: none !important;
	padding: 0 !important;
	margin-left: 0;
	margin-right: 0;
}
