/* TDL WP Bakery Styles */
.tdl_row {
	&:first-of-type:not(.tdl-custom-block) {
		.tdl_row_wrapper {
			.tdl_column {
				padding-top: var(--default-margin);
			}
		}
	}

	.tdl_row_wrapper {
		display: flex;
		flex-direction: row;
		gap: var(--column-gap);

		.tdl_column {

			.tdl_column-inner {
				.tdl_wrapper {}
			}
		}
	}

	&[data-tdl-full-width="false"] {
		width: var(--content-width);
		margin: 0 auto;

		&.tdl-custom-block {
			padding-top: 0 !important;
			.tdl_row_wrapper { padding: var(--default-margin) !important;}

			.tdl_text_column:last-of-type { margin-bottom: 0 !important;}
		}
	}

	&[data-tdl-full-width="true"] {
		padding: 0;

		.tdl_row_wrapper {
			padding: 0 calc((100% - var(--content-width)) / 2);
		}
	}

	&[data-tdl-full-width="true"][data-tdl-stretch-content="true"] {
		padding: 0;
		.tdl_row_wrapper { padding: 0; width: 100% !important; }

		&.tdl_row-no-padding {
			.tdl_row_wrapper {
				padding: 0; width: 100%;
				.tdl_column { padding-top: 0;}
			}

			.tdl_content_element { margin-bottom: 0 !important;}

			&.tdlForceMarginBottom { margin-bottom: var(--default-margin) !important;}
		}

	}

	&[data-tdl-content-placement="top"] {
		.tdl_column {
			display: flex;
			flex-direction: column;
			justify-content: start;
		}
	}

	&[data-tdl-content-placement="middle"] {
		.tdl_column {
			display: flex;
			flex-direction: column;
			justify-content: center;
		}
	}

	&[data-tdl-content-placement="bottom"] {
		.tdl_column {
			display: flex;
			flex-direction: column;
			justify-content: end;
		}
	}

	.tdl_inner_row {
		display: flex; gap: var(--column-gap);

		.tdl_column { padding-top: 0 !important;}
	}

	&.tdl-custom-block { padding-top: var(--default-margin);}
	&.tdl-custom-block[data-tdl-content-offset="true"] {
		/* padding-top: 0; */
		/* &:has(.tdl_inner_row) { padding-top: calc(3 * var(--default-margin));} */

		.tdl_row_wrapper {
			.tdl_column {
				margin-top: calc(-2 * var(--default-margin));
			}
		}
	}

	&.tdl-custom-block[data-tdl-content-bottom-offset="true"] {
		/* padding-top: 0; */
		/* &:has(.tdl_inner_row) { padding-top: calc(3 * var(--default-margin));} */

		.tdl_row_wrapper {
			.tdl_column {
				margin-bottom: calc(-2 * var(--default-margin)) !important;
			}
		}
	}

	&.vc_row-o-equal-height {
		.tdl_column {
			.tdl_column-inner {
				height: 100%;
				.tdl_wrapper {
					height: 100%;
					.tdl-icon-button {
						height: 100%;
						.wrapper { height: calc(100% - 52px);}
					}
					.tdl-image-button-wrapper {
						height: 100%;
						.button { height: calc(100% - 52px);}
					}
				}
			}
		}
	}

	&.tdlCTAWrapper {
		.tdlCallToActionContainer {
			margin-top: var(--default-margin);
			margin-bottom: var(--default-margin) !important;

			.tdl_text_column { text-wrap: balance;}
			.tdl_text_column p:last-of-type { margin-bottom: var(--default-margin) !important;}

			> .tdl_row {
				.tdl_row_wrapper { width: var(--content-width) !important; margin: 0 auto !important; }
			}
		}
		.tdlCallToActionContainer:has(.tdl-carrot-above) {
			margin-top: calc(165px + var(--default-margin));
		}
		> .tdl_row_wrapper { width: 100% !important;}
	}
}

