/**
 * Trial Offer & Form Section widget.
 *
 * Specificity note: base rules use two class levels (e.g. `.tmt-trial-offer .x`)
 * so they beat theme/kit rules like `.elementor-kit-N h2` or `.container p`,
 * while staying below the three-class selectors Elementor generates from the
 * panel controls - those must keep winning. Variable defaults stay on
 * single-class selectors so controls and custom CSS can both override them.
 */

.tmt-trial-offer {
	--tmt-to-row-line-color: #c9d2d8;
	--tmt-to-col-line-color: #c9d2d8;
	--tmt-to-col-dot-color: #e4572e;
	--tmt-to-col-dot-size: 14px;
}

.tmt-trial-offer .tmt-trial-offer__row {
	display: flex;
	align-items: stretch;
	column-gap: 80px;
}

.tmt-trial-offer .tmt-trial-offer__col {
	flex: 1 1 0;
	min-width: 0;
}

/* Left column: stats ------------------------------------------------------ */

.tmt-trial-offer .tmt-trial-offer__stats-heading {
	margin: 0 0 24px;
	font-family: inherit;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	color: #1d3446;
}

.tmt-trial-offer .tmt-trial-offer__stats {
	display: flex;
	flex-direction: column;
}

.tmt-trial-offer .tmt-trial-offer__stat {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	column-gap: 10px;
	padding-block: 24px;
}

.tmt-trial-offer .tmt-trial-offer__stat--separated {
	border-bottom: 1px dashed var(--tmt-to-row-line-color);
}

.tmt-trial-offer .tmt-trial-offer__value {
	flex: 0 0 auto;
	font-family: inherit;
	font-size: 40px;
	font-weight: 800;
	line-height: 1;
	color: #e4572e;
}

.tmt-trial-offer .tmt-trial-offer__description {
	flex: 1 1 220px;
	font-family: inherit;
	font-size: 16px;
	line-height: 1.5;
	color: #4a5a66;
}

.tmt-trial-offer .tmt-trial-offer__footer-note {
	margin: 20px 0 0;
	font-family: inherit;
	font-size: 13px;
	font-style: italic;
	line-height: 1.5;
	color: #8a98a3;
}

/* Column divider: dashed line with a centred dot ------------------------- */

.tmt-trial-offer .tmt-trial-offer__col-divider {
	position: relative;
	flex: 0 0 auto;
	width: 1px;
	align-self: stretch;
	background-image: linear-gradient(var(--tmt-to-col-line-color) 50%, transparent 0%);
	background-position: top;
	background-size: 1px 10px;
	background-repeat: repeat-y;
}

.tmt-trial-offer .tmt-trial-offer__col-divider-dot {
	position: absolute;
	top: 50%;
	left: 50%;
	width: var(--tmt-to-col-dot-size);
	height: var(--tmt-to-col-dot-size);
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: var(--tmt-to-col-dot-color);
}

/* Right column: form ------------------------------------------------------- */

.tmt-trial-offer .tmt-trial-offer__form-heading {
	margin: 0 0 8px;
	font-family: inherit;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	color: #1d3446;
}

.tmt-trial-offer .tmt-trial-offer__form-subheading {
	margin: 0 0 24px;
	font-family: inherit;
	font-size: 15px;
	line-height: 1.5;
	color: #7a8a97;
}

.tmt-trial-offer .tmt-trial-offer__form-area {
	min-width: 0;
}

.tmt-trial-offer .tmt-trial-offer__form-placeholder {
	margin: 0;
	padding: 16px;
	border: 1px dashed var(--tmt-to-row-line-color);
	border-radius: 4px;
	font-size: 13px;
	color: #8a98a3;
}

/* Generic field styling for common form plugins, kept low-specificity so a
 * plugin's own theme (WPForms/CF7/Elementor Pro Forms) can override it. */

.tmt-trial-offer .tmt-trial-offer__form-area input[type="text"],
.tmt-trial-offer .tmt-trial-offer__form-area input[type="email"],
.tmt-trial-offer .tmt-trial-offer__form-area input[type="tel"],
.tmt-trial-offer .tmt-trial-offer__form-area input[type="url"],
.tmt-trial-offer .tmt-trial-offer__form-area textarea {
	width: 100%;
	box-sizing: border-box;
}

.tmt-trial-offer .tmt-trial-offer__form-area input[type="submit"],
.tmt-trial-offer .tmt-trial-offer__form-area button[type="submit"] {
	cursor: pointer;
	border: 1px solid transparent;
	border-radius: 4px;
}

/* Trust note: icon + text below the form ------------------------------------ */

.tmt-trial-offer .tmt-trial-offer__trust-note {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-top: 20px;
}

.tmt-trial-offer .tmt-trial-offer__trust-icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-inline-end: 12px;
	font-size: 22px;
	line-height: 1;
	color: #e4572e;
}

.tmt-trial-offer__trust-icon::after {
	content: "\1F6E1";
	display: inline-block;
	width: 40px;
	height: 43px;
	font-size: 27px;
	line-height: 20px;
	color: #e4572e;
	vertical-align: middle;
	margin-top: 6px;
}

.tmt-trial-offer .tmt-trial-offer__trust-icon svg {
	display: block;
	width: 1em;
	height: 1em;
}

.tmt-trial-offer .tmt-trial-offer__trust-icon i {
	font-size: inherit;
	line-height: 1;
}

.tmt-trial-offer .tmt-trial-offer__trust-text {
	flex: 1 1 220px;
	min-width: 0;
	font-family: inherit;
	font-size: 13px;
	line-height: 1.5;
	color: #7a8a97;
}

/* Responsive --------------------------------------------------------------- */

@media (max-width: 767px) {
	.tmt-trial-offer .tmt-trial-offer__row {
		flex-direction: column;
	}

	.tmt-trial-offer .tmt-trial-offer__col-divider {
		display: none;
	}
}