/* Legal pages: calm, readable long-form layout. */

.lotos-legal {
	background: var(--lotos-color-warm-white);
}

.lotos-legal__hero {
	background: #12110f;
	color: var(--lotos-color-warm-white);
	padding: clamp(9rem, 15vw, 13rem) 0 clamp(4rem, 8vw, 7rem);
}

.lotos-legal__hero h1 {
	color: inherit;
	font-size: clamp(2.7rem, 5vw, 4.8rem);
	margin: 1rem 0 0;
}

.lotos-legal__layout {
	display: grid;
	gap: clamp(3rem, 8vw, 8rem);
	grid-template-columns: minmax(13rem, 0.42fr) minmax(0, 1.58fr);
	padding-block: clamp(4rem, 9vw, 9rem);
}

.lotos-legal__aside {
	align-self: start;
	border-top: 1px solid var(--lotos-color-border);
	position: sticky;
	top: 7rem;
}

.lotos-legal__aside .lotos-kicker {
	margin: 1.5rem 0;
}

.lotos-legal__aside address,
.lotos-legal__aside p:not(.lotos-kicker) {
	font-size: 0.9rem;
	font-style: normal;
	line-height: 1.7;
}

.lotos-legal__aside a {
	text-decoration: none;
}

.lotos-legal__article {
	max-width: 54rem;
}

.lotos-legal__review-note {
	background: #eee2c9;
	border-left: 3px solid var(--lotos-color-gold);
	font-size: 0.88rem;
	line-height: 1.55;
	margin-bottom: 3rem;
	padding: 1rem 1.25rem;
}

.lotos-legal__content :where(h2, h3, h4) {
	letter-spacing: -0.015em;
	margin-bottom: 0.8rem;
	padding-top: 1.6rem;
}

.lotos-legal__content h2 {
	border-top: 1px solid var(--lotos-color-border);
	font-size: clamp(1.65rem, 2.3vw, 2.25rem);
	margin-top: 3.5rem;
	padding-top: 2rem;
}

.lotos-legal__content h3 {
	font-family: var(--lotos-font-body);
	font-size: 1.08rem;
	font-weight: 700;
	margin-top: 2rem;
}

.lotos-legal__content :where(p, li) {
	font-size: 0.98rem;
	line-height: 1.75;
}

.lotos-legal__content p {
	margin-bottom: 1rem;
}

.lotos-legal__content :where(ul, ol) {
	margin: 0 0 1.5rem 1.25rem;
	padding: 0;
}

.lotos-legal__content a {
	color: var(--lotos-color-bronze);
	overflow-wrap: anywhere;
}

@media (max-width: 767px) {
	.lotos-legal__hero {
		padding-top: 8rem;
	}

	.lotos-legal__layout {
		grid-template-columns: 1fr;
	}

	.lotos-legal__aside {
		position: static;
	}

	.lotos-legal__content h2 {
		font-size: 1.6rem;
	}
}
