h1 {
    font-size: 8rem;
    font-weight: 50;
}

/* =========================
   ARCHIVE SECTION
   ========================= */

.archive-section {
  padding: 6rem 2rem;
  background-color: #fff9f0;
  color: #1e1c16;
  font-family: Helvetica, Arial, sans-serif;
}

/* =========================
   GRID LAYOUT
   ========================= */

.archive-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr); /* 3 columns layout */
  gap: 3rem 2rem; /* vertical | horizontal spacing */
  max-width: 1200px; /* wider to accommodate 3 columns */
  margin: 0 auto;
}

/* =========================
   BASE TILE STYLES
   ========================= */

.archive-item {
  position: relative;
  display: block;

  width: 100%;
  max-width: 420px;
  aspect-ratio: 3 / 4;

  overflow: hidden;
  text-decoration: none;
  color: inherit;

  transition: opacity 0.25s ease, transform 0.3s ease;
}

.archive-item:hover {
  opacity: 0.95;
  transform: scale(1.01);
}

/* =========================
   LETTER IMAGES
   ========================= */

.archive-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/* =========================
   LETTER OVERLAY TEXT
   ========================= */

.overlay {
  position: absolute;
  left: 1rem;
  padding: 0.3rem 0.6rem;
  color: #fff9f0;
  background: rgba(0, 0, 0, 0.35);
}

.overlay.title {
  top: 1rem;
  font-size: 0.85rem;
  letter-spacing: 0.05em;
}

.overlay.number {
  bottom: 1rem;
  font-size: 1.2rem;
  font-weight: 300;
  opacity: 0.85;
}

/* =========================
   CASE NOTES TILE
   ========================= */

.case-notes {
  background-color: #1b1a17; /* off-black */
  border: 1px solid rgba(255, 249, 240, 0.15);
}

.case-notes:hover {
  background-color: #161512;
}

.case-notes-inner {
  height: 100%;
  padding: 2.5rem;

  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1.4rem;

  color: #fff9f0;
}

.case-eyebrow {
  font-size: 0.65rem;
  letter-spacing: 0.22em;
  opacity: 0.6;
}

.case-notes h3 {
  font-size: 1.1rem;
  font-weight: 500;
  letter-spacing: 0.12em;
}

.case-notes p {
  font-size: 0.85rem;
  line-height: 1.6;
  opacity: 0.8;
}

.case-action {
  font-size: 0.7rem;
  letter-spacing: 0.22em;
  opacity: 0.9;
  cursor: pointer;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 960px) {
  .archive-grid {
    grid-template-columns: repeat(2, 1fr); /* 2 columns on tablets */
    gap: 2.5rem 1.5rem;
  }
}

@media (max-width: 720px) {
  .archive-grid {
    grid-template-columns: 1fr; /* 1 column on mobile */
    gap: 2rem;
  }

  .archive-item {
    max-width: 100%;
  }
}