.djb-article {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color: #1f2937;
  line-height: 1.75;
  max-width: 880px;
  margin: 0 auto;
  padding: 0 16px;
}
.djb-article .lead {
  font-size: 1.15rem;
  color: #475569;
  margin-bottom: 1.5rem;
  max-width: 720px;
  border-left: 4px solid #0284c7;
  padding-left: 16px;
}
.djb-article h2 {
  font-size: 1.55rem;
  font-weight: 700;
  color: #0f172a;
  margin-top: 2.6rem;
  margin-bottom: 1rem;
  padding-bottom: 0.35rem;
  border-bottom: 2px solid #e2e8f0;
}
.djb-article h4 { font-size: 1.05rem; font-weight: 700; color: #0f172a; margin: 0 0 0.4rem; }
.djb-article p { margin-bottom: 1.1rem; }
.djb-article ul, .djb-article ol { margin-bottom: 1.2rem; padding-left: 1.4rem; }
.djb-article li { margin-bottom: 0.45rem; }
.djb-article img {
  max-width: 100%; height: auto; border-radius: 12px;
  box-shadow: 0 4px 20px rgba(15,23,42,0.08); display: block;
}
.djb-article figure { margin: 1.6rem 0; }
.djb-article figcaption { font-size: 0.875rem; color: #64748b; text-align: center; margin-top: 0.6rem; font-style: italic; }
.djb-article .finish-card { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin: 1.4rem 0; }
.djb-article .finish-item { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 16px 18px; }
.djb-article .finish-item h4 { font-size: 1rem; color: #0f172a; margin: 0 0 0.4rem; }
.djb-article .finish-item p { font-size: 0.92rem; color: #475569; margin: 0; line-height: 1.55; }
@media (max-width: 640px) { .djb-article .finish-card { grid-template-columns: 1fr; } }
.djb-article .process-list ol { counter-reset: step; list-style: none; padding-left: 0; margin-left: 0; }
.djb-article .process-list li { position: relative; padding-left: 3rem; margin-bottom: 1rem; min-height: 2.2rem; list-style: none; }
.djb-article .process-list li::before {
  counter-increment: step; content: counter(step);
  position: absolute; left: 0; top: 0; width: 2rem; height: 2rem;
  background: #0284c7; color: #fff; border-radius: 50%;
  display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.9rem;
}
.djb-article table.djb-table { width: 100%; border-collapse: collapse; margin: 1.3rem 0; font-size: 0.92rem; }
.djb-article .djb-table th, .djb-article .djb-table td { border: 1px solid #e2e8f0; padding: 10px 12px; text-align: left; vertical-align: top; }
.djb-article .djb-table thead th { background: #0f172a; color: #fff; }
.djb-article .djb-table tbody tr:nth-child(even) { background: #f8fafc; }
.djb-article .djb-quote {
  font-size: 1.15rem; font-style: italic; color: #0f172a;
  border-top: 2px solid #0284c7; border-bottom: 2px solid #0284c7;
  padding: 1.2rem 0; margin: 2rem 0; line-height: 1.5;
}
.djb-article .djb-quote p { margin: 0; }
.djb-article a.cta-btn {
  display: inline-block; background: #0284c7; color: #fff;
  padding: 0.75rem 1.6rem; border-radius: 999px; font-weight: 600;
  text-decoration: none; transition: background .15s ease;
}
.djb-article a.cta-btn:hover { background: #0ea5e9; }
.djb-article a { color: #0284c7; text-decoration: none; }
.djb-article a:hover { text-decoration: underline; }
