/* Contextual CTA panel (public/cta-popups.js). Non-modal, bottom corner, never blocks the page.
   Every text colour is set explicitly on the panel's own elements, so the page's colours cannot change it. */
.tha-cta-panel {
	position: fixed;
	right: 16px;
	bottom: 16px;
	z-index: 60;
	display: grid;
	gap: 10px;
	width: min(340px, calc(100% - 32px));
	padding: 20px 22px 22px;
	border: 1px solid #d7e4ea;
	border-radius: 14px;
	background: #ffffff;
	box-shadow: 0 14px 36px rgba(16, 43, 64, .18);
	color: #173449;
	font-family: inherit;
}
.tha-cta-panel .tha-cta-heading { margin: 0; color: #173449; font-size: 1.05rem; font-weight: 600; line-height: 1.3; padding-right: 24px; }
.tha-cta-panel .tha-cta-body { margin: 0; color: #3e5466; font-size: .92rem; line-height: 1.5; }
.tha-cta-panel .tha-cta-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 20px;
	border-radius: 23px;
	background: #087d78;
	color: #ffffff;
	font-weight: 600;
	text-decoration: none;
}
.tha-cta-panel .tha-cta-button:hover,
.tha-cta-panel .tha-cta-button:focus-visible { background: #056964; color: #ffffff; }
.tha-cta-panel .tha-cta-close {
	position: absolute;
	top: 8px;
	right: 10px;
	width: 32px;
	height: 32px;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: #3e5466;
	font-size: 1.4rem;
	line-height: 1;
	cursor: pointer;
}
.tha-cta-panel .tha-cta-close:hover,
.tha-cta-panel .tha-cta-close:focus-visible { background: #e9f1f5; color: #173449; }
.tha-cta-panel { position: fixed; }
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) .tha-cta-panel { background: #102b40; border-color: #2a4a60; color: #eff5fa; }
	:root:not([data-theme="light"]) .tha-cta-panel .tha-cta-heading { color: #eff5fa; }
	:root:not([data-theme="light"]) .tha-cta-panel .tha-cta-body { color: #cfdbe4; }
	:root:not([data-theme="light"]) .tha-cta-panel .tha-cta-close { color: #cfdbe4; }
}
:root[data-theme="dark"] .tha-cta-panel { background: #102b40; border-color: #2a4a60; color: #eff5fa; }
:root[data-theme="dark"] .tha-cta-panel .tha-cta-heading { color: #eff5fa; }
:root[data-theme="dark"] .tha-cta-panel .tha-cta-body { color: #cfdbe4; }
:root[data-theme="dark"] .tha-cta-panel .tha-cta-close { color: #cfdbe4; }
@media (max-width: 480px) {
	.tha-cta-panel { right: 12px; bottom: 12px; width: calc(100% - 24px); }
}
