/* ==========================================================================
   News Rich-Text Content Styling
   Applies to: .news-location-content, .news-detail-content, .news-closing-content
   NOTE: Intentionally does NOT set font-size or color anywhere.
   Everything inherits size/color from the parent wrapper so your
   existing clamp() font sizes and text-brand-navy color stay untouched.
   ========================================================================== */

.news-location-content,
.news-detail-content,
.news-closing-content {
    /* keep default spacing between direct children (paragraphs, lists, etc.) */
}

.news-location-content > *,
.news-detail-content > *,
.news-closing-content > * {
    margin-top: 0;
    margin-bottom: 1em;
}

.news-location-content > *:last-child,
.news-detail-content > *:last-child,
.news-closing-content > *:last-child {
    margin-bottom: 0;
}

/* ----------------------------
   Lists (ul / ol / li)
---------------------------- */
.news-location-content ul,
.news-detail-content ul,
.news-closing-content ul {
    list-style-type: disc;
    padding-left: 1.25em;
    margin: 0.75em 0;
}

.news-location-content ol,
.news-detail-content ol,
.news-closing-content ol {
    list-style-type: decimal;
    padding-left: 1.25em;
    margin: 0.75em 0;
}

.news-location-content li,
.news-detail-content li,
.news-closing-content li {
    margin-bottom: 0.4em;
    line-height: inherit;
}

.news-location-content li:last-child,
.news-detail-content li:last-child,
.news-closing-content li:last-child {
    margin-bottom: 0;
}

/* Nested lists */
.news-location-content li ul,
.news-location-content li ol,
.news-detail-content li ul,
.news-detail-content li ol,
.news-closing-content li ul,
.news-closing-content li ol {
    margin: 0.4em 0 0.4em 0;
}

/* ----------------------------
   Links
   (underline only — no color change,
   so it stays whatever color the browser/theme
   default is, or currentColor if you prefer)
---------------------------- */
.news-location-content a,
.news-detail-content a,
.news-closing-content a {
    text-decoration: underline;
    text-underline-offset: 2px;
    color: currentColor;
}

.news-location-content a:hover,
.news-detail-content a:hover,
.news-closing-content a:hover {
    text-decoration-thickness: 2px;
}

/* ----------------------------
   Blockquote
---------------------------- */
.news-location-content blockquote,
.news-detail-content blockquote,
.news-closing-content blockquote {
    margin: 1em 0;
    padding: 0.75em 1.25em;
    border-left: 4px solid currentColor;
    background-color: rgba(0, 0, 0, 0.03);
    font-style: italic;
}

.news-location-content blockquote p,
.news-detail-content blockquote p,
.news-closing-content blockquote p {
    margin: 0;
}

.news-location-content blockquote p + p,
.news-detail-content blockquote p + p,
.news-closing-content blockquote p + p {
    margin-top: 0.5em;
}

.news-location-content blockquote cite,
.news-detail-content blockquote cite,
.news-closing-content blockquote cite {
    display: block;
    margin-top: 0.5em;
    font-style: normal;
    opacity: 0.7;
}

/* ----------------------------
   Table
---------------------------- */
.news-location-content table,
.news-detail-content table,
.news-closing-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 1em 0;
}

.news-location-content th,
.news-location-content td,
.news-detail-content th,
.news-detail-content td,
.news-closing-content th,
.news-closing-content td {
    border: 1px solid rgba(0, 0, 0, 0.15);
    padding: 0.5em 0.75em;
    text-align: left;
    vertical-align: top;
}

.news-location-content th,
.news-detail-content th,
.news-closing-content th {
    background-color: rgba(0, 0, 0, 0.03);
    font-weight: inherit;
}

/* ----------------------------
   Images inside content
---------------------------- */
.news-location-content img,
.news-detail-content img,
.news-closing-content img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    margin: 1em 0;
}

/* ----------------------------
   Horizontal rule
---------------------------- */
.news-location-content hr,
.news-detail-content hr,
.news-closing-content hr {
    border: none;
    border-top: 1px solid rgba(0, 0, 0, 0.12);
    margin: 1.5em 0;
}

/* ----------------------------
   Headings inside content
   (weight/spacing only — size & color inherited)
---------------------------- */
.news-location-content h1,
.news-location-content h2,
.news-location-content h3,
.news-location-content h4,
.news-location-content h5,
.news-location-content h6,
.news-detail-content h1,
.news-detail-content h2,
.news-detail-content h3,
.news-detail-content h4,
.news-detail-content h5,
.news-detail-content h6,
.news-closing-content h1,
.news-closing-content h2,
.news-closing-content h3,
.news-closing-content h4,
.news-closing-content h5,
.news-closing-content h6 {
    font-size: inherit;
    color: inherit;
    font-weight: 600;
    margin: 0.75em 0 0.5em;
    line-height: inherit;
}