@charset "UTF-8";

header {
  position: sticky;
  top: 0;
  z-index: 1;

  display: grid;
  grid-auto-flow: column dense;
  grid-auto-columns: auto;
  grid-template-columns: 1fr auto;
  gap: var(--size-m);
  align-items: center;

  border-bottom: var(--size-4xs) solid var(--color-dark);
  padding: var(--size-s) var(--size-m);

  background: var(--color-light);
}
header img {
  width: 3rem
}
header a:not(.btn) {
  text-decoration: none;
  font-size: var(--size-l)
}
header a.active {
  color: var(--color-secondary-dark);
}
header a.btn {
  margin: 0;
}

section {
  scroll-margin-top: calc(3rem + var(--size-s) *2 + var(--size-4xs));
}

footer {
  display: grid;
  grid-auto-flow: row dense;
  grid-auto-rows: auto;

  border-top: var(--size-4xs) solid var(--color-dark);
  padding: var(--size-s);

  text-align: center;
}
footer img {
  display: block;
  width: 3rem;
  margin: 0 auto;
}
footer a {
  text-decoration: underline solid;
}


@media only screen and (min-width: 480px) {

}

@media only screen and (min-width: 768px) {
  footer {
    grid-auto-flow: column;
    grid-template-columns: auto 1fr auto auto;
    gap: var(--size-s);
    align-items: center;
    text-align: left;
  }
}
@media only screen and (min-width: 1024px) {
  body > header,
  body > footer {
    padding-left: calc(50vw - var(--viewport-l) /2 + var(--size-m));
    padding-right: calc(50vw - var(--viewport-l) /2 + var(--size-m));
  }
}
@media only screen and (min-width: 1200px) {

}