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

html {
	-webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

body {
	background-color: var(--bg);
	font-family: var(--font-sans);
	line-height: var(--line-height-normal);
	color: var(--text);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

ul {
	list-style: none;
}

a {
	text-decoration: none;
	color: var(--primary);
	transition: color 0.2s ease;
}

a:hover {
	text-decoration: none !important;
	color: var(--primary-hover);
}

button, input, textarea, select {
	font-family: var(--font-sans);
	outline: none;
	border: none;
	background: none;
}

button {
	cursor: pointer;
	transition: all 0.2s ease;
}

textarea {
	resize: none;
}

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

::selection {
	background: var(--primary-soft);
	color: var(--text);
}

::-webkit-scrollbar {
	width: 6px;
}

::-webkit-scrollbar-track {
	background: var(--bg-muted);
}

::-webkit-scrollbar-thumb {
	background: var(--text-muted);
	border-radius: 3px;
}

::-webkit-input-placeholder {
	color: var(--text-muted);
	opacity: 1;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.container {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 16px;
}

@media screen and (max-width: 1199px) {
	.container {
		max-width: 100%;
		padding: 0 16px;
	}
}
