/* AquaLinked Article Inline Image Wrap Fix
   Only controls relationship between inline images and article text.
   Does not change hero panel, sidebar width, or page layout.
*/

.article-body .article-figure,
.article-content .article-figure,
.post-content .article-figure,
.story-body .article-figure,
article .article-figure {
    margin: 24px auto !important;
    text-align: center !important;
    clear: both !important;
    box-sizing: border-box !important;
}

.article-body .article-figure img,
.article-content .article-figure img,
.post-content .article-figure img,
.story-body .article-figure img,
article .article-figure img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 34px rgba(15,76,92,.12) !important;
}

.article-body .article-figure figcaption,
.article-content .article-figure figcaption,
.post-content .article-figure figcaption,
.story-body .article-figure figcaption,
article .article-figure figcaption {
    margin-top: 8px !important;
    padding: 0 8px !important;
    color: #667085 !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-style: italic !important;
}

/* LEFT IMAGE — text wraps on the right */
.article-body .article-figure.align-left,
.article-content .article-figure.align-left,
.post-content .article-figure.align-left,
.story-body .article-figure.align-left,
article .article-figure.align-left {
    float: left !important;
    clear: none !important;
    width: min(36%, 340px) !important;
    max-width: 340px !important;
    margin: 8px 28px 18px 0 !important;
}

/* RIGHT IMAGE — text wraps on the left */
.article-body .article-figure.align-right,
.article-content .article-figure.align-right,
.post-content .article-figure.align-right,
.story-body .article-figure.align-right,
article .article-figure.align-right {
    float: right !important;
    clear: none !important;
    width: min(36%, 340px) !important;
    max-width: 340px !important;
    margin: 8px 0 18px 28px !important;
}

/* CENTER IMAGE — normal full block */
.article-body .article-figure.align-center,
.article-content .article-figure.align-center,
.post-content .article-figure.align-center,
.story-body .article-figure.align-center,
article .article-figure.align-center {
    float: none !important;
    clear: both !important;
    max-width: 760px !important;
    margin: 28px auto !important;
}

/* Size control */
.article-body .article-figure.size-small,
.article-content .article-figure.size-small,
.post-content .article-figure.size-small,
.story-body .article-figure.size-small,
article .article-figure.size-small {
    max-width: 300px !important;
}

.article-body .article-figure.size-medium,
.article-content .article-figure.size-medium,
.post-content .article-figure.size-medium,
.story-body .article-figure.size-medium,
article .article-figure.size-medium {
    max-width: 420px !important;
}

.article-body .article-figure.size-large,
.article-content .article-figure.size-large,
.post-content .article-figure.size-large,
.story-body .article-figure.size-large,
article .article-figure.size-large {
    max-width: 760px !important;
}

.article-body .article-figure.size-full,
.article-content .article-figure.size-full,
.post-content .article-figure.size-full,
.story-body .article-figure.size-full,
article .article-figure.size-full {
    max-width: 100% !important;
}

/* When image is left/right, keep it comfortable */
.article-body .article-figure.align-left.size-large,
.article-body .article-figure.align-left.size-full,
.article-content .article-figure.align-left.size-large,
.article-content .article-figure.align-left.size-full,
.post-content .article-figure.align-left.size-large,
.post-content .article-figure.align-left.size-full,
.story-body .article-figure.align-left.size-large,
.story-body .article-figure.align-left.size-full,
article .article-figure.align-left.size-large,
article .article-figure.align-left.size-full,
.article-body .article-figure.align-right.size-large,
.article-body .article-figure.align-right.size-full,
.article-content .article-figure.align-right.size-large,
.article-content .article-figure.align-right.size-full,
.post-content .article-figure.align-right.size-large,
.post-content .article-figure.align-right.size-full,
.story-body .article-figure.align-right.size-large,
.story-body .article-figure.align-right.size-full,
article .article-figure.align-right.size-large,
article .article-figure.align-right.size-full {
    width: min(36%, 340px) !important;
    max-width: 340px !important;
}

/* Text should flow naturally beside floated images */
.article-body p,
.article-content p,
.post-content p,
.story-body p {
    clear: none !important;
}

/* Headings should not be squeezed beside images */
.article-body h2,
.article-body h3,
.article-content h2,
.article-content h3,
.post-content h2,
.post-content h3,
.story-body h2,
.story-body h3 {
    clear: both !important;
}

/* [clear] shortcode */
.media-clear-wrap {
    clear: both !important;
    display: block !important;
    height: 1px !important;
}

/* End floats safely */
.article-body::after,
.article-content::after,
.post-content::after,
.story-body::after {
    content: "";
    display: block;
    clear: both;
}

/* Mobile: no wrapping, images full width */
@media (max-width: 820px) {
    .article-body .article-figure.align-left,
    .article-body .article-figure.align-right,
    .article-content .article-figure.align-left,
    .article-content .article-figure.align-right,
    .post-content .article-figure.align-left,
    .post-content .article-figure.align-right,
    .story-body .article-figure.align-left,
    .story-body .article-figure.align-right,
    article .article-figure.align-left,
    article .article-figure.align-right {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 24px auto !important;
    }
}


