/* blog-post shared styles — referenced by all post pages */
.post-header {
  max-width: 720px;
  margin: 0 auto;
  padding: 160px 64px 60px;
}

.post-num {
  font-family: var(--mono);
  font-size: 0.58rem;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--gold);
  margin-bottom: 20px;
  display: block;
}

.post-title {
  font-family: var(--serif);
  font-size: clamp(2rem, 4.5vw, 3.2rem);
  font-weight: 300;
  line-height: 1.15;
  margin-bottom: 28px;
}

.post-body {
  max-width: 720px;
  margin: 0 auto;
  padding: 48px 64px 100px;
}

.post-body p {
  font-size: 1rem;
  color: rgba(244,241,235,0.7);
  line-height: 1.95;
  margin-bottom: 28px;
}

.post-body p:last-child { margin-bottom: 0; }

.post-body strong {
  color: var(--off-white);
  font-weight: 400;
}

.post-nav {
  max-width: 720px;
  margin: 0 auto;
  padding: 0 64px 80px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  border-top: 1px solid var(--border);
  padding-top: 40px;
}

.post-nav a {
  font-family: var(--mono);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(244,241,235,0.4);
  text-decoration: none;
  transition: color 0.2s;
}

.post-nav a:hover { color: var(--gold); }

@media (max-width: 768px) {
  .post-header { padding: 130px 28px 48px; }
  .post-body { padding: 40px 28px 80px; }
  .post-nav { padding: 40px 28px 60px; }
}
