:root {
	--bg: #f6f6f3;
	--surface: #ffffff;
	--surface-2: #f1f4f6;
	--text: #1f252b;
	--muted: #5b6772;
	--line: #d7dde2;
	--brand: #0b6d78;
	--brand-soft: #dcecee;
	--accent: #5b9d1e;
	--warning: #b58100;
	--radius: 18px;
	--shadow: 0 18px 40px rgba(0,0,0,.06);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--bg);
	color: var(--text);
	font: 16px/1.6 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

main {
	width: min(980px, calc(100% - 32px));
	margin: 40px auto 72px;
}

.card {
	background: var(--surface);
	border: 1px solid var(--line);
	border-radius: var(--radius);
	box-shadow: var(--shadow);
	overflow: hidden;
}

.hero {
	padding: 34px 34px 28px;
}

h1, h2, h3 {
	letter-spacing: -0.02em;
	line-height: 1.15;
	margin: 0;
}

h1 { font-size: clamp(2rem, 1.5rem + 2vw, 3.2rem); }
h2 { font-size: clamp(1.3rem, 1.1rem + .7vw, 1.9rem); margin-bottom: 14px; }
h3 { font-size: 1.1rem; margin-bottom: 10px; }

p { margin: 0 0 16px; }
a { color: var(--brand); }

.eyebrow {
	display: inline-block;
	margin-bottom: 12px;
	padding: 7px 11px;
	border-radius: 999px;
	background: var(--brand-soft);
	color: var(--brand);
	font-weight: 700;
	font-size: .88rem;
}

.human-notice {
	margin: 22px 0 24px;
	padding: 14px 16px;
	border-left: 4px solid var(--brand);
	background: #f4fafb;
	border-radius: 12px;
	color: #28424a;
}

.lead-definition {
	font-size: 1.08rem;
}

.section {
	padding: 28px 34px;
	border-top: 1px solid var(--line);
}

dl.data-grid {
	display: grid;
	grid-template-columns: minmax(160px, 220px) 1fr;
	gap: 0;
	border: 1px solid var(--line);
	border-radius: 16px;
	overflow: hidden;
	background: var(--surface);
	margin: 0;
}

.data-grid dt,
.data-grid dd {
	margin: 0;
	padding: 14px 16px;
	border-bottom: 1px solid var(--line);
}

.data-grid dt {
	font-weight: 700;
	background: var(--surface-2);
}

.data-grid dd {
	background: var(--surface);
}

.data-grid dt:last-of-type,
.data-grid dd:last-of-type {
	border-bottom: 0;
}

ul.clean {
	margin: 0;
	padding-left: 18px;
}

.note-box {
	background: #f8faf8;
	border: 1px solid #dce8d2;
	border-radius: 16px;
	padding: 18px;
}

.faq-item {
	padding: 18px 0;
	border-top: 1px solid var(--line);
}

.faq-item:first-of-type { border-top: 0; padding-top: 0; }
.muted { color: var(--muted); }

.footer-links {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 8px;
}

@media (max-width: 760px) {
	main { width: min(100% - 20px, 980px); margin: 18px auto 40px; }
	.hero, .section { padding: 22px 18px; }
	.grid { grid-template-columns: 1fr; }
	dl.data-grid { grid-template-columns: 1fr; }
	.data-grid dt { border-bottom: 0; }
	.data-grid dd { border-top: 1px solid rgba(0,0,0,.04); }
}
