:root{
  --dc-primary:#2563eb;
  --dc-ink:#0f172a;
  --dc-bg:#f8fafc;
}
.dc-body{ background:var(--dc-bg); color:var(--dc-ink); }
.brand-mark{ display:inline-flex; width:30px; height:30px; align-items:center; justify-content:center; border-radius:10px; background:rgba(251,191,36,.18); border:1px solid rgba(251,191,36,.25); }
.dc-btn-primary{ background:var(--dc-primary); border-color:var(--dc-primary); }
.dc-hero{ background: radial-gradient(1000px 400px at 10% 10%, rgba(37,99,235,.12), rgba(255,255,255,0)); }
.dc-hover{ transition:transform .12s ease, box-shadow .12s ease; }
.dc-hover:hover{ transform:translateY(-2px); box-shadow:0 .6rem 1.4rem rgba(2,6,23,.10); }
.content-prose{ line-height:1.68; font-size:1.02rem; }
.dc-section-title{ font-weight:700; margin-bottom:.4rem; }
.rounded-4{ border-radius:1rem !important; }

.dc-imgthumb{ aspect-ratio: 1 / 1; object-fit: cover; }

.dc-hero-image{ position:relative; border-radius:1.2rem; overflow:hidden; min-height:220px; background-size:cover; background-position:center; border:1px solid rgba(2,6,23,.08); }
.dc-hero-overlay{ position:absolute; inset:0; background: linear-gradient(180deg, rgba(2,6,23,.25), rgba(2,6,23,.75)); }
.dc-hero-inner{ position:relative; padding:1.25rem; color:#fff; max-width: 820px; }
.dc-hero-badges{ display:flex; gap:.5rem; flex-wrap:wrap; margin-bottom:.6rem; }
@media (min-width: 992px){ .dc-hero-image{ min-height: 280px; } .dc-hero-inner{ padding:1.6rem; } }

.dc-modal-spinner{position:absolute;inset:0;background:rgba(11,18,32,.35);backdrop-filter: blur(2px);}
.dc-modal-img{transition:opacity .18s ease;display:block;}
.dc-modal-nav{position:absolute;top:50%;transform:translateY(-50%);border-radius:999px;opacity:.92}
.dc-modal-prev{left:12px}
.dc-modal-next{right:12px}
@media (max-width: 576px){.dc-modal-nav{top:auto;bottom:12px;transform:none}.dc-modal-prev{left:12px}.dc-modal-next{right:12px}}
