@font-face {
  font-family: KievitWebPro;
  src: url("../fonts/KievitWebPro.eot") format("eot"), url("../fonts/KievitWebPro.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: KievitWebPro;
  src: url("../fonts/KievitWebPro-Bold.eot") format("eot"), url("../fonts/KievitWebPro-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: KievitWebPro;
  src: url("../fonts/KievitWebPro-Ita.eot") format("eot"), url("../fonts/KievitWebPro-Ita.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

* {
  box-sizing: border-box;
}

h1,
h2,
h3,
p {
  margin: 0;
}

h2,
h3 {
  margin-bottom: 1rem;
}

h1 {
  font-size: 2.5rem;
}

h2 {
  font-size: 1.4rem;
}

p {
  margin-bottom: 1rem;
}

ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

:root {
  --color-primary-400: hsl(204, 83%, 40%);

  --color-neutral-100: hsl(0, 0%, 98%);
  --color-neutral-300: hsl(0, 0%, 89%);
  --color-neutral-900: hsl(0, 0%, 20%);

  --padding-block: 1rem;
  --content-width: min(90%, 50rem);

  --break-point: 480px;
}

@media (prefers-color-scheme: dark) {
  :root {
    --color-primary-400: hsl(204, 83%, 60%);

    --color-neutral-100: hsl(0, 0%, 20%);
    --color-neutral-300: hsl(0, 0%, 29%);
    --color-neutral-900: hsl(0, 0%, 98%);
  }
}

@media screen and (min-width: 720px) {
  :root {
    --padding-block: 2rem;
  }
}

body {
  background: var(--color-neutral-100);
  color: var(--color-neutral-900);
  font: 1.2rem KievitWebPro, helvetica, arial, sans-serif;
  text-rendering: optimizeLegibility;
  line-height: 1.4;
}

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

.header {
  border-bottom: 1px solid var(--color-neutral-300);
  padding: var(--padding-block) 0;
  text-align: center;
}

.header__container {
  width: var(--content-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media screen and (min-width: 720px) {
  .header__container {
    flex-direction: row;
    justify-content: space-between;
  }
}

.title__link {
  color: var(--color-neutral-900);
}

.navigation {
  display: flex;
  flex-direction: column;
}

@media screen and (min-width: 720px) {
  .navigation {
    flex-direction: row;
  }

  .navigation > * + * {
    margin-inline-start: 1rem;
  }
}

.navigation__element > a {
  color: var(--color-neutral-900);
  font-weight: bold;
}

.navigation__element > a:hover {
  opacity: 0.5;
}

.main {
  border-bottom: 1px solid var(--color-neutral-300);
  padding: var(--padding-block) 0;
}

.main__container {
  width: var(--content-width);
  margin: 0 auto;
}

.footer {
  padding: var(--padding-block) 0;
  font-size: 1rem;
}

.footer__container {
  width: var(--content-width);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.footer__container > * + * {
  margin-block-start: 0.5rem;
}

.link-icons {
  width: 100%;
  display: flex;
  justify-content: center;
}

.link-icons__link {
  color: var(--color-neutral-900);
}

.link-icons > * + * {
  margin-inline-start: 1rem;
}

.footer-text {
  margin-bottom: 0;
}

.footer-text__link {
  color: var(--color-neutral-900);
  font-style: italic;
}
