body {
	margin: 0;
	min-height: 100vh;
	background:
		radial-gradient(circle at top, rgba(255, 220, 162, 0.75), transparent 35%),
		linear-gradient(160deg, #f6f0e5 0%, #e6efe7 48%, #d4e3ea 100%);
	color: #14261f;
	font-family: Georgia, 'Times New Roman', serif;
}

.landing-shell {
	width: min(1040px, calc(100% - 2rem));
	margin: 0 auto;
	padding: 3rem 0 4rem;
}

.landing-hero,
.landing-section {
	background: rgba(255, 252, 246, 0.82);
	border: 1px solid rgba(20, 38, 31, 0.08);
	border-radius: 28px;
	box-shadow: 0 24px 60px rgba(20, 38, 31, 0.08);
	backdrop-filter: blur(12px);
}

.landing-hero {
	padding: 3rem;
}

.eyebrow {
	margin: 0 0 1rem;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	font-size: 0.78rem;
	color: #7a5f2d;
}

h1 {
	margin: 0;
	font-size: clamp(2.7rem, 6vw, 5.2rem);
	line-height: 0.95;
	letter-spacing: -0.04em;
}

.hero-copy {
	max-width: 42rem;
	margin: 1.5rem 0 0;
	font-size: 1.15rem;
	line-height: 1.7;
}

.hero-actions,
.card-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.hero-actions {
	margin-top: 2rem;
}

.hero-actions a {
	text-decoration: none;
}

.landing-section {
	margin-top: 1.5rem;
	padding: 2rem;
}

.card-grid {
	margin-top: 1.5rem;
}

.card {
	flex: 1 1 240px;
	padding: 1.5rem;
	border-radius: 20px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid rgba(20, 38, 31, 0.08);
}

.card h2,
.landing-section h2 {
	margin-top: 0;
}

.card p,
.landing-section p,
.landing-section li {
	line-height: 1.7;
}

.landing-section ul {
	margin: 1rem 0 0;
	padding-left: 1.2rem;
}

@media (max-width: 640px) {
	.landing-hero,
	.landing-section {
		padding: 1.5rem;
		border-radius: 22px;
	}
}
