@font-face {
  font-family: Roboto;
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/fonts/roboto-400.woff2") format("woff2");
}
@font-face {
  font-family: "Roboto Condensed";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("/fonts/roboto-condensed-900.woff2") format("woff2");
}

/* Zelfde kleuren en maten als de webshop die hier straks komt te staan. */
:root {
  --ink: #111111;
  --paper: #ffffff;
  --muted: rgb(255 255 255 / 0.75);
  --line: rgb(255 255 255 / 0.25);
  --gutter: clamp(1rem, 4vw, 3rem);
}
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  background: var(--ink);
  color: var(--paper);
  font-family: Roboto, system-ui, -apple-system, "Segoe UI", Arial, sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
/*
 * Sfeerfoto achter de pagina, met een donker verloop erover zodat het logo
 * bovenaan en de witte tekst onderaan leesbaar blijven. De foto is vanaf de
 * onderkant uitgelijnd: de skiër staat boven de tekst.
 */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(to bottom, rgb(17 17 17 / 0.45), transparent 10rem),
    linear-gradient(to top, rgb(17 17 17 / 0.8), rgb(17 17 17 / 0.15) 55%, transparent),
    /* Ruimer dan het scherm en onderaan vastgezet: zo schuift de skiër omhoog. */
    url("/hero.webp") center bottom / max(125vw, 200svh) auto no-repeat;
}
header {
  display: flex;
  align-items: center;
  height: 4rem;
  padding: 0 var(--gutter);
}
.logo { display: block; height: 2.25rem; width: auto; }
main {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  padding: 4rem var(--gutter) clamp(3rem, 8vw, 5rem);
  text-align: center;
}
.code {
  margin: 0 0 0.75rem;
  color: var(--muted);
  font-weight: 400;
  font-size: 0.8125rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
h1 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Impact, sans-serif;
  font-weight: 900;
  font-size: clamp(2.75rem, 8vw, 7.5rem);
  line-height: 0.88;
  letter-spacing: -0.01em;
  text-transform: uppercase;
}
/* Vanaf tablet staat de kop op één regel, zodat hij laag blijft en de foto vrij laat. */
@media (min-width: 48rem) {
  h1 { white-space: nowrap; }
}
.intro {
  max-width: 34rem;
  margin: 1.5rem auto 0;
  font-size: 1.125rem;
}
.button {
  display: inline-flex;
  align-items: center;
  height: 3rem;
  margin-top: 2rem;
  padding: 0 1.5rem;
  border-radius: 9999px;
  background: var(--paper);
  color: var(--ink);
  font-weight: 400;
  text-decoration: none;
  transition: background-color 0.2s;
}
.button:hover { background: rgb(255 255 255 / 0.8); }
a:focus-visible { outline: 2px solid var(--paper); outline-offset: 3px; }
footer {
  padding: 1.5rem var(--gutter);
  border-top: 1px solid var(--line);
  color: var(--muted);
}
footer p { margin: 0; }
