
.article-shell { padding: 28px 0 48px; }
.article-content-card,
.article-list-card,
.article-category-hero {
    background: #fff;
    border: 1px solid rgba(17, 24, 39, .08);
    border-radius: 24px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, .06);
    padding: 24px;
    margin-bottom: 18px;
}
.article-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; font-size:.9rem; margin-bottom:14px; color:#64748b; }
.article-breadcrumb a { color:inherit; text-decoration:none; }
.article-title { font-size: clamp(1.6rem, 3vw, 2.4rem); line-height:1.8; margin: 0 0 12px; color:#0f172a; }
.article-meta { display:flex; flex-wrap:wrap; gap:12px; color:#64748b; font-size:.92rem; margin-bottom:18px; }
.article-cover { width:100%; border-radius:22px; overflow:hidden; margin: 0 0 22px; background:#f8fafc; }
.article-cover img { width:100%; height:auto; display:block; }
.article-body { font-size:1rem; line-height:2.15; color:#1f2937; }
.article-body h2,
.article-body h3 { color:#0f172a; line-height:1.8; margin-top:28px; }
.article-body img { max-width:100%; height:auto; border-radius:16px; }
.article-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:20px; }
.article-tag { background:#eef6ff; border-radius:999px; color:#2076ff; padding:6px 12px; font-size:.85rem; }
.article-grid { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:16px; }
.article-card { display:block; background:#fff; border:1px solid rgba(17,24,39,.08); border-radius:20px; overflow:hidden; text-decoration:none; color:inherit; transition: transform .2s ease, box-shadow .2s ease; }
.article-card:hover { transform: translateY(-3px); box-shadow:0 16px 36px rgba(15,23,42,.08); }
.article-card-thumb { aspect-ratio: 16/9; background:#f1f5f9; overflow:hidden; }
.article-card-thumb img { width:100%; height:100%; object-fit:cover; display:block; }
.article-card-body { padding:16px; }
.article-card-body h2,
.article-card-body h3 { font-size:1.05rem; line-height:1.8; margin:0 0 8px; }
.article-card-body p { color:#64748b; line-height:1.9; margin:0; font-size:.92rem; }
.article-section-title { display:flex; justify-content:space-between; align-items:center; gap:12px; margin:0 0 16px; }
.related-products { display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:12px; margin-top:18px; }
.related-product-card { display:flex; gap:12px; align-items:center; border:1px solid rgba(17,24,39,.08); border-radius:16px; padding:12px; text-decoration:none; color:inherit; background:#fff; }
.related-product-card img { width:56px; height:56px; border-radius:14px; object-fit:cover; background:#f8fafc; }
.article-pagination { display:flex; justify-content:center; gap:8px; margin-top:22px; }
.article-pagination a,
.article-pagination span { padding:8px 12px; border-radius:12px; background:#fff; border:1px solid rgba(17,24,39,.08); text-decoration:none; color:#0f172a; }
.article-pagination .current { background:#2076ff; color:#fff; }
.service-box-note { display:block; margin-top:6px; color:#64748b; font-size:.78rem; }
@media (max-width: 991px) { .article-grid, .related-products { grid-template-columns:1fr; } }

/* Inline virtual-number result container used when the reusable service box appears on article pages. */
.nova-number-result-inline {
    margin-top: 16px;
}

.nova-number-result-inline:empty {
    display: none;
}
