.ckw-privacy-page {
	background: var(--ckw-soft);
}

.ckw-privacy-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, .68fr);
	align-items: center;
	gap: clamp(44px, 7vw, 96px);
}

.ckw-privacy-hero__copy h1 {
	max-width: 760px;
	margin: 13px 0 0;
	color: var(--ckw-white);
	font-size: clamp(42px, 5.2vw, 68px);
	font-weight: 900;
	line-height: 1.25;
}

.ckw-privacy-hero__copy > p {
	max-width: 720px;
	margin: 20px 0 0;
	font-size: 17px;
	line-height: 1.9;
}

.ckw-privacy-hero__panel ul {
	display: grid;
	margin: 20px 0 0;
	padding: 0;
	gap: 11px;
	list-style: none;
}

.ckw-privacy-hero__panel li {
	position: relative;
	padding-inline-start: 22px;
	font-size: 14px;
	line-height: 1.75;
}

.ckw-privacy-hero__panel li::before {
	content: "✓";
	position: absolute;
	inset-inline-start: 0;
	color: var(--ckw-orange-400);
	font-weight: 900;
}

.ckw-privacy-content {
	padding-block: 76px 96px;
}

.ckw-privacy-layout {
	max-width: 980px;
}

.ckw-policy-article {
	padding: clamp(28px, 5vw, 64px);
	border: 1px solid var(--ckw-line);
	border-radius: var(--ckw-radius-lg);
	background: var(--ckw-white);
	box-shadow: var(--ckw-shadow-sm);
	font-size: 17px;
	line-height: 2;
}

.ckw-policy-article > :first-child {
	margin-top: 0;
}

.ckw-policy-article h2 {
	margin: 58px 0 18px;
	padding-inline-start: 17px;
	border-inline-start: 4px solid var(--ckw-orange-500);
	color: var(--ckw-ink-950);
	font-size: clamp(27px, 3.3vw, 38px);
	font-weight: 900;
	line-height: 1.4;
}

.ckw-policy-article h3 {
	margin: 32px 0 12px;
	color: var(--ckw-ink-900);
	font-size: 22px;
	font-weight: 900;
}

.ckw-policy-article p,
.ckw-policy-article li {
	color: var(--ckw-muted);
}

.ckw-policy-article ul {
	margin: 14px 0 24px;
	padding-inline-start: 24px;
}

.ckw-policy-summary {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 42px;
	padding: 18px;
	border: 1px solid #f1d8c1;
	border-radius: 16px;
	background: var(--ckw-orange-100);
	gap: 10px;
}

.ckw-policy-summary a {
	display: flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	padding: 8px 12px;
	border-radius: 9px;
	background: var(--ckw-white);
	color: var(--ckw-ink-900);
	font-size: 14px;
	font-weight: 800;
	text-align: center;
	text-decoration: none;
}

.ckw-policy-summary a:hover,
.ckw-policy-summary a:focus-visible {
	background: var(--ckw-ink-950);
	color: var(--ckw-white);
}

.ckw-policy-note,
.ckw-policy-contact {
	margin: 30px 0;
	padding: 22px 24px;
	border-radius: 14px;
}

.ckw-policy-note {
	border-inline-start: 4px solid var(--ckw-orange-500);
	background: var(--ckw-orange-100);
}

.ckw-policy-contact {
	border: 1px solid rgba(255, 255, 255, .12);
	background: var(--ckw-ink-950);
	color: var(--ckw-white);
}

.ckw-policy-article .ckw-policy-contact h2 {
	border-inline-start-color: var(--ckw-orange-500);
	color: var(--ckw-white);
}

.ckw-policy-article .ckw-policy-contact p,
.ckw-policy-article .ckw-policy-contact li {
	color: rgba(255, 255, 255, .86);
}

.ckw-policy-article .ckw-policy-contact a {
	color: var(--ckw-white);
	font-weight: 800;
	text-decoration-color: var(--ckw-orange-400);
	text-decoration-thickness: 2px;
	text-underline-offset: 4px;
}

.ckw-policy-article .ckw-policy-contact a:hover,
.ckw-policy-article .ckw-policy-contact a:focus-visible {
	color: var(--ckw-orange-300);
}

@media (max-width: 820px) {
	.ckw-privacy-hero__grid {
		grid-template-columns: 1fr;
		align-content: center;
		gap: 24px;
	}

	.ckw-privacy-hero__panel {
		padding: 22px;
	}

	.ckw-policy-summary {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 620px) {
	.ckw-privacy-content {
		padding-block: 38px 68px;
	}

	.ckw-policy-article {
		padding: 25px 19px;
		border-radius: 16px;
		font-size: 16px;
	}

	.ckw-policy-summary {
		grid-template-columns: 1fr;
	}
}
