/* --- Page shell & visual breaks --- */
.ds-page-content {
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}

@media (min-width: 768px) {
  .ds-page-content {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}

.ds-navbar-brand-icon {
  color: var(--ds-gold-bright);
  font-size: 1.35rem;
  vertical-align: -0.15em;
}

/* Decorative divider — gold fade, not a heavy rule */
.ds-divider {
  height: 1px;
  margin: 1.75rem 0;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--ds-parchment-shadow) 15%,
    var(--ds-brass) 50%,
    var(--ds-parchment-shadow) 85%,
    transparent 100%
  );
  opacity: 0.85;
  border: none;
}

/* Section title with optional icon */
.ds-section-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-weight: 700;
  color: var(--ds-mahogany-deep);
  font-size: 1.15rem;
  letter-spacing: 0.02em;
  margin-bottom: 0.75rem;
}

.ds-section-title .bi {
  color: var(--ds-brass);
  font-size: 1.15rem;
  opacity: 0.95;
}

/* Page intro block under main titles */
.ds-page-intro {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
  padding: 0.75rem 1rem;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 252, 247, 0.9) 0%, var(--ds-parchment-mid) 100%);
  border: 1px solid var(--ds-parchment-shadow);
  border-left: 4px solid var(--ds-gold);
}

.ds-page-intro .bi {
  color: var(--ds-leather);
  font-size: 1.5rem;
  margin-top: 0.1rem;
  flex-shrink: 0;
}

.ds-page-intro p {
  margin: 0;
  line-height: 1.45;
}

/* List rows — subtle icon column + clearer separation */
.ds-app .list-group-item {
  border-left: 3px solid transparent;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.ds-app .list-group-item:hover {
  border-left-color: var(--ds-brass);
}

/* Document / form cards — icon in header */
.ds-card-header-with-icon {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.ds-card-header-with-icon .bi {
  opacity: 0.9;
  font-size: 1.1rem;
}

/* Progress row on document page */
.ds-progress-row {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 1rem;
}

.ds-progress-row .bi {
  color: var(--ds-brass);
  font-size: 1.25rem;
  flex-shrink: 0;
}

.ds-progress-row .progress {
  flex: 1;
  margin-bottom: 0;
}
