.article-content{
    font-size:17px;
    line-height:1.9;
    color:#263449;
    overflow-wrap:anywhere;
}

.article-content > *:first-child{
    margin-top:0;
}

.article-content p{
    margin:0 0 1.35em;
}

.article-content h2{
    margin:2.15em 0 .8em;
    padding-left:16px;
    border-left:5px solid #2563eb;
    font-size:clamp(24px,3vw,31px);
    line-height:1.35;
    color:#172554;
    font-weight:800;
}

[dir="rtl"] .article-content h2{
    padding-left:0;
    padding-right:16px;
    border-left:0;
    border-right:5px solid #2563eb;
}

.article-content h3{
    margin:1.8em 0 .7em;
    font-size:clamp(20px,2.3vw,25px);
    line-height:1.4;
    color:#1e3a8a;
    font-weight:800;
}

.article-content h4{
    margin:1.5em 0 .65em;
    font-size:19px;
    line-height:1.45;
    color:#243b64;
    font-weight:800;
}

.article-content ul,
.article-content ol{
    margin:1.2em 0 1.6em;
    padding-left:1.6em;
}

[dir="rtl"] .article-content ul,
[dir="rtl"] .article-content ol{
    padding-left:0;
    padding-right:1.6em;
}

.article-content li{
    margin:.55em 0;
    line-height:1.8;
}

.article-content strong{
    color:#172554;
    font-weight:800;
}

.article-content a{
    color:#1d4ed8;
    text-decoration:none;
    font-weight:650;
    border-bottom:1px solid rgba(37,99,235,.25);
}

.article-content a:hover{
    border-bottom-color:#2563eb;
}

.article-content blockquote{
    margin:1.8em 0;
    padding:20px 24px;
    background:#eff6ff;
    border-left:5px solid #2563eb;
    border-radius:0 14px 14px 0;
    color:#334155;
}

[dir="rtl"] .article-content blockquote{
    border-left:0;
    border-right:5px solid #2563eb;
    border-radius:14px 0 0 14px;
}

.article-content img{
    display:block;
    width:auto;
    max-width:100%;
    height:auto;
    margin:26px auto;
    border-radius:16px;
}

.article-content figure{
    margin:28px 0;
}

.article-content figcaption{
    margin-top:9px;
    text-align:center;
    font-size:13px;
    line-height:1.6;
    color:#64748b;
}

.article-content table{
    width:100%;
    border-collapse:collapse;
    margin:28px 0;
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 0 0 1px #e5e7eb;
}

.article-content th{
    padding:13px 15px;
    background:#1e3a8a;
    color:#fff;
    text-align:left;
    font-weight:800;
}

[dir="rtl"] .article-content th{
    text-align:right;
}

.article-content td{
    padding:13px 15px;
    border-top:1px solid #e5e7eb;
    vertical-align:top;
}

.article-content tr:nth-child(even) td{
    background:#f8fafc;
}

.article-content pre{
    max-width:100%;
    overflow:auto;
    padding:18px;
    border-radius:12px;
    background:#0f172a;
    color:#e2e8f0;
    line-height:1.65;
}

.article-content code{
    overflow-wrap:anywhere;
}

.article-content hr{
    border:0;
    border-top:1px solid #e2e8f0;
    margin:35px 0;
}

@media(max-width:700px){
    .article-content{
        font-size:16px;
        line-height:1.85;
    }

    .article-content h2{
        margin-top:1.8em;
    }

    .article-content table{
        display:block;
        overflow-x:auto;
        white-space:normal;
    }

    .article-content blockquote{
        padding:17px 18px;
    }
}


/* ==========================================================
   NEWSHUB ARTICLE DESIGN SYSTEM V44
   Unified article formatting
   ========================================================== */

.article-content {
    width: 100%;
    max-width: 100%;
    font-size: 17px;
    line-height: 1.9;
    letter-spacing: 0;
    word-break: normal;
    overflow-wrap: anywhere;
    color: inherit;
}

/* Paragraphs */
.article-content p {
    margin: 0 0 1.35rem;
    line-height: 1.9;
}

.article-content p:empty {
    display: none;
}

/* Main content headings */
.article-content h2,
.article-content h3,
.article-content h4 {
    position: relative;
    clear: both;
    font-weight: 800;
    line-height: 1.35;
    scroll-margin-top: 110px;
}

.article-content h2 {
    font-size: clamp(1.55rem, 2.2vw, 2rem);
    margin: 2.7rem 0 1.2rem;
    padding: .8rem 1rem;
    border-inline-start: 4px solid currentColor;
    background: rgba(127,127,127,.065);
    border-radius: 0 12px 12px 0;
}

[dir="rtl"] .article-content h2,
html[dir="rtl"] .article-content h2 {
    border-radius: 12px 0 0 12px;
}

