
*, *::before, *::after {
	box-sizing: border-box;
}

* {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font: inherit;
}

body {
	min-height: 100vh;
	text-decoration-skip-ink: auto;
}

img, svg, video canvas, picture {
	display: block;
	max-width: 100%;
}

ul, ol {
	list-style: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

h1, h2, h3, h4, h5, h6, p {
	overflow-wrap: break-word;
}

h1, h2, h3, h4, h5, h6 {
	text-wrap: balance;
}

p {
	text-wrap: pretty;
}

a {
	text-decoration: none;
	color: inherit;
}

@media (prefers-reduced-motion: no-preference) {
	:has(:target) {
		scroll-behavior: smooth;
	}
}