/* AquaLinked list spacing + green panel justification */
.article-body ul,
.article-content ul,
.post-content ul,
.story-body ul,
.article-body ol,
.article-content ol,
.post-content ol,
.story-body ol {
    margin-top: 4px !important;
    margin-bottom: 18px !important;
    padding-left: 26px !important;
    line-height: 1.5 !important;
}

.article-body li,
.article-content li,
.post-content li,
.story-body li {
    margin-bottom: 5px !important;
    padding-left: 2px !important;
}

.article-body li p,
.article-content li p,
.post-content li p,
.story-body li p {
    margin: 0 !important;
}

/* Make the green article panel title and summary justified */
body:has(.article-body) .article-hero h1,
body:has(.article-body) .article-header h1,
body:has(.article-body) .post-hero h1,
body:has(.article-body) .news-hero h1,
body:has(.article-body) .hero h1 {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}

body:has(.article-body) .article-hero p:not(.eyebrow),
body:has(.article-body) .article-header p:not(.eyebrow),
body:has(.article-body) .post-hero p:not(.eyebrow),
body:has(.article-body) .news-hero p:not(.eyebrow),
body:has(.article-body) .hero p:not(.eyebrow) {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}

/* Keep the small AquaLinked Media label clean */
body:has(.article-body) .article-hero .eyebrow,
body:has(.article-body) .article-header .eyebrow,
body:has(.article-body) .post-hero .eyebrow,
body:has(.article-body) .news-hero .eyebrow,
body:has(.article-body) .hero .eyebrow {
    text-align: left !important;
    text-align-last: left !important;
}


/* Make article list spacing equal to normal text line spacing */
.article-body ul,
.article-content ul,
.post-content ul,
.story-body ul,
.article-body ol,
.article-content ol,
.post-content ol,
.story-body ol,
.article-auto-list,
.article-clean-list {
    line-height: 1.72 !important;
    margin-top: 4px !important;
    margin-bottom: 20px !important;
    padding-left: 28px !important;
}

.article-body li,
.article-content li,
.post-content li,
.story-body li,
.article-auto-list li,
.article-clean-list li {
    line-height: 1.72 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-left: 3px !important;
}

.article-body li + li,
.article-content li + li,
.post-content li + li,
.story-body li + li,
.article-auto-list li + li,
.article-clean-list li + li {
    margin-top: 0 !important;
}

.article-body li p,
.article-content li p,
.post-content li p,
.story-body li p,
.article-auto-list li p,
.article-clean-list li p {
    margin: 0 !important;
    line-height: 1.72 !important;
}

/* Public article line-spacing shortcode support */
.article-line-spacing {
    display: block;
    margin: 0 0 18px 0;
}

