.eyebrow, .meta-line, .status-line, .footer-note, .artifact-card__label, .listing-card__eyebrow, .section-card__label {
  font-family: var(--font-mono);
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-accent-cyan);
}
.sigil {
  width: 2.75rem;
  height: 2.75rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--color-border);
  color: var(--color-accent-cyan);
  font-size: 1.1rem;
}
.site-title { font-family: var(--font-display); font-size: clamp(2.4rem, 6vw, 4.6rem); color: var(--color-paper); text-decoration: none; display: inline-block; margin-bottom: var(--space-2); }
.site-tagline, .lede { color: var(--color-paper-deep); max-width: 48rem; }
.site-tagline { font-size: 1.05rem; }
.section-card, .feature-card, .listing-card, .artifact-card, .timeline-panel, .record-frame, .webring-block {
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
  border: 1px solid var(--color-border);
  box-shadow: var(--shadow);
  padding: var(--space-5);
  position: relative;
  overflow: hidden;
}
.section-card::before, .feature-card::before, .listing-card::before, .artifact-card::before, .timeline-panel::before, .record-frame::before, .webring-block::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: linear-gradient(var(--color-grid) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid) 1px, transparent 1px);
  background-size: 24px 24px;
  opacity: 0.14;
  pointer-events: none;
}
.page-header--dispatch, .page-header--project, .page-header--shrine { padding-bottom: var(--space-4); border-bottom: 1px solid var(--color-border); margin-bottom: var(--space-5); }
.timeline-panel ul { margin: 0; padding-left: 1.2rem; position: relative; z-index: 1; }
.timeline-panel li { margin-bottom: var(--space-3); }
.feature-card h2, .section-card h3, .listing-card h2, .artifact-card h2 { max-width: 18ch; }
.listing-card p:last-child, .section-card p:last-child, .feature-card p:last-child, .artifact-card p:last-child { margin-bottom: 0; }
.metadata-chips { list-style: none; display: flex; flex-wrap: wrap; gap: var(--space-2); padding: 0; margin: var(--space-4) 0 0; }
.metadata-chips li { font-family: var(--font-mono); border: 1px solid var(--color-border); padding: 0.25rem 0.5rem; }
.figure-frame {
  margin: var(--space-6) 0;
  border: 1px solid var(--color-border);
  padding: var(--space-3);
  background: rgba(255,255,255,0.02);
}
.figure-frame img {
  width: 100%;
  height: auto;
  display: block;
}
.figure-frame figcaption {
  margin-top: var(--space-3);
  font-family: var(--font-mono);
  font-size: 0.9rem;
  color: var(--color-paper-deep);
}
.foyer-figure-stack .figure-frame:first-child {
  transform: translateY(0.5rem);
}
.foyer-figure-stack .figure-frame:last-child {
  max-width: 18rem;
  justify-self: end;
}
.artifact-thumb {
  width: 100%;
  margin-bottom: var(--space-4);
  border: 1px solid var(--color-border);
}
.counter-panel {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--space-3);
  font-family: var(--font-mono);
}
.odometer {
  display: inline-flex;
  gap: 2px;
}
.odometer span {
  display: inline-grid;
  place-items: center;
  width: 1.2rem;
  height: 1.6rem;
  background: #e8e8e8;
  color: #111;
  border: 1px solid #888;
  font-size: 0.95rem;
  line-height: 1;
}
.webring-links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-4);
  margin-top: var(--space-3);
}
.tactical-marquee {
  display: block;
  font-family: var(--font-mono);
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  padding: 5px 0;
  margin-bottom: var(--space-6);
}
.anomaly-slot {
  min-height: 1.4rem;
}
.anomaly-slot--active {
  padding-top: var(--space-2);
}
.anomaly-link {
  font-family: var(--font-mono);
  font-size: 0.78rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--color-accent-amber);
  text-decoration: none;
}
.temporal-drift { display: inline-block; animation: drift 8s infinite ease-in-out; }
@keyframes drift { 0%,100% { transform: translateX(0); text-shadow: 0 0 0 transparent; } 50% { transform: translateX(1px); text-shadow: -1px 0 var(--color-accent-cyan), 1px 0 rgba(214,163,77,0.3); } }
