@font-face {
	font-family: "Lexend";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("fonts/lexend-latin-ext.woff2") format("woff2");
	unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Lexend";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("fonts/lexend-latin.woff2") format("woff2");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
	--color-1: #00273f;
	--color-2: #0876dd;
}

* {
	box-sizing: border-box;
	margin: 0;
}

html {
	min-height: 100%;
	font-size: 16px;
}

body {
	min-height: 100%;
	font-family: "Lexend", sans-serif;
	font-size: 1.2rem;
	color: var(--color-1);
	background-image: url("pics/bg-welcome.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	background-attachment: fixed;
}

a {
	color: var(--color-2);
	text-decoration: none;
}

a:focus-visible {
	outline: 3px solid var(--color-1);
	outline-offset: 3px;
}

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

address {
	font-style: normal;
}

.wrapper {
	min-height: 100dvh;
	display: grid;
	place-items: center;
	padding: 2rem;
}

main {
	max-width: 800px;
	width: 100%;
	display: grid;
	grid-template-columns: 2fr 1fr;
	align-items: end;
	gap: 1rem;
	padding: 2rem 2rem 0;
	background: rgba(255, 255, 255, 0.5);
	border-radius: 1rem;
}

main p {
	margin-bottom: 0.2rem;
	line-height: 1.5;
}

main p:last-child {
	margin-bottom: 0;
}

h1 {
	margin-bottom: 1.5rem;
	color: var(--color-2);
	font-size: clamp(34px, 5vw, 45px);
	line-height: 1.1;
}

h1 span {
	display: block;
	color: var(--color-1);
	font-size: clamp(20px, 3vw, 25px);
}


.buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin: 2rem 0;
}

nav a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.7rem 1.3rem;
	border: 0;
	border-radius: 2rem;
	background: var(--color-2);
	color: white;
	font-weight: 500;
	transition: background-color 0.3s;
}

nav a:hover {
	background: var(--color-1);
}

@media (max-width: 800px) {
	body {
		background-attachment: scroll;
	}

	main {
		display: block;
	}
}

@media (max-width: 480px) {
	main {
		background: transparent;
		padding: 0;
	}
	.wrapper {
		padding-bottom: 0;
	}
}