/* Partner offer popup from 601px: centred dialog instead of the mobile
   bottom sheet. Enqueued with media="(min-width: 601px)" after
   recommend-popup.css (inc/recommend-popup.php). */
.tl-promo {
	align-items: center;
	padding: 24px;
}
.tl-promo__dialog {
	gap: 20px;
	max-width: 560px;
	max-height: calc(100vh - 48px);
	padding: 36px 40px 28px;
	border-bottom: 1px solid #e2e9f4;
	border-radius: 22px;
	transform: translateY(16px);
}
/* Orange accent strip along the top edge. */
.tl-promo__dialog::before {
	content: "";
	position: absolute;
	top: 0;
	left: 40px;
	right: 40px;
	height: 3px;
	background: linear-gradient(90deg, #f8a23e 0%, #f7752f 100%);
	border-radius: 0 0 3px 3px;
}
.tl-promo__handle {
	display: none;
}
.tl-promo__close {
	top: 16px;
	right: 16px;
}
.tl-promo__top {
	gap: 12px;
}
.tl-promo__eyebrow {
	padding: 6px 12px;
	font-size: 11px;
}
.tl-promo__brand {
	font-size: 14px;
}
.tl-promo__figure {
	font-size: 76px;
	letter-spacing: -2px;
}
.tl-promo__figure-label {
	padding-bottom: 8px;
	font-size: 18px;
}
.tl-promo__title {
	font-size: 28px;
	line-height: 1.2;
}
.tl-promo__body {
	font-size: 15px;
	line-height: 1.55;
}
.tl-promo__list {
	gap: 12px;
	padding: 16px 18px;
}
.tl-promo__list li {
	gap: 12px;
	font-size: 14px;
	line-height: 1.45;
}
.tl-promo__list svg {
	width: 20px;
	height: 20px;
}
.tl-promo__code {
	padding: 10px 10px 10px 18px;
}
.tl-promo__code-value {
	font-size: 20px;
}
.tl-promo__code-note {
	font-size: 14px;
}
.tl-promo__cta {
	min-height: 54px;
}
.tl-promo__legal {
	font-size: 11px;
}
