/**
 * Legal / policy pages ([hlp_disclaimer]).
 */

body.hlp-has-legal-page .entry-header,
body.hlp-has-legal-page .page-header,
body.hlp-has-legal-page .wp-block-post-title,
body.hlp-has-legal-page h1.wp-block-post-title {
	display: none !important;
}

body.hlp-has-legal-page .wp-site-blocks main.wp-block-group {
	margin-top: clamp(0.5rem, 1.5vw, 1rem) !important;
	max-width: none !important;
}

body.hlp-has-legal-page .wp-site-blocks main.wp-block-group > .wp-block-group.alignfull:first-child {
	padding-top: clamp(0.35rem, 1vw, 0.75rem) !important;
	padding-bottom: clamp(1.5rem, 3vw, 2.5rem) !important;
	max-width: none !important;
	padding-left: clamp(0.75rem, 2.5vw, 1.5rem) !important;
	padding-right: clamp(0.75rem, 2.5vw, 1.5rem) !important;
}

body.hlp-has-legal-page .wp-block-post-content,
body.hlp-has-legal-page .entry-content,
body.hlp-has-legal-page .wp-block-post-content.is-layout-constrained,
body.hlp-has-legal-page .wp-block-group.is-layout-constrained,
body.hlp-has-legal-page main.wp-block-group.is-layout-constrained {
	max-width: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

body.hlp-has-legal-page .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	max-width: none !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.hlp-legal-page {
	--hlp-legal-side: clamp(0.65rem, 2vw, 1.25rem);
	clear: both;
	position: relative;
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding: clamp(1.25rem, 3vw, 2rem) var(--hlp-legal-side) clamp(1.5rem, 4vw, 2.25rem);
	box-sizing: border-box;
	background: rgba(12, 12, 14, 0.95);
	border: 1px solid rgba(212, 175, 55, 0.28);
	border-radius: 14px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.45);
	color: rgba(232, 224, 208, 0.88);
	font-family: "DM Sans", var(--flock-body, system-ui, sans-serif);
	line-height: 1.65;
}

.hlp-legal-page__head {
	text-align: center;
	padding-bottom: 1.25rem;
	margin-bottom: 1.25rem;
	border-bottom: 1px solid rgba(212, 175, 55, 0.22);
}

.hlp-legal-page__eyebrow {
	margin: 0 0 0.35rem;
	font-family: var(--flock-display, "Orbitron", system-ui, sans-serif);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--flock-gold, #d4af37);
}

.hlp-legal-page__title {
	margin: 0;
	font-family: var(--flock-display, "Orbitron", system-ui, sans-serif);
	font-size: clamp(1.35rem, 4vw, 1.85rem);
	font-weight: 700;
	letter-spacing: 0.04em;
	color: var(--flock-gold-bright, #e8c547);
}

.hlp-legal-page__section + .hlp-legal-page__section {
	margin-top: 1.35rem;
	padding-top: 1.35rem;
	border-top: 1px solid rgba(212, 175, 55, 0.1);
}

.hlp-legal-page__section-title {
	margin: 0 0 0.65rem;
	font-family: var(--flock-display, "Orbitron", system-ui, sans-serif);
	font-size: clamp(0.9rem, 2.5vw, 1rem);
	font-weight: 700;
	letter-spacing: 0.06em;
	color: var(--flock-gold-bright, #e8c547);
}

.hlp-legal-page__section p {
	margin: 0 0 0.85rem;
	font-size: clamp(0.92rem, 1.1vw, 1rem);
	color: rgba(232, 224, 208, 0.82);
	max-width: none;
}

.hlp-legal-page__section p:last-child {
	margin-bottom: 0;
}

.hlp-legal-page__foot {
	margin-top: 1.75rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(212, 175, 55, 0.22);
	text-align: center;
}

.hlp-legal-page__brand {
	margin: 0 0 0.35rem;
	font-family: var(--flock-display, "Orbitron", system-ui, sans-serif);
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	color: var(--flock-gold-bright, #e8c547);
}

.hlp-legal-page__pillars {
	margin: 0 0 0.5rem;
	font-size: 0.8rem;
	color: rgba(232, 224, 208, 0.55);
	letter-spacing: 0.02em;
}

.hlp-legal-page__tagline {
	margin: 0;
	font-size: 0.85rem;
	font-weight: 600;
	font-style: italic;
	color: rgba(232, 224, 208, 0.65);
}

.hlp-legal-page__related {
	margin: 1rem 0 0;
	font-size: 0.82rem;
}

.hlp-legal-page__related a {
	color: var(--flock-gold-bright, #e8c547);
	font-weight: 600;
	text-decoration: none;
}

.hlp-legal-page__related a:hover {
	text-decoration: underline;
}

@media (max-width: 767px) {
	.hlp-legal-page {
		--hlp-legal-max: 100%;
		border-radius: 0;
		border-left: none;
		border-right: none;
		padding-left: clamp(1rem, 4vw, 1.25rem);
		padding-right: clamp(1rem, 4vw, 1.25rem);
	}
}