.article-content h3 {
    font-size: clamp(1.3rem, 1.8vw, 1.6rem);
    margin: 2.2rem 0 1rem;
    padding-bottom: .55rem;
    border-bottom: 1px solid rgba(127,127,127,.24);
}

.article-content h4 {
    font-size: 1.15rem;
    margin: 1.8rem 0 .85rem;
}

/* Lists */
.article-content ul,
.article-content ol {
    margin: 1rem 0 1.6rem;
    padding-inline-start: 1.6rem;
}

.article-content li {
    margin: .55rem 0;
    line-height: 1.8;
}

.article-content li::marker {
    font-weight: 700;
}

/* Links */
.article-content a {
    color: inherit;
    font-weight: 650;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.article-content a:hover {
    text-decoration-thickness: 2px;
}

/* Strong / emphasis */
.article-content strong,
.article-content b {
    font-weight: 800;
}

/* Images */
.article-content img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 1.8rem auto;
    border-radius: 14px;
    object-fit: contain;
}

.article-content figure {
    width: 100%;
    margin: 2rem 0;
}

.article-content figure img {
    margin-bottom: .65rem;
}

.article-content figcaption {
    text-align: center;
    font-size: .88rem;
    line-height: 1.6;
    opacity: .72;
    margin-top: .55rem;
}

/* Blockquote / highlighted information */
.article-content blockquote {
    margin: 1.8rem 0;
    padding: 1.15rem 1.35rem;
    border-inline-start: 4px solid currentColor;
    background: rgba(127,127,127,.07);
    border-radius: 10px;
    font-style: normal;
}

.article-content blockquote p:last-child {
    margin-bottom: 0;
}

/* Horizontal separator */
.article-content hr {
    border: 0;
    border-top: 1px solid rgba(127,127,127,.24);
    margin: 2.5rem 0;
}

/* Tables */
.article-content table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin: 1.8rem 0;
    font-size: .95rem;
    overflow: hidden;
    border: 1px solid rgba(127,127,127,.22);
    border-radius: 12px;
}

.article-content thead th {
    font-weight: 800;
    background: rgba(127,127,127,.10);
}

.article-content th,
.article-content td {
    padding: .85rem 1rem;
    text-align: start;
    vertical-align: top;
    border-bottom: 1px solid rgba(127,127,127,.16);
}

.article-content tr:last-child td {
    border-bottom: 0;
}

