/*
 * Legal page styles — Privacy Policy, Cookie Policy, T&Cs.
 * The simplest page on the site: pure typography + company info card.
 * Page-scoped — no shared component duplication.
 */

.mhg-legal {
	background-color: var(--mhg-color-white);
	padding: 4rem 0 5rem;
}

.mhg-legal__inner {
	width: 100%;
	max-width: 740px;
	margin: 0 auto;
	padding: 0 var(--mhg-space-sm);
	box-sizing: border-box;
}

/* ============================================================
 * Header
 * ============================================================ */
.mhg-legal__header {
	padding-bottom: var(--mhg-space-md);
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
	margin-bottom: var(--mhg-space-lg);
}

.mhg-legal__heading {
	margin: 0 0 var(--mhg-space-xs);
	font-family: var(--mhg-font-heading);
	font-size: 2rem;
	color: var(--mhg-color-charcoal);
	line-height: 1.2;
}

.mhg-legal__meta {
	margin: 0;
	font-family: var(--mhg-font-body);
	font-size: 0.85rem;
	font-weight: 300;
	color: #777;
}

/* ============================================================
 * Content area — scoped typography for editor output
 * ============================================================ */
.mhg-legal__content {
	font-family: var(--mhg-font-body);
	font-weight: 300;
	font-size: 0.9rem;
	line-height: var(--mhg-line-height-body);
	color: #555;
}

.mhg-legal__content h2 {
	margin: var(--mhg-space-lg) 0 var(--mhg-space-sm);
	font-family: var(--mhg-font-heading);
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--mhg-color-charcoal);
	line-height: 1.3;
}

.mhg-legal__content h2:first-child {
	margin-top: 0;
}

.mhg-legal__content h3 {
	margin: var(--mhg-space-md) 0 var(--mhg-space-xs);
	font-family: var(--mhg-font-body);
	font-size: 1rem;
	font-weight: 600;
	color: var(--mhg-color-charcoal);
	line-height: 1.3;
}

.mhg-legal__content p {
	margin: 0 0 var(--mhg-space-sm);
}

.mhg-legal__content a {
	color: var(--mhg-color-teal);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.mhg-legal__content a:hover,
.mhg-legal__content a:focus {
	color: var(--mhg-color-teal-dark);
}

.mhg-legal__content ul {
	list-style: none;
	margin: 0 0 var(--mhg-space-sm);
	padding: 0;
}

.mhg-legal__content ul li {
	position: relative;
	padding-left: 1.25rem;
	margin: 0 0 0.45rem;
}

.mhg-legal__content ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55rem;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: var(--mhg-color-teal);
}

.mhg-legal__content strong {
	font-weight: 600;
	color: var(--mhg-color-charcoal);
}

/* ============================================================
 * Company info card at the foot
 * ============================================================ */
.mhg-legal__company-info {
	margin-top: var(--mhg-space-xl);
	padding: var(--mhg-space-md) var(--mhg-space-lg);
	background-color: #f8f7f5;
	border-left: 3px solid var(--mhg-color-gold);
	border-radius: var(--mhg-radius-sm);
}

.mhg-legal__company-name {
	margin: 0 0 var(--mhg-space-sm);
	font-family: var(--mhg-font-heading);
	font-size: 1.1rem;
	color: var(--mhg-color-charcoal);
	font-weight: 700;
}

.mhg-legal__company-details {
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	font-family: var(--mhg-font-body);
	font-size: 0.85rem;
	font-weight: 300;
	color: #555;
}

.mhg-legal__company-row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.mhg-legal__company-row dt {
	font-weight: 600;
	color: var(--mhg-color-charcoal);
}

.mhg-legal__company-row dt::after {
	content: ":";
}

.mhg-legal__company-row dd {
	margin: 0;
}

@media (min-width: 768px) {
	.mhg-legal {
		padding: 5rem 0 6rem;
	}

	.mhg-legal__heading {
		font-size: 2.5rem;
	}

	.mhg-legal__content h2 {
		font-size: 1.5rem;
	}
}
