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

/* ── Base ── */
body {
  background: #f0ede6;
  color: #4f226e;
  font-family: Georgia, serif;
  font-size: 18px;
  line-height: 1.8;
}

/* ── Navigation ── */
.back-link {
  display: inline-block;
  color: #000000;
  font-size: 14px;
  text-decoration: none;
  border: 2px solid #000000;
  padding: 4px 12px;
  letter-spacing: 2px;
  margin: 10px;
}
.back-link:hover {
  text-decoration: underline;
}

/* ── Layout ── */
.content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 40px 20px;
  text-align: center;
}
.gap {
  margin-bottom: 32px;
}
.divider {
  text-align: center;
  color: #aaa;
  font-size: 18px;
  margin: 40px 0;
  letter-spacing: 8px;
}

/* ── Text ── */
.text p {
  margin-bottom: 16px;
}
.text a {
  color: #111;
}
.cap {
  font-size: 14px;
  color: inherit;
}

/* ── Single Image ── */
.img-solo {
  width: 100%;
  display: block;
}

/* ── Row 2 ── */
.row-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-left: -80px;
  margin-right: -80px;
}
.row-2 img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}
.row-2 div {
  text-align: center;
}

/* ── Row 3 ── */
.row-3 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 12px;
  margin-left: -80px;
  margin-right: -80px;
}
.row-3 img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}
.row-3 div {
  text-align: center;
}

/* ── Row 5 ── */
.row-5 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  gap: 12px;
  margin-left: -80px;
  margin-right: -80px;
}
.row-5 img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}
.row-5 div {
  text-align: center;
}

/* ── Float Left / Right ── */
.float-left,
.float-right {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.float-left img,
.float-right img {
  width: 40%;
}
.float-right {
  flex-direction: row-reverse;
}
.wrap {
  flex: 1;
}
.float-left .wrap,
.float-right .wrap {
  text-align: left;
}

/* ── Media Row (text + image pairs) ── */
.media-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px;
  margin-bottom: 32px;
  text-align: left;
}
.media-row .item img {
  width: 100%;
  display: block;
  margin-bottom: 8px;
}
.media-row .item p {
  margin-bottom: 8px;
}
.media-row .item .cap {
  font-size: 14px;
}

/* ── Video ── */
.video iframe {
  width: 100%;
  aspect-ratio: 16/9;
  border: none;
  display: block;
}

/* ── Embed ── */
.embed {
  width: 100%;
}