@layer base {
	*,
	*::before,
	*::after {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
	}

	html {
		-webkit-text-size-adjust: 100%;
		-moz-text-size-adjust: 100%;
		text-size-adjust: 100%;
	}

	body {
		min-height: 100dvh;
		-webkit-font-smoothing: antialiased;
	}

	img,
	picture,
	video,
	svg {
		max-width: 100%;
		height: auto;
		display: block;
	}

	input,
	button,
	textarea,
	select {
		font: inherit;
		color: inherit;
	}

	a {
		color: inherit;
		text-decoration: none;
	}

	ul,
	ol {
		list-style: none;
	}

	h1, h2, h3, h4, h5, h6 {
		overflow-wrap: break-word;
		text-wrap: balance;
	}

	p {
		overflow-wrap: break-word;
		text-wrap: pretty;
	}

	.sr-only {
		position: absolute;
		width: 1px;
		height: 1px;
		padding: 0;
		margin: -1px;
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
		border: 0;
	}
}
