/* ==========================================================================
   Legal Pages — Privacy / Terms
   ========================================================================== */

/* Hero */

.legal-hero {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	min-height: 400px;
	padding: clamp(80px, 12vw, 120px) 0;
	background-color: #d9d9d9;
	background-image: linear-gradient(rgb(0 0 0 / 45%), rgb(0 0 0 / 45%)),
		url('/wp-content/uploads/2026/06/8347-5.webp');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.legal-hero__inner {
	display: flex;
	justify-content: center;
}

.legal-hero__title {
	margin: 0;
	font-size: clamp(36px, 5vw + 0.5rem, 60px);
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.01em;
	color: #fff;
	text-align: center;
}

/* Content */

.legal-content {
	padding: clamp(80px, 12vw, 160px) 0;
}

.legal-content__inner {
	max-width: 900px;
	margin: 0 auto;
}

.legal-content__meta {
	margin: 0 0 clamp(40px, 6vw, 64px);
	font-size: clamp(14px, 0.5vw + 0.75rem, 16px);
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: -0.01em;
	color: var(--color-text-muted);
}

.legal-section + .legal-section {
	margin-top: clamp(40px, 5vw, 56px);
}

.legal-section__title {
	margin: 0 0 16px;
	font-size: clamp(20px, 1.5vw + 0.75rem, 24px);
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: -0.01em;
	color: var(--color-text);
}

.legal-section__body {
	font-size: clamp(15px, 0.5vw + 0.8rem, 17px);
	font-weight: 400;
	line-height: 1.75;
	letter-spacing: -0.01em;
	color: var(--color-text-secondary);
}

.legal-section__body p + p {
	margin-top: 12px;
}

.legal-section__body ol,
.legal-section__body ul {
	margin: 12px 0 0;
	padding-left: 1.4em;
}

.legal-section__body li + li {
	margin-top: 8px;
}

.legal-section__body ol > li > ol,
.legal-section__body ol > li > ul,
.legal-section__body ul > li > ul {
	margin-top: 8px;
}

.legal-section__body a {
	color: var(--color-accent);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.legal-section__body a:hover {
	opacity: 0.8;
}

.legal-table-wrap {
	margin-top: 16px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.legal-table {
	width: 100%;
	min-width: 520px;
	border-collapse: collapse;
	font-size: clamp(14px, 0.4vw + 0.75rem, 16px);
	line-height: 1.6;
}

.legal-table th,
.legal-table td {
	padding: 14px 16px;
	border: 1px solid var(--color-border-light);
	text-align: left;
	vertical-align: top;
}

.legal-table th {
	width: 28%;
	font-weight: 600;
	background: var(--color-bg-subtle);
	color: var(--color-text);
}

.legal-table td {
	color: var(--color-text-secondary);
}

@media (max-width: 767px) {
	.legal-hero {
		min-height: 280px;
		padding: 80px 0 60px;
	}

	.legal-table th,
	.legal-table td {
		padding: 12px;
	}
}
