.wg-consent {
	--wgc-ink: var(--wg-ink, #211714);
	--wgc-surface: var(--wg-surface, #fff);
	--wgc-rule: var(--wg-rule, #e8e0da);
	--wgc-muted: var(--wg-muted, #75665f);
	--wgc-accent: var(--wg-accent, #9a3412);
	--wgc-sans: var(--wg-sans, Arial, sans-serif);
	--wgc-serif: var(--wg-serif, Georgia, serif);

	position: fixed;
	right: 20px;
	bottom: 20px;
	left: 20px;
	z-index: 1200;
	margin: 0 auto;
	max-width: 940px;
	border: 1px solid var(--wgc-rule);
	border-top: 3px solid var(--wgc-accent);
	background: var(--wgc-surface);
	box-shadow: 0 18px 50px rgba(33, 23, 20, .22);
}

.wg-consent[hidden] { display: none; }

.wg-consent-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 28px;
	padding: 18px 22px;
}

.wg-consent-copy { min-width: 0; flex: 1 1 380px; }

.wg-consent-title {
	margin: 0 0 5px;
	color: var(--wgc-ink);
	font-family: var(--wgc-serif);
	font-size: 17px;
	font-weight: 700;
	letter-spacing: -.012em;
}

.wg-consent-body {
	margin: 0;
	color: var(--wgc-muted);
	font-family: var(--wgc-sans);
	font-size: 13px;
	line-height: 1.55;
}

.wg-consent-link { color: var(--wgc-accent); font-weight: 600; white-space: nowrap; }

.wg-consent-actions { display: flex; flex: 0 0 auto; gap: 10px; }

.wg-consent-btn {
	padding: 11px 22px;
	border: 1px solid var(--wgc-rule);
	background: none;
	color: var(--wgc-ink);
	cursor: pointer;
	font-family: var(--wgc-sans);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
	transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.wg-consent-decline:hover,
.wg-consent-decline:focus-visible { border-color: var(--wgc-ink); background: var(--wgc-ink); color: #fff; }

.wg-consent-accept {
	border-color: var(--wgc-accent);
	background: var(--wgc-accent);
	color: #fff;
}

.wg-consent-accept:hover,
.wg-consent-accept:focus-visible { border-color: var(--wgc-ink); background: var(--wgc-ink); }

@media (max-width: 640px) {
	.wg-consent { right: 10px; bottom: 10px; left: 10px; }
	.wg-consent-inner { padding: 15px 16px; gap: 14px; }
	.wg-consent-actions { width: 100%; }
	/* Reject has to be no harder to reach than accept. */
	.wg-consent-btn { flex: 1; padding: 12px 10px; }
}

@media (prefers-reduced-motion: reduce) {
	.wg-consent-btn { transition: none; }
}
