/* ─── Hero ───────────────────────────────────────────────── */
.cs-hero {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin-bottom: 64px;
}

.cs-hero-top {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.cs-meta {
  display: flex;
  align-items: center;
  gap: 12px;
}

.cs-meta-line {
  display: block;
  width: 16px;
  height: 1px;
  background: var(--muted);
  flex-shrink: 0;
}

.cs-meta-text {
  font-family: var(--ui);
  font-size: 14px;
  line-height: 21px;
  font-weight: 400;
  color: var(--muted);
}

.cs-title {
  font-family: var(--serif-deck);
  font-size: clamp(32px, 4.57vw, 64px);
  line-height: 1.25;
  font-weight: 700;
  color: var(--black);
}

/* ─── Design document image ──────────────────────────────── */
.cs-doc-img {
  width: 100%;
  max-width: var(--max);
  margin-bottom: 64px;
}

.cs-doc-img img {
  display: block;
  width: 100%;
  height: auto;
}

/* ─── Footer ─────────────────────────────────────────────── */
.cs-footer {
  margin-top: 48px;
  max-width: var(--max);
  padding: 0 0 48px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}


/* ─── Responsive ─────────────────────────────────────────── */
@media (max-width: 720px) {
  .cs-title { font-size: 34px; line-height: 48px; }
  .cs-hero { margin-bottom: 32px; }
}

@media (max-width: 600px) {
  .cs-nav { margin-bottom: 32px; }
  .cs-doc-img { margin-bottom: 40px; }
}

/* ─── Sticky scroll bar ──────────────────────────────────── */
.sticky-bar-inner {
  max-width: calc(1400px + clamp(20px, 3.43vw, 48px) * 2);
  margin: 0 auto;
  padding: 0 clamp(20px, 3.43vw, 48px);
  height: 48px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.sticky-bar-name {
  font-family: var(--ui);
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
  color: var(--muted);
  text-decoration: none;
}

.sticky-bar-link {
  font-family: var(--ui);
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
  color: #000;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color 0.15s ease;
}

/* ─── Let's Talk popup ───────────────────────────────────── */
.popup-label {
  font-family: var(--ui);
  font-size: 14px;
  font-weight: 400;
  line-height: 21px;
  color: #1A1A1A;
}
