/*
 * Responsive correction for the known mid-content wFirma CTA.
 * The custom scope prevents changes to article typography and other buttons.
 */
.tpkd-wfirma-cta {
	margin-top: 2rem !important;
	margin-bottom: 2rem !important;
	padding: 1rem !important;
}

.tpkd-wfirma-cta > div {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 1rem !important;
	padding: 1rem !important;
}

.tpkd-wfirma-cta > div > :first-child {
	align-self: flex-start;
	padding: 0.75rem !important;
}

.tpkd-wfirma-cta > div > :first-child svg {
	width: 2rem !important;
	height: 2rem !important;
}

.tpkd-wfirma-cta > div > :nth-child(2) {
	min-width: 0;
	text-align: left !important;
}

.tpkd-wfirma-cta > div > :last-child {
	width: 100% !important;
	margin-top: 0 !important;
}

.tpkd-wfirma-cta > div > :last-child > a {
	width: 100% !important;
	padding: 0.75rem 1rem !important;
	font-size: 1rem !important;
	line-height: 1.4 !important;
	white-space: normal !important;
}

@media (min-width: 640px) {
	.tpkd-wfirma-cta > div {
		display: grid !important;
		grid-template-columns: auto minmax(0, 1fr);
		align-items: start !important;
		gap: 0.75rem 1rem !important;
		padding: 1.25rem !important;
	}

	.tpkd-wfirma-cta > div > :first-child {
		grid-column: 1;
		grid-row: 1 / span 2;
	}

	.tpkd-wfirma-cta > div > :nth-child(2) {
		grid-column: 2;
		grid-row: 1;
	}

	.tpkd-wfirma-cta > div > :last-child {
		grid-column: 2;
		grid-row: 2;
		justify-self: start;
		width: auto !important;
	}

	.tpkd-wfirma-cta > div > :last-child > a {
		width: auto !important;
	}
}
