.cg-policy.cg-policy {
	--cg-policy-accent: #2563eb;
	--cg-policy-button-text: #fff;
	--cg-policy-ink: #172033;
	--cg-policy-muted: #5f6b7a;
	--cg-policy-line: #ddd;
	--cg-policy-soft: #f5f5f5;
	--cg-policy-row: #f5f5f5;
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin-inline: auto;
	color: var(--cg-policy-ink);
	line-height: 1.7;
}

.cg-policy *,
.cg-policy *::before,
.cg-policy *::after {
	box-sizing: inherit;
}

.cg-policy.cg-policy h2 {
	margin: 2.4em 0 .9em;
	padding-bottom: .45em;
	border: 0;
	border-bottom: 1px solid var(--cg-policy-line) !important;
	color: var(--cg-policy-ink) !important;
	font-size: var(--cg-policy-h2-size, 40px) !important;
	font-weight: 600 !important;
	line-height: 1.25;
	letter-spacing: -.015em;
}

.cg-policy.cg-policy h3 {
	color: var(--cg-policy-ink) !important;
	font-size: var(--cg-policy-h3-size, 24px) !important;
	font-weight: 600 !important;
	line-height: 1.3;
}

.cg-policy strong,
.cg-policy b {
	font-weight: 600 !important;
}

.cg-policy p,
.cg-policy ul {
	margin: 0 0 1.15em;
}

.cg-policy.cg-policy a {
	color: var(--cg-policy-accent) !important;
	font-weight: 600;
	text-decoration-thickness: 1px;
	text-underline-offset: .18em;
	overflow-wrap: anywhere;
}

.cg-policy.cg-policy a:hover {
	color: var(--cg-policy-accent) !important;
}

.cg-policy a:focus-visible,
.cg-policy button:focus-visible {
	outline: 3px solid var(--cg-policy-accent);
	outline-offset: 3px;
}

.cg-policy-updated {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	margin-bottom: 1.25rem !important;
	padding: .45rem .75rem;
	border: 1px solid var(--cg-policy-line);
	border-radius: 999px;
	background: var(--cg-policy-soft);
	color: var(--cg-policy-muted);
	font-size: inherit !important;
	line-height: 1.3;
}

.cg-policy-intro {
	max-width: 850px;
	color: var(--cg-policy-muted);
	font-size: inherit !important;
}

.cg-policy .cg-policy-details-wrap,
.cg-policy .cg-audit-scroll {
	margin: 1.25rem 0;
	overflow-x: auto;
	border: 1px solid var(--cg-policy-line);
	border-radius: 6px;
	background: #fff;
	box-shadow: none !important;
}

.cg-policy.cg-policy table {
	width: 100% !important;
	margin: 0 !important;
	border: 0 !important;
	border-collapse: collapse !important;
	border-spacing: 0 !important;
	background: #fff !important;
	font-size: inherit !important;
}

.cg-policy.cg-policy table th,
.cg-policy.cg-policy table td {
	padding: .9rem 1rem !important;
	border: 0 !important;
	border-bottom: 1px solid var(--cg-policy-line) !important;
	font-size: inherit !important;
	text-align: left !important;
	vertical-align: top !important;
}

.cg-policy.cg-policy table tr > th:first-child,
.cg-policy.cg-policy table tr > td:first-child {
	padding-left: 15px !important;
}

.cg-policy.cg-policy table th {
	color: var(--cg-policy-ink) !important;
	font-weight: 600 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
}

.cg-policy.cg-policy table tr:last-child > th,
.cg-policy.cg-policy table tr:last-child > td {
	border-bottom: 0 !important;
}

.cg-policy .cg-policy-details th {
	width: 36%;
	background: #f5f5f5 !important;
	color: var(--cg-policy-ink) !important;
	font-weight: 600 !important;
}

