.privacy-page {
	overflow-x: hidden;
}

.privacy-page::before,
.privacy-page::after {
	background: transparent;
	content: "";
	inset: 0;
	pointer-events: none;
	position: fixed;
	z-index: -2;
}

.privacy-page::after {
	background: transparent;
	z-index: -1;
}

.privacy-shell {
	position: relative;
}

.privacy-hero {
	align-items: center;
	grid-template-columns: minmax(0, 1fr) 380px;
}

.privacy-visual {
	background: rgba(37, 78, 79, 0.78);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 8px;
	box-shadow: 0 28px 62px rgba(0, 0, 0, 0.28);
	height: 260px;
	overflow: hidden;
	position: relative;
}

.terms-page[data-terms-theme="light"] .privacy-visual {
	background: #ebe6dc;
	border-color: rgba(23, 72, 78, 0.14);
	box-shadow: 0 28px 62px rgba(23, 72, 78, 0.14);
}

.privacy-orbit {
	border: 1px solid rgba(216, 162, 58, 0.24);
	border-radius: 50%;
	height: 220px;
	left: 80px;
	position: absolute;
	top: 20px;
	width: 220px;
}

.privacy-orbit::before,
.privacy-orbit::after {
	border: 1px solid rgba(216, 162, 58, 0.24);
	border-radius: 50%;
	content: "";
	inset: 28px;
	position: absolute;
}

.privacy-orbit::after {
	animation: privacyPulse 2.8s ease-in-out infinite;
	border-color: rgba(216, 162, 58, 0.32);
	inset: 58px;
}

.privacy-tower {
	background: rgba(237, 247, 248, 0.14);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-bottom: 0;
	border-radius: 8px 8px 0 0;
	bottom: 0;
	display: grid;
	gap: 14px;
	padding: 20px 18px;
	position: absolute;
}

.terms-page[data-terms-theme="light"] .privacy-tower {
	background: rgba(14, 42, 49, 0.1);
	border-color: rgba(23, 72, 78, 0.16);
}

.privacy-tower span {
	background: #d8a23a;
	border-radius: 2px;
	display: block;
	height: 8px;
	width: 64px;
}

.tower-main {
	height: 202px;
	left: 134px;
	width: 120px;
}

.tower-side {
	height: 146px;
	left: 238px;
	width: 104px;
}

.privacy-shield {
	align-items: center;
	animation: privacyFloat 3.4s ease-in-out infinite;
	background: #d8a23a;
	border: 8px solid rgba(216, 162, 58, 0.16);
	border-radius: 50%;
	box-shadow: 0 18px 40px rgba(216, 162, 58, 0.32);
	color: #10232a;
	display: flex;
	font-size: 38px;
	height: 92px;
	justify-content: center;
	left: 42px;
	position: absolute;
	top: 72px;
	width: 92px;
}

.privacy-key {
	align-items: center;
	background: #d8a23a;
	border-radius: 50%;
	bottom: 54px;
	box-shadow: 0 16px 34px rgba(216, 162, 58, 0.24);
	color: #16242a;
	display: flex;
	font-size: 22px;
	height: 54px;
	justify-content: center;
	position: absolute;
	right: 52px;
	width: 54px;
}

.privacy-summary {
	display: grid;
	gap: 14px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: -10px 0 30px;
}

.privacy-summary div {
	align-items: flex-start;
	background: rgba(255, 255, 255, 0.08);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 8px;
	display: grid;
	gap: 5px;
	grid-template-columns: 34px minmax(0, 1fr);
	padding: 16px;
}

.terms-page[data-terms-theme="light"] .privacy-summary div {
	background: rgba(255, 255, 255, 0.8);
	border-color: rgba(23, 72, 78, 0.12);
}

.privacy-summary i {
	align-items: center;
	background: rgba(216, 162, 58, 0.16);
	border-radius: 8px;
	color: #d8a23a;
	display: flex;
	height: 34px;
	justify-content: center;
}

.terms-page[data-terms-theme="light"] .privacy-summary i {
	color: #8b641f;
}

.privacy-summary strong {
	font-size: 14px;
	font-weight: 900;
}

.privacy-summary span {
	color: rgba(237, 247, 248, 0.66);
	font-size: 13px;
	grid-column: 2;
}

.terms-page[data-terms-theme="light"] .privacy-summary span {
	color: rgba(23, 39, 45, 0.66);
}

@keyframes privacyPulse {
	0%, 100% {
		opacity: 0.55;
		transform: scale(0.94);
	}
	50% {
		opacity: 1;
		transform: scale(1.08);
	}
}

@keyframes privacyFloat {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-8px);
	}
}

@media (max-width: 900px) {
	.privacy-hero,
	.privacy-summary {
		grid-template-columns: 1fr;
	}

	.privacy-visual {
		height: 230px;
	}
}

@media (max-width: 640px) {
	.privacy-summary div {
		grid-template-columns: 30px minmax(0, 1fr);
		padding: 14px;
	}

	.privacy-visual {
		height: 210px;
	}

	.tower-main {
		left: 108px;
	}

	.tower-side {
		left: 210px;
	}
}

/* Dashboard-aligned privacy page */
.privacy-visual {
	background: #f0ece3;
	border: 1px solid #dfe6e9;
	box-shadow: none;
}

.terms-page[data-terms-theme="dark"] .privacy-visual {
	background: #24383f;
	border-color: rgba(255, 255, 255, 0.12);
}

.privacy-orbit,
.privacy-orbit::before,
.privacy-orbit::after {
	border-color: rgba(216, 162, 58, 0.34);
}

.privacy-tower {
	background: #eef4f5;
	border-color: #b9c9cf;
}

.terms-page[data-terms-theme="dark"] .privacy-tower {
	background: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.18);
}

.privacy-shield,
.privacy-key {
	background: #d8a23a;
	box-shadow: none;
	color: #0f2732;
}

.privacy-shield {
	border-color: rgba(216, 162, 58, 0.16);
}

.privacy-summary div {
	background: #ffffff;
	border: 1px solid #dfe6e9;
	box-shadow: none;
	color: #263b44;
}

.terms-page[data-terms-theme="dark"] .privacy-summary div {
	background: #24383f;
	border-color: rgba(255, 255, 255, 0.12);
	color: #ffffff;
}

.privacy-summary i {
	background: #fff8e8;
	color: #8b641f;
}

.terms-page[data-terms-theme="dark"] .privacy-summary i {
	background: rgba(216, 162, 58, 0.12);
	color: #d8a23a;
}

.privacy-summary span {
	color: #50626b;
}

.terms-page[data-terms-theme="dark"] .privacy-summary span {
	color: rgba(248, 251, 252, 0.68);
}

.terms-page[data-terms-theme="dark"] .privacy-visual {
	background: #39352f;
	border-color: rgba(255, 255, 255, 0.12);
}

.terms-page[data-terms-theme="dark"] .privacy-summary div {
	background: #383530;
	border-color: rgba(255, 255, 255, 0.14);
}