.article-line-spacing p {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

.article-line-spacing-1-3,
.article-line-spacing-1-3 p,
.article-line-spacing-1-3 li {
    line-height: 1.3 !important;
}

.article-line-spacing-1-5,
.article-line-spacing-1-5 p,
.article-line-spacing-1-5 li {
    line-height: 1.5 !important;
}

.article-line-spacing-1-7,
.article-line-spacing-1-7 p,
.article-line-spacing-1-7 li {
    line-height: 1.7 !important;
}

.article-line-spacing-2-0,
.article-line-spacing-2-0 p,
.article-line-spacing-2-0 li {
    line-height: 2.0 !important;
}

/* Public article line-spacing shortcode support */
.article-line-spacing {
    display: block !important;
    margin: 0 0 16px 0 !important;
}

.article-line-spacing p {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

.article-line-spacing-1-2,
.article-line-spacing-1-2 p,
.article-line-spacing-1-2 li {
    line-height: 1.2 !important;
}

.article-line-spacing-1-3,
.article-line-spacing-1-3 p,
.article-line-spacing-1-3 li {
    line-height: 1.3 !important;
}

.article-line-spacing-1-5,
.article-line-spacing-1-5 p,
.article-line-spacing-1-5 li {
    line-height: 1.5 !important;
}

.article-line-spacing-1-7,
.article-line-spacing-1-7 p,
.article-line-spacing-1-7 li {
    line-height: 1.7 !important;
}

.article-line-spacing-2-0,
.article-line-spacing-2-0 p,
.article-line-spacing-2-0 li {
    line-height: 2.0 !important;
}

/* FINAL: justify only the top green article panel title and summary */
body:has(.article-body) .article-hero h1,
body:has(.article-body) .article-header h1,
body:has(.article-body) .post-hero h1,
body:has(.article-body) .news-hero h1,
body:has(.article-body) .hero h1 {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}

body:has(.article-body) .article-hero p:not(.eyebrow),
body:has(.article-body) .article-header p:not(.eyebrow),
body:has(.article-body) .post-hero p:not(.eyebrow),
body:has(.article-body) .news-hero p:not(.eyebrow),
body:has(.article-body) .hero p:not(.eyebrow),
body:has(.article-body) .article-summary,
body:has(.article-body) .article-excerpt,
body:has(.article-body) .hero-summary,
body:has(.article-body) .hero-subtitle,
body:has(.article-body) .lead {
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}

/* Keep the small AquaLinked Media label clean */
body:has(.article-body) .article-hero .eyebrow,
body:has(.article-body) .article-header .eyebrow,
body:has(.article-body) .post-hero .eyebrow,
body:has(.article-body) .news-hero .eyebrow,
body:has(.article-body) .hero .eyebrow {
    text-align: left !important;
    text-align-last: left !important;
}



/* AquaLinked safe text editor display formatting */
.article-line-spacing {
    display: block !important;
    margin: 0 0 16px 0 !important;
}

.article-line-spacing-1-2,
.article-line-spacing-1-2 p,
.article-line-spacing-1-2 li {
    line-height: 1.2 !important;
}

.article-line-spacing-1-3,
.article-line-spacing-1-3 p,
.article-line-spacing-1-3 li {
    line-height: 1.3 !important;
}

.article-line-spacing-1-5,
.article-line-spacing-1-5 p,
.article-line-spacing-1-5 li {
    line-height: 1.5 !important;
}

.article-line-spacing-1-7,
.article-line-spacing-1-7 p,
.article-line-spacing-1-7 li {
    line-height: 1.7 !important;
}

.article-line-spacing-2-0,
.article-line-spacing-2-0 p,
.article-line-spacing-2-0 li {
    line-height: 2.0 !important;
}

/* Safe Text Editor V2 formatting */
.article-line-spacing {
    display: block !important;
    margin: 0 0 16px 0 !important;
}
.article-line-spacing-1-2,
.article-line-spacing-1-2 p,
.article-line-spacing-1-2 li { line-height: 1.2 !important; }

.article-line-spacing-1-3,
.article-line-spacing-1-3 p,
.article-line-spacing-1-3 li { line-height: 1.3 !important; }

.article-line-spacing-1-5,
.article-line-spacing-1-5 p,
.article-line-spacing-1-5 li { line-height: 1.5 !important; }

.article-line-spacing-1-7,
.article-line-spacing-1-7 p,
.article-line-spacing-1-7 li { line-height: 1.7 !important; }

.article-line-spacing-2-0,
.article-line-spacing-2-0 p,
.article-line-spacing-2-0 li { line-height: 2.0 !important; }

/* AQL article image size enforcement — preview and public article */
.article-body figure.article-figure,
.article-content-inner figure.article-figure,
.preview-card figure.article-figure,
main article figure.article-figure {
    box-sizing: border-box !important;
}

.article-body figure.article-figure img,
.article-content-inner figure.article-figure img,
.preview-card figure.article-figure img,
main article figure.article-figure img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
    border-radius: 16px !important;
}

.article-body figure.article-figure.size-small,
.article-content-inner figure.article-figure.size-small,
.preview-card figure.article-figure.size-small,
main article figure.article-figure.size-small {
    max-width: 260px !important;
}

.article-body figure.article-figure.size-medium,
.article-content-inner figure.article-figure.size-medium,
.preview-card figure.article-figure.size-medium,
main article figure.article-figure.size-medium {
    max-width: 420px !important;
}

.article-body figure.article-figure.size-large,
.article-content-inner figure.article-figure.size-large,
.preview-card figure.article-figure.size-large,
main article figure.article-figure.size-large {
    max-width: 760px !important;
}

.article-body figure.article-figure.size-full,
.article-content-inner figure.article-figure.size-full,
.preview-card figure.article-figure.size-full,
main article figure.article-figure.size-full {
    max-width: 100% !important;
}

.article-body figure.article-figure.align-left,
.article-content-inner figure.article-figure.align-left,
.preview-card figure.article-figure.align-left,
main article figure.article-figure.align-left {
    float: left !important;
    clear: left !important;
    margin: 8px 22px 16px 0 !important;
}

.article-body figure.article-figure.align-right,
.article-content-inner figure.article-figure.align-right,
.preview-card figure.article-figure.align-right,
main article figure.article-figure.align-right {
    float: right !important;
    clear: right !important;
    margin: 8px 0 16px 22px !important;
}

.article-body figure.article-figure.align-center,
.article-content-inner figure.article-figure.align-center,
.preview-card figure.article-figure.align-center,
main article figure.article-figure.align-center {
    float: none !important;
    clear: both !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media(max-width:760px) {
    .article-body figure.article-figure.align-left,
    .article-body figure.article-figure.align-right,
    .article-content-inner figure.article-figure.align-left,
    .article-content-inner figure.article-figure.align-right,
    .preview-card figure.article-figure.align-left,
    .preview-card figure.article-figure.align-right,
    main article figure.article-figure.align-left,
    main article figure.article-figure.align-right {
        float: none !important;
        clear: both !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}
