/* ==========================================================================
   page-privacy-policy.css — Online Privacy Policy page deltas.
   Depends on the shared cascade (variables, typography, layout, hero, footer).
   All brand colours are drawn from CSS custom properties defined in
   variables.css — never hardcoded here.
   ========================================================================== */


/* ── Hero band ────────────────────────────────────────────────────────────── */

.pp-hero-band {
	background: var(--cream);
	padding-top: 0;
	padding-bottom: 0;
}

.pp-hero-band .section-wrap {
	padding-top: 100px;
}

.pp-hero-heading {
	color: var(--ink);
}


/* ── Content band ─────────────────────────────────────────────────────────── */

.pp-content-band {
	background: var(--cream);
	padding-top: 0;
	padding-bottom: 0;
}

.pp-content-band .section-wrap {
	padding-top: 60px;
	padding-bottom: 80px;
}

/* Flex column — 42 px gap between every direct child, matching Figma's
   gap-[42px] on the content wrapper. */
.pp-content-body {
	display: flex;
	flex-direction: column;
	gap: 42px;
}


/* ── Typography ───────────────────────────────────────────────────────────── */

.pp-body {
	font-size: 26px;
	line-height: 40px;
	color: rgba(26, 26, 26, 0.75);
	margin: 0;
}

.pp-body strong,
.pp-body b {
	font-weight: 700;
	color: rgba(26, 26, 26, 0.75);
}

.pp-body a {
	font-weight: 700;
	text-decoration: underline;
	text-decoration-skip-ink: none;
	color: rgba(26, 26, 26, 0.75);
}

.pp-body a:hover {
	color: var(--ink);
}

/* Section group: heading (34 px) + body text — gap 24 px between them. */
.pp-section-group {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.pp-section-heading {
	font-size: 34px;
	line-height: 48px;
	font-weight: 700;
	color: var(--ink);
	margin: 0;
}


/* ── List group & bullets ─────────────────────────────────────────────────── */

/* Container for an intro paragraph + its bulleted list — gap 12 px. */
.pp-list-group {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.pp-list {
	display: flex;
	flex-direction: column;
	gap: 12px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.pp-list-item {
	display: flex;
	align-items: flex-start;
	gap: 12px;
}

/* Custom bullet icon — green square, 10 × 10 px, vertically centred with
   the first text line at 40 px line-height. */
.pp-list-icon {
	flex-shrink: 0;
	width: 24px;
	display: flex;
	justify-content: center;
	padding-top: 15px;
}

.pp-list-icon::before {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	background-color: var(--green);
	border-radius: 2px;
}

.pp-list-text {
	flex: 1;
	font-size: 26px;
	line-height: 40px;
	color: rgba(26, 26, 26, 0.75);
}

.pp-list-text strong,
.pp-list-text b {
	font-weight: 700;
}

.pp-list-text a {
	font-weight: 700;
	text-decoration: underline;
	text-decoration-skip-ink: none;
	color: rgba(26, 26, 26, 0.75);
}

.pp-list-text a:hover {
	color: var(--ink);
}


/* ── Responsive ───────────────────────────────────────────────────────────── */

@media (max-width: 1024px) {
	.pp-body,
	.pp-list-text {
		font-size: 20px;
		line-height: 32px;
	}

	.pp-list-icon {
		padding-top: 11px;
	}

	.pp-section-heading {
		font-size: 28px;
		line-height: 38px;
	}
}

@media (max-width: 768px) {
	.pp-hero-band .section-wrap {
		padding-top: 80px;
		padding-bottom: 48px;
	}

	.pp-body,
	.pp-list-text {
		font-size: 17px;
		line-height: 28px;
	}

	.pp-list-icon {
		padding-top: 9px;
	}

	.pp-section-heading {
		font-size: 24px;
		line-height: 34px;
	}

	.pp-content-body {
		gap: 32px;
	}
}
