/* Keep Fluent Forms embedded by FFDM inside the width of cards/flex items. */
.ffdm-download-form,
.ffdm-download-form .fluentform,
.ffdm-download-form .fluentform_wrapper,
.ffdm-download-form form,
.ffdm-download-form fieldset,
.ffdm-download-form .ff-el-group,
.ffdm-download-form .ff-el-input--content {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}

.ffdm-download-form {
	overflow-wrap: anywhere;
}

.ffdm-download-form fieldset {
	min-inline-size: 0 !important;
}

.ffdm-download-form input:not([type="checkbox"]):not([type="radio"]),
.ffdm-download-form select,
.ffdm-download-form textarea,
.ffdm-download-form button {
	box-sizing: border-box;
	max-width: 100%;
}

.ffdm-download-form .ff-el-form-check-label,
.ffdm-download-form .ff_t_c {
	min-width: 0;
	max-width: 100%;
	overflow-wrap: anywhere;
}

/* Elementor flex/grid widgets must be allowed to shrink to their column width. */
.elementor-widget-shortcode:has(.ffdm-download-form),
.elementor-widget-shortcode:has(.ffdm-download-form) > .elementor-widget-container,
.elementor-widget-shortcode:has(.ffdm-download-form) .elementor-shortcode {
	box-sizing: border-box;
	width: 100%;
	max-width: 100%;
	min-width: 0;
}
