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

* {
	padding: 0;
	margin: 0;
}

html {
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	block-size: 100%;
}

body {
	min-block-size: 100%;
}

iframe,
audio,
video,
canvas {
	display: block;
	max-inline-size: 100%;
	block-size: auto;
}

img {
	display: inline-block;
	max-inline-size: 100%;
	block-size: auto;
}

svg {
	max-inline-size: 100%;
}

svg:not([fill]) {
	fill: currentColor;
}

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

textarea {
	resize: vertical;
}

fieldset,
iframe {
	border: none;
} 

p {
	text-wrap: pretty;
	font-variant-numeric: proportional-nums;
	overflow-wrap: break-word;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-variant-numeric: lining-nums;
	text-wrap: balance;
	overflow-wrap: break-word;
}

p,
blockquote,
q,
figcaption,
li {
	hanging-punctuation: first allow-end last;
}

input,
label,
button,
h1,
h2,
h3,
h4,
h5,
h6 {
	line-height: 1.1;
}

math,
time,
table {
	font-variant-numeric: tabular-nums lining-nums slashed-zero;
}

code {
	font-variant-numeric: slashed-zero;
}

table {
	border-collapse: collapse;
}

abbr {
	font-variant-caps: all-small-caps;
	text-decoration: none;

	&[title] {
		cursor: help;
		text-decoration: underline dotted;
	}
}

sup,
sub {
	line-height: 0;
}

:disabled {
	opacity: 0.8;
	cursor: not-allowed;
}

:focus-visible {
	outline-offset: 0.2rem;
}
