/* Opt-in promotion components. No fixed mobile overlay. */
.awaken-sticky-promotion,
.awaken-promotion-flow--desktop { display: none; }
.awaken-promotion-flow {
	width: min(100% - 3rem, 42rem);
	margin: 3rem auto;
}
.site-content > .awaken-promotion-flow { width: 100%; }
.awaken-sticky-promotion > .widget + .widget,
.awaken-promotion-flow > .widget + .widget { margin-top: 1.5rem; }
.widget.awaken-referral-widget {
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: transparent;
}
.awaken-referral-card {
	background: #0b121d;
	color: #ffffff;
	border: 1px solid #253243;
	font-family: "Zen Old Mincho", serif;
	line-height: 1.85;
	letter-spacing: .02em;
	text-align: left;
	overflow-wrap: anywhere;
}
.awaken-referral-card .awaken-referral-sky {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 1;
	object-fit: cover;
	margin: 0;
	padding: 0;
	border: 0;
	box-shadow: none;
}
.awaken-referral-content { padding: 20px 22px 22px; }
.awaken-referral-label {
	font-size: 12px;
	color: #d4dce5;
	letter-spacing: .05em;
	padding-bottom: 12px;
	border-bottom: 1px solid #4a5665;
}
.awaken-referral-card .awaken-referral-title {
	font-family: "Zen Old Mincho", serif;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: .025em;
	color: #ffffff;
	margin: 20px 0 18px;
	padding: 0;
	border: 0;
	text-shadow: none;
}
.awaken-referral-title::before,
.awaken-referral-title::after { display: none !important; }
.awaken-referral-card .awaken-referral-text {
	font-family: "Zen Old Mincho", serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.95;
	letter-spacing: .01em;
	color: #e2e8f0;
	margin: 0 0 22px;
}
.awaken-referral-card a.awaken-referral-primary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	min-height: 50px;
	padding: 13px 14px;
	background: #ffffff;
	border: 1px solid #ffffff;
	color: #0b121d;
	font-family: "Zen Old Mincho", serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0;
	text-decoration: none;
	transition: background-color .18s ease, color .18s ease;
}
.awaken-referral-primary svg { flex: 0 0 20px; }
.awaken-referral-card a.awaken-referral-primary:hover { background: #dbe6ef; color: #0b121d; }
.awaken-referral-card a.awaken-referral-secondary {
	display: block;
	width: fit-content;
	max-width: 100%;
	margin: 16px auto 0;
	padding: 7px 0;
	min-height: 44px;
	font-size: 13px;
	font-weight: 400;
	color: #e2e8f0;
	text-decoration: underline;
	text-underline-offset: 6px;
	letter-spacing: .02em;
}
.awaken-referral-card a:focus-visible { outline: 3px solid #9cccf1; outline-offset: 4px; }
.awaken-referral-card .awaken-referral-disclosure {
	margin: 16px 0 0;
	padding: 14px 0 0;
	border-top: 1px solid #4a5665;
	font-family: "Zen Old Mincho", serif;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: .025em;
	color: #c0cad7;
}
.awaken-referral-card p::first-letter { float: none; font-size: inherit; line-height: inherit; margin: 0; }
@media (min-width: 1101px) {
	.site-sidebar.has-sticky-promotion { align-self: stretch; min-width: 0; }
	/* Follow the theme UI scale so narrow sidebars keep the intended heading lines. */
	.site-sidebar .awaken-referral-title { font-size: clamp(19px, calc(24px * var(--awaken-ui-scale, 1)), 24px); }
	.awaken-sticky-promotion {
		display: block;
		position: sticky;
		top: var(--awaken-sticky-top, calc(var(--awaken-admin-bar-offset, 0px) + 110px));
		margin-top: 2rem;
	}
	/* A tall widget stays in document flow; no nested scroll trap. */
	.awaken-sticky-promotion.is-too-tall { position: static; }
	.awaken-promotion-flow--mobile { display: none; }
	.awaken-promotion-flow--desktop { display: block; }
}
@media (max-width: 1100px) {
	.awaken-promotion-flow .awaken-referral-text { font-size: 15px; }
}
@media (max-width: 360px) {
	.awaken-referral-card .awaken-referral-title { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
	.awaken-referral-card a { transition: none; }
}