.cg-policy .cg-policy-details td {
	background: #fff !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) {
	margin: 2.4em 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	font-size: inherit !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dl {
	display: grid;
	grid-template-columns: minmax(180px, 36%) minmax(0, 1fr);
	margin: 1.25rem 0;
	overflow: hidden;
	border: 1px solid #ddd !important;
	border-radius: 6px;
	background: #fff !important;
	font-size: inherit !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dt,
.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dd {
	margin: 0 !important;
	padding: .9rem 1rem !important;
	border: 0 !important;
	border-top: 1px solid #ddd !important;
	color: var(--cg-policy-ink) !important;
	font: inherit !important;
	font-size: inherit !important;
	letter-spacing: normal !important;
	line-height: inherit !important;
	text-align: left !important;
	text-transform: none !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dt {
	background: #f5f5f5 !important;
	font-weight: 600 !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dd {
	border-left: 1px solid #ddd !important;
	background: #fff !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dt:first-of-type,
.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dd:first-of-type {
	border-top: 0 !important;
}

.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) strong,
.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) a {
	letter-spacing: normal !important;
	text-transform: none !important;
}

.cg-policy .cg-policy-uses th {
	width: 24%;
}

.cg-policy .cg-audit {
	margin: 1.25rem 0 2rem;
}

.cg-policy .cg-audit-heading {
	margin-bottom: .8rem;
	color: var(--cg-policy-muted);
}

.cg-policy .cg-audit-scroll {
	margin-top: 0;
}

.cg-policy .cg-audit thead th {
	border-bottom-color: #ddd !important;
	background: #333 !important;
	color: #fff !important;
	font-size: inherit !important;
	font-weight: 600;
	letter-spacing: normal;
	text-transform: none !important;
}

.cg-policy .cg-audit tbody tr:nth-child(even) td {
	background: #f5f5f5 !important;
}

.cg-policy .cg-audit tbody tr:hover td {
	background: #f5f5f5 !important;
}

.cg-policy .cg-audit td:first-child {
	color: var(--cg-policy-ink);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: inherit !important;
	font-weight: 600;
	white-space: nowrap;
}

.cg-policy .cg-audit td:nth-child(2),
.cg-policy .cg-audit td:nth-child(3) {
	white-space: nowrap;
}

.cg-policy .cg-policy-notice-actions,
.cg-policy .cg-policy-withdraw {
	margin: 1.4rem 0;
}

.cg-policy button.cg-shortcode-button {
	appearance: none !important;
	display: inline-flex !important;
	min-height: 46px !important;
	align-items: center;
	justify-content: center;
	padding: .78rem 1.6rem !important;
	border: 1px solid var(--cg-policy-accent) !important;
	border-radius: 8px !important;
	background: var(--cg-policy-accent) !important;
	box-shadow: none !important;
	color: var(--cg-policy-button-text) !important;
	cursor: pointer;
	font-family: inherit !important;
	font-size: inherit !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	text-align: center !important;
	text-decoration: none !important;
	transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.cg-policy button.cg-shortcode-button:hover {
	border-color: var(--cg-policy-accent) !important;
	background: var(--cg-policy-accent) !important;
	color: var(--cg-policy-button-text) !important;
	box-shadow: none !important;
	transform: translateY(-1px);
}

@media (max-width: 700px) {
	.cg-policy h2 { font-size: var(--cg-policy-h2-mobile-size, 28px) !important; }
	.cg-policy h3 { font-size: var(--cg-policy-h3-mobile-size, 22px) !important; }
	.cg-policy h2 {
		margin-top: 2em;
	}

	.cg-policy .cg-policy-details-wrap,
	.cg-policy .cg-audit-scroll {
		overflow: visible;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none !important;
	}

	.cg-policy .cg-policy-details,
	.cg-policy .cg-policy-details tbody,
	.cg-policy .cg-policy-details tr,
	.cg-policy .cg-policy-details th,
	.cg-policy .cg-policy-details td,
	.cg-policy .cg-audit table,
	.cg-policy .cg-audit tbody,
	.cg-policy .cg-audit tr,
	.cg-policy .cg-audit td {
		display: block;
		width: 100%;
	}

	.cg-policy .cg-policy-details tr,
	.cg-policy .cg-audit tr {
		margin-bottom: .8rem;
		overflow: hidden;
		border: 1px solid var(--cg-policy-line);
		border-radius: 6px;
		background: #fff;
		box-shadow: none !important;
	}

	.cg-policy .cg-policy-details th {
		padding-bottom: .4rem;
		border-bottom: 0;
		background: var(--cg-policy-soft);
		color: var(--cg-policy-muted);
		font-size: inherit !important;
		letter-spacing: normal;
		text-transform: none !important;
	}

	.cg-policy .cg-policy-details td {
		padding-top: .4rem;
	}

	.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dl {
		display: block;
		overflow: visible;
		border: 0 !important;
		background: transparent !important;
	}

	.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dt,
	.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dd {
		border: 1px solid #ddd !important;
	}

	.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dt {
		margin-top: .8rem !important;
		border-bottom: 0 !important;
		border-radius: 6px 6px 0 0;
	}

	.cg-policy.cg-policy .cg-popia-notice:not(.cg-australia-notice):not(.cg-pdp-notice) dd {
		border-top: 0 !important;
		border-radius: 0 0 6px 6px;
	}

	.cg-policy .cg-audit thead {
		display: none;
	}

	.cg-policy .cg-audit td,
	.cg-policy .cg-audit tbody tr:nth-child(even) td,
	.cg-policy .cg-audit tbody tr:hover td {
		display: grid;
		grid-template-columns: minmax(92px, .36fr) minmax(0, 1fr);
		gap: .75rem;
		border-bottom: 1px solid var(--cg-policy-line);
		background: #fff;
		white-space: normal;
	}

	.cg-policy .cg-audit td::before {
		content: attr(data-label);
		color: var(--cg-policy-muted);
		font-family: inherit;
		font-size: inherit !important;
		font-weight: 600;
		letter-spacing: normal;
		text-transform: none !important;
	}

	.cg-policy .cg-audit td:last-child {
		border-bottom: 0;
	}

	.cg-policy button.cg-shortcode-button {
		width: 100% !important;
	}
}

@media print {
	.cg-policy {
		max-width: none;
		color: #000;
		font-size: 11pt;
	}

	.cg-policy .cg-policy-notice-actions,
	.cg-policy .cg-policy-withdraw {
		display: none;
	}

	.cg-policy .cg-policy-details-wrap,
	.cg-policy .cg-audit-scroll {
		overflow: visible;
		box-shadow: none !important;
	}

	.cg-policy h2,
	.cg-policy table,
	.cg-policy tr {
		break-inside: avoid;
	}
}