/* Make wide tables horizontally scrollable where supported */
.article-content .table-responsive {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Code */
.article-content code {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
                 "Liberation Mono", monospace;
    font-size: .9em;
    padding: .15rem .35rem;
    border-radius: 5px;
    background: rgba(127,127,127,.11);
}

.article-content pre {
    max-width: 100%;
    overflow-x: auto;
    padding: 1.1rem 1.2rem;
    margin: 1.5rem 0;
    border-radius: 12px;
    background: rgba(127,127,127,.10);
    line-height: 1.65;
}

.article-content pre code {
    padding: 0;
    background: transparent;
}

/* Embedded video */
.article-content iframe,
.article-content video {
    display: block;
    max-width: 100%;
    margin: 1.8rem auto;
    border-radius: 12px;
}

/* First / last elements */
.article-content > :first-child {
    margin-top: 0 !important;
}

.article-content > :last-child {
    margin-bottom: 0 !important;
}

/* Prevent legacy inline styles breaking the article width */
.article-content div,
.article-content section {
    max-width: 100%;
}

/* Arabic */
[dir="rtl"] .article-content,
html[dir="rtl"] .article-content {
    direction: rtl;
    text-align: right;
}

[dir="rtl"] .article-content ul,
[dir="rtl"] .article-content ol,
html[dir="rtl"] .article-content ul,
html[dir="rtl"] .article-content ol {
    padding-right: 1.6rem;
    padding-left: 0;
}

/* English */
[dir="ltr"] .article-content,
html[dir="ltr"] .article-content {
    direction: ltr;
    text-align: left;
}

/* Mobile */
@media (max-width: 767px) {

    .article-content {
        font-size: 16px;
        line-height: 1.82;
    }

    .article-content p {
        margin-bottom: 1.15rem;
    }

    .article-content h2 {
        margin-top: 2.15rem;
        padding: .72rem .85rem;
    }

    .article-content h3 {
        margin-top: 1.85rem;
    }

    .article-content img {
        margin: 1.4rem auto;
        border-radius: 10px;
    }

    .article-content table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .article-content th,
    .article-content td {
        padding: .7rem .8rem;
    }

    .article-content blockquote {
        padding: 1rem;
        margin: 1.4rem 0;
    }
}

/* Very small phones */
@media (max-width: 420px) {

    .article-content {
        font-size: 15.8px;
    }

    .article-content h2 {
        font-size: 1.38rem;
    }

    .article-content h3 {
        font-size: 1.2rem;
    }
}


/* ==========================================================
   NEWSHUB UNIFIED ARTICLE SYSTEM
   All articles — old and new
   ========================================================== */

.article-content {
    max-width: 860px;
    margin-inline: auto;
}

/* Every logical section becomes a clean article card */
.article-content section,
.article-content .nh-article-section {
    background: #ffffff;
    border: 1px solid #dbe5f1;
    border-radius: 15px;
    padding: clamp(18px, 3vw, 28px);
    margin: 26px 0;
    box-shadow: 0 4px 18px rgba(15,23,42,.035);
}

/* Unified H2 style like the reference article */
.article-content h2 {
    color: #0d2d7a;
    background: #f3f4f6;
    border-inline-start: 4px solid #2563eb;
    border-radius: 0 8px 8px 0;
    padding: 10px 14px;
    margin: 0 0 20px;
    font-family: Georgia, "Times New Roman", serif;
    font-weight: 800;
}

html[dir="rtl"] .article-content h2 {
    border-radius: 8px 0 0 8px;
}

/* Subheadings */
.article-content h3 {
    color: #123b91;
    font-weight: 800;
    padding-bottom: 10px;
    border-bottom: 1px solid #d7dee8;
}

/* Paragraph readability */
.article-content p {
    color: #243047;
    line-height: 1.9;
}

/* Intro / highlighted block */
.article-content .nh-article-hero,
.article-content [class$="-hero"] {
    background: linear-gradient(135deg,#17233f,#2459df);
    color: #fff;
    padding: clamp(24px,4vw,38px);
    border-radius: 18px;
    margin: 0 0 24px;
}

.article-content .nh-article-hero h1,
.article-content [class$="-hero"] h1,
.article-content .nh-article-hero h2,
.article-content [class$="-hero"] h2,
.article-content .nh-article-hero p,
.article-content [class$="-hero"] p,
.article-content .nh-article-hero strong,
.article-content [class$="-hero"] strong {
    color: #fff;
}

/* Generic information cards */
.article-content > div:not(.nh-article-hero):not(.nh-article-faq),
.article-content [class$="-card"] {
    max-width: 100%;
}

/* Quick answer / callout style */
.article-content blockquote,
.article-content .nh-quick-answer,
.article-content [class*="blue"],
.article-content [class*="answer"] {
    background: #eff6ff;
    border-inline-start: 4px solid #2563eb;
    padding: 18px 20px;
    border-radius: 9px;
    color: #243047;
}

/* Warning / Important blocks */
.article-content [class*="orange"],
.article-content [class*="important"],
.article-content [class*="warning"] {
    background: #fff7ed;
    border-inline-start: 4px solid #f97316;
    padding: 18px 20px;
    border-radius: 9px;
}

/* Success / tip blocks */
.article-content [class*="green"],
.article-content [class*="success"],
.article-content [class*="tip"] {
    background: #ecfdf5;
    border-inline-start: 4px solid #10b981;
    padding: 18px 20px;
    border-radius: 9px;
}

/* Tables */
.article-content table,
.article-content .nh-article-table {
    width: 100%;
    border-collapse: collapse;
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    margin: 22px 0;
}

.article-content th {
    background: #203e96;
    color: #fff;
    font-weight: 700;
    padding: 13px;
}

.article-content td {
    padding: 13px;
    border: 1px solid #d9e0e9;
}

.article-content tbody tr:nth-child(even) {
    background: #f8fafc;
}

/* FAQ */
.article-content .nh-article-faq,
.article-content [class$="-faq"] {
    background: #f8fafc;
    border: 1px solid #dbe5f1;
    border-radius: 14px;
    padding: clamp(18px,3vw,26px);
}

.article-content .nh-article-faq h3,
.article-content [class$="-faq"] h3 {
    color: #123b91;
    margin-top: 20px;
}

/* Lists */
.article-content ul,
.article-content ol {
    padding-inline-start: 22px;
}

.article-content li {
    margin: 8px 0;
}

/* In-this-guide links */
.article-content a[href^="#"] {
    color: #1555c0;
    font-weight: 600;
}

/* Sources */
.article-content .sources,
.article-content [class*="source"] {
    background: #fff;
    border: 1px solid #dbe5f1;
    border-radius: 14px;
    padding: 20px;
    margin-top: 26px;
}

/* Final section */
.article-content section:last-of-type {
    margin-bottom: 0;
}

/* Arabic */
html[dir="rtl"] .article-content {
    text-align: right;
}

html[dir="rtl"] .article-content th,
html[dir="rtl"] .article-content td {
    text-align: right;
}

/* Mobile */
@media (max-width: 700px) {
    .article-content {
        font-size: 16px;
    }

    .article-content section,
    .article-content .nh-article-section {
        padding: 16px;
        border-radius: 12px;
    }

    .article-content h2 {
        font-size: 1.35rem;
    }

    .article-content table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}
