:root {
	--catanova-legal-content-width: 920px;
}

.page-template-page-legal .site-content > .ast-container,
.page-template-page-legal .ast-container,
.page-template-page-legal .entry-content,
.page-template-page-legal .ast-article-single {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.page-template-page-legal .entry-header,
.page-template-page-legal .ast-single-post-order {
	display: none !important;
}

.catanova-legal-page {
	background: #3f3f3f;
	color: #ffffff;
}

.catanova-legal-page--privacy {
	background: #3f3f3f;
	color: #ffffff;
}

.catanova-legal-page__topbar {
	position: sticky;
	top: 0;
	z-index: 30;
	background: #3f3f3f;
	backdrop-filter: saturate(140%) blur(6px);
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.catanova-legal-page__topbar-inner {
	display: flex;
	align-items: center;
	min-height: 72px;
}

.catanova-legal-page__logo-link {
	display: inline-flex;
	align-items: center;
	text-decoration: none;
	color: inherit;
}

.catanova-legal-page__logo-img {
	width: auto;
	height: 36px;
	max-width: min(220px, 60vw);
	object-fit: contain;
}

.catanova-legal-page__logo-text {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.2;
}

.catanova-legal-page__header {
	padding: clamp(96px, 14vw, 200px) clamp(16px, 4vw, 64px) clamp(32px, 6vw, 64px);
	background: #3f3f3f;
	border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}

.catanova-legal-page__body {
	padding: clamp(28px, 4vw, 48px) 16px clamp(40px, 7vw, 80px);
	background: #3f3f3f;
}

.catanova-legal-page__container {
	width: min(100%, var(--catanova-legal-content-width));
	margin: 0 auto;
}

.catanova-legal-page__eyebrow {
	margin: 0 0 12px;
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--catanova-accent, #ff5500);
}

.catanova-legal-page__title {
	margin: 0;
	font-size: clamp(2rem, 5.2vw, 4rem);
	font-weight: 400;
	line-height: 1.1;
	color: #fff;
}

.catanova-legal-page__lead {
	margin: 20px 0 0;
	max-width: 70ch;
	font-size: clamp(1rem, 1.8vw, 1.25rem);
	line-height: 1.6;
	color: rgba(255, 255, 255, 0.86);
}

.catanova-legal-page__content {
	font-size: clamp(1rem, 1.2vw, 1.125rem);
	line-height: 1.75;
}

.catanova-legal-page__content > *:first-child {
	margin-top: 0;
}

.catanova-legal-page__content > *:last-child {
	margin-bottom: 0;
}

.catanova-legal-page__content h2,
.catanova-legal-page__content h3,
.catanova-legal-page__content h4 {
	margin-top: 2.2em;
	margin-bottom: 0.7em;
	line-height: 1.25;
	color: #ffffff;
}

.catanova-legal-page__content h2 {
	font-size: clamp(1.5rem, 3.1vw, 2.2rem);
}

.catanova-legal-page__content h3 {
	font-size: clamp(1.25rem, 2.4vw, 1.7rem);
}

.catanova-legal-page__content p,
.catanova-legal-page__content ul,
.catanova-legal-page__content ol {
	margin: 0 0 1.1em;
}

.catanova-legal-page__content ul,
.catanova-legal-page__content ol {
	padding-left: 1.3em;
}

.catanova-legal-page__content li + li {
	margin-top: 0.5em;
}

.catanova-legal-page__content a {
	color: #ff8a4a;
	text-decoration-thickness: 0.08em;
	text-underline-offset: 0.15em;
	word-break: break-word;
}

.catanova-legal-page__content a:hover {
	color: #ffb186;
}

.catanova-legal-page--privacy .catanova-legal-page__topbar {
	background: #3f3f3f;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.catanova-legal-page--privacy .catanova-legal-page__logo-link,
.catanova-legal-page--privacy .catanova-legal-page__logo-text {
	color: #ffffff;
}

.catanova-legal-page--privacy .catanova-legal-page__header {
	background: #3f3f3f;
	border-bottom-color: rgba(255, 255, 255, 0.16);
}

.catanova-legal-page--privacy .catanova-legal-page__body {
	background: #3f3f3f;
}

.catanova-legal-page--privacy .catanova-legal-page__title,
.catanova-legal-page--privacy .catanova-legal-page__content,
.catanova-legal-page--privacy .catanova-legal-page__content h2,
.catanova-legal-page--privacy .catanova-legal-page__content h3,
.catanova-legal-page--privacy .catanova-legal-page__content h4 {
	color: #ffffff;
}

.catanova-legal-page--privacy .catanova-legal-page__lead {
	color: rgba(255, 255, 255, 0.86);
}

.catanova-legal-page--privacy .catanova-legal-page__content a {
	color: #ff8a4a;
}

.catanova-legal-page--privacy .catanova-legal-page__content a:hover {
	color: #ffb186;
}

.catanova-legal-page__content table {
	width: 100%;
	border-collapse: collapse;
	display: block;
	overflow-x: auto;
}

.catanova-legal-page__content th,
.catanova-legal-page__content td {
	border: 1px solid rgba(255, 255, 255, 0.24);
	padding: 10px 12px;
	text-align: left;
	vertical-align: top;
}

.catanova-legal-page--privacy .catanova-legal-page__content th,
.catanova-legal-page--privacy .catanova-legal-page__content td {
	border-color: rgba(255, 255, 255, 0.24);
}

@media (max-width: 640px) {
	.catanova-legal-page__topbar-inner {
		min-height: 64px;
	}

	.catanova-legal-page__logo-img {
		height: 30px;
		max-width: min(180px, 56vw);
	}

	.catanova-legal-page__header {
		padding-top: max(64px, calc(env(safe-area-inset-top) + 40px));
	}

	.catanova-legal-page__content {
		line-height: 1.7;
	}

	.catanova-legal-page__content h2,
	.catanova-legal-page__content h3,
	.catanova-legal-page__content h4 {
		margin-top: 1.8em;
	}
}
