/* Shared phone/email contact row: keep the existing typography, icons and links. */
.ma-contact-line,
.ma-contact-line > .e-con-inner {
	box-sizing: border-box;
	min-width: 0;
}

.ma-contact-line {
	display: grid !important;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.5fr);
	gap: 20px !important;
	width: 100%;
}

/* Elementor may render a boxed container through an additional inner wrapper. */
.ma-contact-line > .e-con-inner {
	grid-column: 1 / -1;
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.5fr);
	gap: 20px !important;
	width: 100%;
}

.ma-contact-line > .e-con,
.ma-contact-line > .elementor-element,
.ma-contact-line > .e-con-inner > .e-con,
.ma-contact-line > .e-con-inner > .elementor-element {
	box-sizing: border-box;
	width: auto !important;
	min-width: 0;
	max-width: 100%;
}

.ma-contact-email,
.ma-contact-email .elementor-icon-box-wrapper,
.ma-contact-email .elementor-icon-box-content,
.ma-contact-email .elementor-icon-box-title {
	box-sizing: border-box;
	min-width: 0;
	max-width: 100%;
}

.ma-contact-email .elementor-icon-box-title a {
	display: inline-block;
	max-width: 100%;
}

.ma-contact-email .elementor-icon-box-title,
.ma-contact-email .elementor-icon-box-title a {
	overflow-wrap: anywhere;
	word-break: normal;
	white-space: normal;
}

@media (max-width: 1024px) {
	.ma-contact-line,
	.ma-contact-line > .e-con-inner {
		grid-template-columns: minmax(0, 1fr);
	}
}
