/* ── Reset ── */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}
a {
  color: inherit;
  text-decoration: none;
}

/* ── Base ── */
html, body {
  height: 100%;
}

body {
  display: flex;
font-family: "acumin-pro-wide", sans-serif;
font-weight: 400;
font-style: normal;
font-style: normal;
  font-size: 18px;
  background: #fff;
  color: #111;
  min-height: 100vh;
}

/* ── Nav ── */
nav {
  position: fixed;
  top: 20px;
  left: 30px;
  width: 140px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

nav a {
font-family: "acumin-pro-wide", sans-serif;
  font-weight: 400;
  font-style: normal;
  text-decoration: none;
  color: #111;
  font-size: 18px;
  transition: color 0.15s ease;
}

nav a:hover {
  color: #111;
  text-decoration: underline;
}

nav a.active {
  color: #111;
  text-decoration: underline;
}

/* ── Main content ── */
main {
  margin: 0 auto;
  padding: 80px 40px 80px 0;
  max-width: 860px;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* ── linkable images ── */
.l-image {
  display: block;
  line-height: 0;
}

.l-image img {
  width: 100%;
  height: auto;
  display: block;
  cursor: pointer;
}

/* ── Hover: slight dim on image ── */
.l-image img:hover {
  opacity: 0.88;
  transition: opacity 0.2s ease;
}

/* ── unlinkable images ── */
.image {
  display: block;
  line-height: 0;
}

.image img {
  width: 100%;
  height: auto;
  display: block;
}

.image video {
  width: 100%;
  height: auto;
  display: block;
}