/* TDL Elements */
.tdl_text_column p { margin-top: 0; margin-bottom: var(--paragraph-margins);}
.tdl_text_column p:last-of-type { margin-top: 0; margin-bottom: 0;}

.tdl_text_column { margin-bottom: var(--paragraph-margins);}
.tdl_text_column ~ .tdl_text_column, .tdl_text_column:last-of-type { margin-bottom: var(--default-margin);}

.tdl_content_element { margin-top: 0; margin-bottom: var(--default-margin);}


/* Set Column Widths */
.tdl_col-1 { width: calc(100% / 12);}
.tdl_col-2 { width: calc((100% / 12) * 2);}
.tdl_col-3 { width: 25%;}
.tdl_col-4 { width: calc((100% / 12) * 4);}
.tdl_col-5 { width: calc((100% / 12) * 5);}
.tdl_col-6 { width: 50%;}
.tdl_col-7 { width: calc((100% / 12) * 7);}
.tdl_col-8 { width: calc((100% / 12) * 8);}
.tdl_col-9 { width: 75%;}
.tdl_col-10 { width: calc((100% / 12) * 10);}
.tdl_col-11 { width: calc((100% / 12) * 11);}
.tdl_col-12 { width: 100%;}

.tdl_col-1\/5 { width: calc(100% / 5);}

/* Custom TDL Blocks */
.tdl-custom-block + .tdl_row:not(.tdl-custom-block) { margin-top: var(--default-margin);}
.tdl-custom-block + .tdl_row.tdl_row-no-padding { margin-top: 0;}
.tdl_row:not(.tdl-custom-block) + .tdl-custom-block { margin-top: var(--default-margin);}
/* .tdl_row:not(.tdl-custom-block) .tdl_wrapper .tdl_content_element:last-of-type { margin-bottom: 0;} */
.tdl_row.force-margins > .tdl_row_wrapper { margin-bottom: var(--default-margin) !important;}
.tdl-custom-block:has( + .tdl-custom-block.tdl-bottom-arrow) { padding-bottom: calc(var(--default-margin) * 2);}

.tdl_row:not(.tdl-custom-block) + .tdl_row.tdl-custom-block[data-tdl-content-offset="true"]:has(:not(.tdl_inner_row)) { margin-top: calc(var(--default-margin) * 2);}
.tdl_row:not(.tdl-custom-block) + .tdl_row.tdl-custom-block[data-tdl-content-offset="true"]:has(.tdl_inner_row) { margin-top: calc(var(--default-margin) * 4);}

.tdl_row:last-of-type:not(.tdl-custom-block, .tdl_row-no-padding) { margin-bottom: var(--default-margin);}

.tdl_row.tdl-custom-block[data-tdl-content-bottom-offset="true"] { margin-bottom: calc(var(--default-margin) * 2);}
.tdl_row.tdl-custom-block[data-tdl-content-bottom-offset="true"]:has(.tdl_inner_row) + .tdl_row:not(.tdl-custom-block) { margin-top: calc(var(--default-margin) * 4);}

.tdl_row.tdlForceMarginBottom { margin-bottom: var(--default-margin) !important;}

.tdlCTAWrapper:has( + .tdl_row.tdl_row-no-padding[data-tdl-full-width="true"][data-tdl-stretch-content="true"]) .tdlCallToActionContainer {margin-bottom: 0 !important;}
.tdl_row:last-of-type:is(.tdlCTAWrapper) {margin-bottom: 0 !important;}
.tdl_row:last-of-type:is(.tdlCTAWrapper) .tdlCallToActionContainer {margin-bottom: 0 !important;}

.tdl_row.tdl-custom-block[data-tdl-full-width="true"] + .tdl_row.tdlCTAWrapper[data-tdl-full-width="true"][data-tdl-stretch-content="true"] { margin-top: 0 !important;}
.tdl_row.tdl-custom-block[data-tdl-full-width="true"] + .tdl_row.tdlCTAWrapper[data-tdl-full-width="true"][data-tdl-stretch-content="true"] .tdlCallToActionContainer { margin-top: 0 !important;}