*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	font-family: var(--font-sans);
	background:
		radial-gradient(circle at 8% 10%, rgba(116, 167, 212, 0.12), transparent 30%),
		radial-gradient(circle at 88% 12%, rgba(116, 167, 212, 0.06), transparent 28%),
		linear-gradient(180deg, var(--color-page-background) 0%, #0f1826 48%, #070d15 100%);
	color: var(--color-text);
	line-height: 1.68;
	overflow-x: hidden;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
}

p {
	margin: 0 0 1rem;
}

h1,
h2,
h3 {
	margin: 0 0 1rem;
	font-family: var(--font-serif);
	line-height: 1.1;
	font-weight: 600;
	letter-spacing: -0.03em;
}

.site {
	min-height: 100vh;
}

.section-eyebrow {
	font-family: var(--font-sans);
	font-size: calc(var(--type-eyebrow) * 1.2);
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--color-brand-blue);
}

.section-title {
	font-size: var(--type-h2);
	line-height: 1.08;
}

.section-copy {
	max-width: 60ch;
	font-size: var(--type-body);
	color: var(--color-text-muted);
}

.section-actions {
	margin-top: var(--space-2);
}

.section-shell {
	padding: var(--space-7) 0;
}

.text-small {
	font-size: var(--type-small);
	color: var(--color-text-muted);
}
