/* =========================================================
   LIMERICK ARCHIVES — COMPLETE CUSTOM CSS
   =========================================================

   Text: Very dark black #111111
   Decorative green: #2F7D3B
   Background: White #ffffff

   Important image rule:
   - Standard site article images may use the existing black-and-white treatment.
   - Limerick Photographic Archive grid and single record images stay in full colour.
   - Images on the Limerick Generations page remain in colour.

   Headlines:
   - 15pt
   - Bold
   - Garamond
   - Centred

   Final amendments included:
   - Sitewide green masthead compatibility
   - Larger masthead typography override
   - Old Download / Add To Your Own Collection CSS removed
   - View Image removed from single photographic archive record pages
   ========================================================= */


/* =========================================================
   COLOUR VARIABLES
   ========================================================= */

:root {
    --la-black: #111111;
    --la-green: #2F7D3B;
    --la-white: #ffffff;

    --primary-color: #2F7D3B !important;
    --secondary-color: #2F7D3B !important;
    --accent-color: #2F7D3B !important;
    --theme-color: #2F7D3B !important;
    --theme-primary-color: #2F7D3B !important;
}


/* =========================================================
   GLOBAL SIZING
   ========================================================= */

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

#page,
.site,
.site-content,
.content-area,
.site-main,
.main-content,
.content-wrapper,
article,
.entry-header,
.entry-content{
    max-width: 100%;
}


/* =========================================================
   BRIGHT HIGH-CONTRAST BLACK-AND-WHITE ARCHIVE IMAGES
   ========================================================= */

body:not(.single) .site-content img,
body:not(.single) .content-area img,
body:not(.single) .site-main img,
body:not(.single) .main-content img,
body:not(.single) article img,
body:not(.single) .entry-content img,
body:not(.single) .entry-summary img,
body:not(.single) .post-thumbnail img,
body:not(.single) .featured-image img,
body:not(.single) .full-width-image img,
body:not(.single) .wp-post-image,
body:not(.single) .widget-area img,
body:not(.single) .related-posts img,
body:not(.single) picture img {
    -webkit-filter: none !important;

    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* CoverNews images displayed as CSS backgrounds */

body:not(.single) .data-bg,
body:not(.single) .aft-image,
body:not(.single) .post-image,
body:not(.single) .featured-post-image,
body:not(.single) .read-img,
body:not(.single) .af-main-banner .data-bg,
body:not(.single) .spotlight-post .data-bg,
body:not(.single) .aft-trending-posts .data-bg {
    -webkit-filter: none !important;

    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* =========================================================
   KEEP LIMERICK GENERATIONS BOOK COVERS IN FULL COLOUR
   =========================================================

   This identifies the Limerick Generations page through its
   active navigation link and removes all image filtering.
   ========================================================= */

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .site-content img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .content-area img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .site-main img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .main-content img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) article img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .entry-content img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .entry-summary img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .post-thumbnail img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .featured-image img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .full-width-image img,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .wp-post-image,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .site-content img,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .content-area img,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .site-main img,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) article img,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .entry-content img,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .wp-post-image {
    -webkit-filter: none !important;
    filter: none !important;
}


/* Full-colour CSS background images on that page */

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .data-bg,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .aft-image,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .post-image,

body:has(
    a[aria-current="page"][href*="/limerick-generations/"]
) .featured-post-image,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .data-bg,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .aft-image,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .post-image,

body:has(
    .current-menu-item > a[href*="/limerick-generations/"]
) .featured-post-image {
    -webkit-filter: none !important;
    filter: none !important;
}


/* =========================================================
   KEEP MASTHEAD AND LOGO IMAGES UNCHANGED
   ========================================================= */

.site-header img,
#masthead img,
.masthead img,
.site-branding img,
.site-logo img,
.custom-logo,
.custom-logo-link img,
.header-image img,
.wp-custom-header img {
    -webkit-filter: none !important;
    filter: none !important;
}


/* Keep WordPress administration graphics unchanged */

#wpadminbar img {
    -webkit-filter: none !important;
    filter: none !important;
}


/* =========================================================
   WHITE BACKGROUNDS
   ========================================================= */

html,
body,
#page,
.site,
.site-content,
.content-area,
.site-main,
.main-content,
.content-wrapper,
.entry-header,
.entry-content,
.entry-summary,
.page-header,
.archive-header,
.comments-area,
.comment-body,
.widget,
table,
thead,
tbody,
tfoot,
tr,
th,
td,
form{
    background-color: #ffffff !important;
}


/* =========================================================
   VERY DARK BLACK TEXT SITE-WIDE
   ========================================================= */

html,
body,
body p,
body li,
body dt,
body dd,
body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body label,
body small,
body strong,
body b,
body em,
body blockquote,
body cite,
body figcaption,
body caption,
body time,
body address,
body summary,
body legend,
body .entry-title,
body .entry-title a,
body .entry-meta,
body .entry-summary,
body .entry-content,
body .widget,
body .widget-title,
body .section-title,
body .page-title,
body .archive-title,
body .search-title,
body .comment-author,
body .comment-content,
body .site-description,
body .pagination,
body .breadcrumbs,
body .breadcrumb,
body .nav-links,
body .post-navigation{
    color: #111111 !important;
}


/* Site links */

body a,
body a:link,
body a:visited,
body a:hover,
body a:focus,
body a:active {
    color: #111111 !important;
    text-decoration-color: #111111 !important;
}


/* =========================================================
   BASE TYPOGRAPHY
   ========================================================= */

body {
    color: #111111 !important;
    font-size: clamp(16px, 1.1vw, 18px);
    line-height: 1.65;
}

.entry-content h2 {
    font-size: clamp(24px, 3vw, 36px);
}

.entry-content h3 {
    font-size: clamp(21px, 2.5vw, 30px);
}


/* =========================================================
   ALL PAGE AND POST HEADLINES
   Centred, bold, 15pt Garamond
   ========================================================= */

.entry-title,
.page-title,
.archive-title,
.search-title,
.post-title,
.single-post .entry-title,
.single-page .entry-title,
.page .entry-title,
article .entry-title,
header.entry-header .entry-title,
.page-header .page-title,
.archive-header .archive-title,
.search-results .page-title,
.search-results .entry-title,
.search-no-results .page-title,
.blog .entry-title,
.category .entry-title,
.tag .entry-title,
.author .entry-title,
.date .entry-title {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15pt !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-align: center !important;

    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    word-break: normal !important;
    overflow-wrap: normal !important;
}


/* Linked headline text */

.entry-title a,
.page-title a,
.archive-title a,
.search-title a,
.post-title a,
.search-results .entry-title a,
.blog .entry-title a,
.category .entry-title a,
.tag .entry-title a,
.author .entry-title a,
.date .entry-title a {
    display: inline !important;

    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15pt !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-align: center !important;
}


/* =========================================================
   INDIVIDUAL POST TEXT
   ========================================================= */

.single-post .entry-content,
.single-post .entry-content p,
.single-post .entry-content li,
.single-post .entry-content blockquote,
.single-post .entry-content figcaption,
.single-post .entry-content dd,
.single-post .entry-content dt,
.single-post .entry-summary,
.single-post .entry-summary p {
    color: #111111 !important;

    text-align: justify !important;
    text-justify: inter-word !important;

    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    word-break: normal !important;
    overflow-wrap: normal !important;
}


/* Headings within article content remain left-aligned */

.single-post .entry-content h1,
.single-post .entry-content h2,
.single-post .entry-content h3,
.single-post .entry-content h4,
.single-post .entry-content h5,
.single-post .entry-content h6 {
    color: #111111 !important;
    text-align: left !important;

    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    word-break: normal !important;
    overflow-wrap: normal !important;
}


/* Disable automatic hyphenation throughout posts */

.single-post article,
.single-post article * {
    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;
}


/* =========================================================
   FEATURED IMAGE ON INDIVIDUAL POSTS
   ========================================================= */

.single-post .entry-header .post-thumbnail.full-width-image {
    display: block !important;
    position: relative !important;

    width: 50% !important;
    max-width: 50% !important;

    left: auto !important;
    right: auto !important;

    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 20px !important;
    margin-left: auto !important;

    padding: 0 !important;

    float: none !important;
    clear: both !important;

    transform: none !important;
    overflow: hidden !important;
}

.single-post .entry-header .post-thumbnail.full-width-image img {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    float: none !important;
    transform: none !important;
}


/* =========================================================
   RESPONSIVE MEDIA
   ========================================================= */

img,
picture,
video,
canvas,
iframe,
embed,
object {
    max-width: 100%;
}

img,
picture,
video,
canvas {
    height: auto;
}

iframe,
embed,
object {
    width: 100%;
}

.wp-block-embed,
.wp-block-video,
.wp-block-audio,
.wp-block-image,
.wp-block-gallery,
.wp-block-cover {
    max-width: 100% !important;
}

.entry-content figure {
    max-width: 100% !important;
    background-color: transparent !important;
}

.entry-content img {
    visibility: visible !important;
    opacity: 1 !important;

    max-width: 100% !important;
    height: auto !important;

    background-color: transparent !important;
}


/* =========================================================
   LONG LINKS AND TEXT
   ========================================================= */

.entry-content,
.entry-summary,
.comment-content,
.widget{
    overflow-wrap: anywhere;
    word-wrap: break-word;
}


/* =========================================================
   MAIN NAVIGATION
   ========================================================= */

.main-navigation {
    position: relative !important;
    z-index: 9999 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    border-top: 3px double #2F7D3B !important;
    border-bottom: 3px double #2F7D3B !important;

    box-shadow: 0 2px 8px rgba(47, 125, 59, 0.12) !important;
}


/* Centre main menu on desktop only.
   Mobile display is left to CoverNews so its own toggle can work. */

@media screen and (min-width: 769px) {

    .main-navigation > div,
    .main-navigation .menu,
    .main-navigation > div > ul {
        display: flex !important;
        justify-content: center !important;
        align-items: stretch !important;
        flex-wrap: wrap !important;

        margin: 0 !important;
        padding: 0 !important;

        background-color: #ffffff !important;
    }
}


/* Main menu items */

.main-navigation li {
    position: relative !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    border-right: 1px solid rgba(47, 125, 59, 0.25) !important;
}

.main-navigation > div > ul > li:last-child {
    border-right: none !important;
}


/* Main menu links */

.main-navigation a {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;

    min-height: 44px !important;

    padding: 15px 20px !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15pt !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.4px !important;

    text-transform: none !important;
    text-decoration: none !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease !important;
}


/* Remove theme-generated dashes */

.main-navigation li::before,
.main-navigation li::after,
.main-navigation a::before,
.main-navigation .menu-item::before,
.main-navigation .menu-item::after {
    content: none !important;
    display: none !important;
}


/* Hide built-in dropdown symbols */

.main-navigation .dropdown-toggle,
.main-navigation .sub-menu-toggle,
.main-navigation .submenu-toggle,
.main-navigation .dropdown-symbol,
.main-navigation .menu-description,
.main-navigation .menu-item-description,
.main-navigation .angle-down,
.main-navigation .icon-angle-down,
.main-navigation .fa-angle-down,
.main-navigation .fa-chevron-down,
.main-navigation .caret,
.main-navigation a > .icon,
.main-navigation a > svg,
.main-navigation a > i {
    display: none !important;
}


/* Custom downward arrows */

.main-navigation li.menu-item-has-children > a::after,
.main-navigation li.page_item_has_children > a::after {
    content: "▼" !important;

    display: inline-block !important;
    position: static !important;

    width: auto !important;
    height: auto !important;

    margin-left: 5px !important;

    background: transparent !important;
    border: none !important;
    color: #2F7D3B !important;

    font-family: Arial, sans-serif !important;
    font-size: 9px !important;
    line-height: 1 !important;

    transition: transform 0.2s ease !important;
}


/* Navigation hover */

.main-navigation li:hover > a,
.main-navigation a:hover,
.main-navigation a:focus {
    background-color: #ffffff !important;
    color: #111111 !important;

    text-decoration: underline !important;
    text-decoration-color: #111111 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 5px !important;

    outline: none !important;
}


/* Rotate dropdown arrow */

.main-navigation li.menu-item-has-children:hover > a::after,
.main-navigation li.menu-item-has-children:focus-within > a::after,
.main-navigation li.page_item_has_children:hover > a::after,
.main-navigation li.page_item_has_children:focus-within > a::after {
    color: #2F7D3B !important;
    transform: rotate(180deg) !important;
}


/* Current menu item */

.main-navigation .current-menu-item > a,
.main-navigation .current-menu-ancestor > a,
.main-navigation .current_page_item > a,
.main-navigation .current_page_ancestor > a {
    background-color: #ffffff !important;
    color: #111111 !important;

    box-shadow: inset 0 -4px 0 #2F7D3B !important;
}


/* =========================================================
   DROPDOWN MENUS
   ========================================================= */

.main-navigation ul ul {
    display: none !important;
    position: absolute !important;

    top: 100% !important;
    left: 0 !important;
    z-index: 99999 !important;

    min-width: 240px !important;

    margin: 0 !important;
    padding: 0 !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    border: 2px solid #2F7D3B !important;

    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.18) !important;
}

.main-navigation li:hover > ul,
.main-navigation li:focus-within > ul {
    display: block !important;
}

.main-navigation ul ul li {
    display: block !important;

    width: 100% !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    border-right: none !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.2) !important;
}

.main-navigation ul ul li:last-child {
    border-bottom: none !important;
}

.main-navigation ul ul a {
    display: flex !important;
    justify-content: space-between !important;

    width: 100% !important;

    padding: 12px 16px !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    font-size: 13pt !important;
    text-align: left !important;
    white-space: nowrap !important;
}

.main-navigation ul ul li:hover > a,
.main-navigation ul ul a:hover,
.main-navigation ul ul a:focus {
    background-color: #ffffff !important;
    color: #111111 !important;

    text-decoration: underline !important;
    text-decoration-color: #111111 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}


/* Nested dropdown arrows */

.main-navigation ul ul li.menu-item-has-children > a::after,
.main-navigation ul ul li.page_item_has_children > a::after {
    content: "▶" !important;
    color: #2F7D3B !important;
    transform: none !important;
}

.main-navigation ul ul ul {
    top: -2px !important;
    left: 100% !important;
}


/* =========================================================
   MOBILE MENU BUTTON
   =========================================================
   Custom .menu-toggle styling has been removed so the active theme
   can display its own default mobile menu icon.
   ========================================================= */

/* =========================================================
   REMOVE CATEGORY BADGES SITE-WIDE
   ========================================================= */

html body .figure-categories,
html body div.figure-categories,
html body span.figure-categories,
html body ul.figure-categories,
html body .post-thumbnail .figure-categories,
html body .featured-image .figure-categories,
html body .full-width-image .figure-categories,
html body .data-bg .figure-categories,
html body figure .figure-categories,
html body .read-single .figure-categories,
html body .list-style .figure-categories,
html body .grid-item .figure-categories,
html body .spotlight-post .figure-categories,
html body .af-main-banner .figure-categories,
html body .aft-trending-posts .figure-categories,
html body article .figure-categories,
html body .post-thumbnail + .figure-categories,
html body .featured-image + .figure-categories,
html body .full-width-image + .figure-categories,
html body .data-bg + .figure-categories,
html body figure + .figure-categories {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    position: absolute !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    background: transparent !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* Additional CoverNews category classes */

.post-thumbnail .aft-post-cat,
.featured-image .aft-post-cat,
.full-width-image .aft-post-cat,
.data-bg .aft-post-cat,
figure .aft-post-cat,
.post-thumbnail .post-category,
.featured-image .post-category,
.full-width-image .post-category,
.data-bg .post-category,
figure .post-category,
.post-thumbnail .entry-category,
.featured-image .entry-category,
.full-width-image .entry-category,
.data-bg .entry-category,
figure .entry-category,
.post-thumbnail .category-label,
.featured-image .category-label,
.full-width-image .category-label,
.data-bg .category-label,
figure .category-label {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

.figure-categories::before,
.figure-categories::after,
.figure-categories *::before,
.figure-categories *::after,
.aft-post-cat::before,
.aft-post-cat::after {
    content: none !important;
    display: none !important;
}


/* =========================================================
   POST TAGS
   ========================================================= */

.tags-links,
.post-tags,
.entry-tags {
    visibility: visible !important;
    opacity: 1 !important;

    color: #111111 !important;
}

.tags-links a,
.post-tags a,
.entry-tags a {
    display: inline-block !important;

    visibility: visible !important;
    opacity: 1 !important;

    background-color: #ffffff !important;
    color: #111111 !important;

    border: none !important;
}


/* =========================================================
   RESPONSIVE TABLES
   ========================================================= */

.entry-content table,
.comment-content table {
    display: block;

    width: 100%;
    max-width: 100%;

    overflow-x: auto;

    border-collapse: collapse;

    -webkit-overflow-scrolling: touch;
}


/* =========================================================
   BUTTONS
   ========================================================= */

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button,
.wp-element-button,
.wp-block-button__link,
.read-more,
.more-link,
.pagination .page-numbers,
.pagination .current {
    min-height: 44px;

    background-color: #ffffff !important;
    color: #111111 !important;

    border: 2px solid #2F7D3B !important;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.button:hover,
.wp-element-button:hover,
.wp-block-button__link:hover,
.read-more:hover,
.more-link:hover,
.pagination .page-numbers:hover {
    background-color: #ffffff !important;
    color: #111111 !important;
    border-color: #2F7D3B !important;
}


/* =========================================================
   FORM FIELDS
   ========================================================= */

input,
textarea,
select,
option {
    max-width: 100%;

    background-color: #ffffff !important;
    color: #111111 !important;

    border-color: #2F7D3B !important;
}

textarea {
    width: 100%;
    resize: vertical;
}

input::placeholder,
textarea::placeholder {
    color: #111111 !important;
    opacity: 0.72 !important;
}


/* =========================================================
   KEYBOARD FOCUS
   ========================================================= */

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
    outline: 3px solid #2F7D3B !important;
    outline-offset: 3px !important;
}


/* =========================================================
   SECTION HEADINGS, TABLES AND LINES
   ========================================================= */

.widget-title,
.section-title {
    background-color: #ffffff !important;
    color: #111111 !important;
    border-color: #2F7D3B !important;
}

table,
th,
td,
hr,
fieldset,
blockquote {
    border-color: #2F7D3B !important;
}

hr {
    background-color: transparent !important;
}


/* =========================================================
   ICONS AND DECORATIVE ELEMENTS
   ========================================================= */

svg,
.icon,
.fa,
.fas,
.far,
.fab {
    color: #2F7D3B !important;
    fill: #2F7D3B !important;
}


/* =========================================================
   TABLETS AND SMALL LAPTOPS
   ========================================================= */

@media screen and (max-width: 1024px) {

    .site-content,
    .content-area,
    .site-main,
    .main-content,
    .content-wrapper {
        width: 100% !important;
        max-width: 100% !important;
    }

    .entry-content,
.entry-header{
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    .main-navigation a {
        padding-left: 14px !important;
        padding-right: 14px !important;

        font-size: 16pt !important;
    }

    .single-post .entry-header .post-thumbnail.full-width-image {
        width: 65% !important;
        max-width: 65% !important;
    }
}


/* =========================================================
   TABLETS AND PHONES
   ========================================================= */

@media screen and (max-width: 768px) {

    input,
    textarea,
    select {
        font-size: 16px !important;
    }

    .entry-content,
.entry-header{
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .main-navigation li {
        display: block !important;

        width: 100% !important;

        border-right: none !important;
        border-bottom: 1px solid rgba(47, 125, 59, 0.2) !important;
    }

    .main-navigation a {
        justify-content: space-between !important;

        padding: 13px 16px !important;

        font-size: 16pt !important;
        text-align: left !important;
    }

    .main-navigation ul ul,
    .main-navigation ul ul ul {
        position: static !important;
        display: none !important;

        width: 100% !important;
        min-width: 100% !important;

        border-width: 1px 0 0 18px !important;

        box-shadow: none !important;
    }

    .main-navigation li:hover > ul,
    .main-navigation li:focus-within > ul {
        display: block !important;
    }

    .main-navigation ul ul a {
        padding-left: 28px !important;
        white-space: normal !important;
    }

    .main-navigation ul ul li.menu-item-has-children > a::after,
    .main-navigation ul ul li.page_item_has_children > a::after {
        content: "▼" !important;
    }

    .single-post .entry-header .post-thumbnail.full-width-image {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Headlines remain bold, centred and 15pt */

    .entry-title,
    .entry-title a,
    .page-title,
    .page-title a,
    .archive-title,
    .archive-title a,
    .search-title,
    .search-title a,
    .post-title,
    .post-title a,
    .single-post .entry-title,
    .page .entry-title,
    article .entry-title {
        padding-left: 10px !important;
        padding-right: 10px !important;

        font-family: Garamond, "EB Garamond", Georgia, serif !important;
        font-size: 15pt !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;

        text-align: center !important;
    }

    /* Article text becomes left-aligned on narrow screens */

    .single-post .entry-content,
    .single-post .entry-content p,
    .single-post .entry-content li,
    .single-post .entry-content blockquote,
    .single-post .entry-content figcaption {
        text-align: left !important;
    }

    .wp-block-columns {
        flex-wrap: wrap !important;
    }

    .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }

    
}


/* =========================================================
   SMALL PHONES
   ========================================================= */

@media screen and (max-width: 480px) {

    body {
        font-size: 16px;
        line-height: 1.6;
    }

    .entry-content,
.entry-header{
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    /* Headlines remain exactly 15pt Garamond */

    .entry-title,
    .entry-title a,
    .page-title,
    .page-title a,
    .archive-title,
    .archive-title a,
    .search-title,
    .search-title a,
    .post-title,
    .post-title a,
    .single-post .entry-title,
    .page .entry-title,
    article .entry-title {
        font-family: Garamond, "EB Garamond", Georgia, serif !important;
        font-size: 15pt !important;
        font-weight: 700 !important;
        line-height: 1.25 !important;

        text-align: center !important;
    }

    .main-navigation a {
        padding: 12px 14px !important;
        font-size: 13pt !important;
    }

    .main-navigation ul ul a {
        padding-left: 24px !important;
        font-size: 12.5pt !important;
    }

    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link {
        width: 100%;
    }

    
}


/* =========================================================
   LANDSCAPE PHONES
   ========================================================= */

@media screen and (max-height: 500px) and (orientation: landscape) {

    .main-navigation a {
        padding-top: 9px !important;
        padding-bottom: 9px !important;
    }

    .main-navigation ul ul {
        max-height: 70vh;
        overflow-y: auto;
    }
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;

        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;

        transition-duration: 0.01ms !important;
    }
}


/* =========================================================
   PRINT-FRIENDLY ARTICLES
   ========================================================= */

@media print {

    .main-navigation,
.menu-toggle,
.widget-area,
.comments-area,
.pagination{
        display: none !important;
    }

    body,
    article,
    .entry-content,
    .entry-content * {
        background: #ffffff !important;
        color: #000000 !important;
    }

    .entry-title,
    .page-title,
    .archive-title,
    .search-title,
    .post-title {
        color: #000000 !important;

        font-family: Garamond, Georgia, serif !important;
        font-size: 15pt !important;
        font-weight: 700 !important;

        text-align: center !important;
    }

    .single-post .entry-header .post-thumbnail.full-width-image {
        width: 60% !important;
        max-width: 60% !important;
    }

    a {
        color: #000000 !important;
        text-decoration: none !important;
    }
}
/* =========================================================
   HOMEPAGE / LATEST POSTS — FOUR-COLUMN GRID
   =========================================================
   Desktop: 4 columns
   Tablet: 2 columns
   Phone: 1 column
   Applies to the native CoverNews / WordPress latest-posts page.
   ========================================================= */

/* Make the homepage content use the full available width. */
body.home .content-area,
body.home .site-main,
body.front-page .content-area,
body.front-page .site-main,
body.page-id-76725 .content-area,
body.page-id-76725 .site-main {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/*
 * CoverNews has used several wrapper names across versions.
 * These selectors cover the archive grid wrappers and also identify
 * the immediate parent that actually contains the post cards.
 */
body.home .site-main .af-container-row,
body.home .site-main .aft-archive-wrapper,
body.home .site-main .archive-posts,
body.home .site-main .posts-wrapper,
body.home .site-main .posts-wrap,
body.home .site-main .content-list,
body.home .site-main .row:has(> article),
body.home .site-main *:has(> article.post),
body.home .site-main *:has(> .read-single),
body.home .site-main *:has(> .grid-item),
body.front-page .site-main .af-container-row,
body.front-page .site-main .aft-archive-wrapper,
body.front-page .site-main .archive-posts,
body.front-page .site-main .posts-wrapper,
body.front-page .site-main .posts-wrap,
body.front-page .site-main .content-list,
body.front-page .site-main .row:has(> article),
body.front-page .site-main *:has(> article.post),
body.front-page .site-main *:has(> .read-single),
body.front-page .site-main *:has(> .grid-item),
body.page-id-76725 .site-main .af-container-row,
body.page-id-76725 .site-main .aft-archive-wrapper,
body.page-id-76725 .site-main .archive-posts,
body.page-id-76725 .site-main .posts-wrapper,
body.page-id-76725 .site-main .posts-wrap,
body.page-id-76725 .site-main .content-list,
body.page-id-76725 .site-main .row:has(> article),
body.page-id-76725 .site-main *:has(> article.post),
body.page-id-76725 .site-main *:has(> .read-single),
body.page-id-76725 .site-main *:has(> .grid-item) {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 30px 22px !important;
    align-items: start !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Remove theme column widths and the former 760px card width. */
body.home .site-main article,
body.home .site-main .read-single,
body.home .site-main .list-style,
body.home .site-main .grid-item,
body.front-page .site-main article,
body.front-page .site-main .read-single,
body.front-page .site-main .list-style,
body.front-page .site-main .grid-item,
body.page-id-76725 .site-main article,
body.page-id-76725 .site-main .read-single,
body.page-id-76725 .site-main .list-style,
body.page-id-76725 .site-main .grid-item {
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    clear: none !important;
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    margin: 0 !important;
    padding: 0 0 24px !important;
    border-bottom: 2px solid #2F7D3B !important;
    box-sizing: border-box !important;
    text-align: center !important;
}

/* Override Bootstrap/theme width classes attached to post cards. */
body.home .site-main article[class*="col-"],
body.home .site-main .read-single[class*="col-"],
body.home .site-main .grid-item[class*="col-"],
body.front-page .site-main article[class*="col-"],
body.front-page .site-main .read-single[class*="col-"],
body.front-page .site-main .grid-item[class*="col-"],
body.page-id-76725 .site-main article[class*="col-"],
body.page-id-76725 .site-main .read-single[class*="col-"],
body.page-id-76725 .site-main .grid-item[class*="col-"] {
    flex: none !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Keep non-post elements across the full grid width. */
body.home .site-main .navigation,
body.home .site-main .pagination,
body.home .site-main .posts-navigation,
body.home .site-main .page-header,
body.home .site-main .archive-header,
body.front-page .site-main .navigation,
body.front-page .site-main .pagination,
body.front-page .site-main .posts-navigation,
body.front-page .site-main .page-header,
body.front-page .site-main .archive-header,
body.page-id-76725 .site-main .navigation,
body.page-id-76725 .site-main .pagination,
body.page-id-76725 .site-main .posts-navigation,
body.page-id-76725 .site-main .page-header,
body.page-id-76725 .site-main .archive-header {
    grid-column: 1 / -1 !important;
    width: 100% !important;
}

/* Featured images fill each card consistently. */
body.home .site-main article .post-thumbnail,
body.home .site-main article .featured-image,
body.home .site-main article .read-img,
body.home .site-main article figure,
body.front-page .site-main article .post-thumbnail,
body.front-page .site-main article .featured-image,
body.front-page .site-main article .read-img,
body.front-page .site-main article figure,
body.page-id-76725 .site-main article .post-thumbnail,
body.page-id-76725 .site-main article .featured-image,
body.page-id-76725 .site-main article .read-img,
body.page-id-76725 .site-main article figure {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    overflow: hidden !important;
}

body.home .site-main article .post-thumbnail img,
body.home .site-main article .featured-image img,
body.home .site-main article .read-img img,
body.home .site-main article figure img,
body.front-page .site-main article .post-thumbnail img,
body.front-page .site-main article .featured-image img,
body.front-page .site-main article .read-img img,
body.front-page .site-main article figure img,
body.page-id-76725 .site-main article .post-thumbnail img,
body.page-id-76725 .site-main article .featured-image img,
body.page-id-76725 .site-main article .read-img img,
body.page-id-76725 .site-main article figure img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 300 / 157 !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
}

/* Homepage titles. */
body.home .site-main article .entry-title,
body.home .site-main article .entry-title a,
body.front-page .site-main article .entry-title,
body.front-page .site-main article .entry-title a,
body.page-id-76725 .site-main article .entry-title,
body.page-id-76725 .site-main article .entry-title a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 7px auto 10px !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
}

/* =========================================================
   HOMEPAGE — FULL CONTENT, FIRST PARAGRAPH ONLY
   Theme setting must be: FULL CONTENT
   ========================================================= */

/* Hide any separate excerpt output to prevent duplicated or shortened text. */
body.home .site-main article .entry-summary,
body.home .site-main article .post-excerpt,
body.home .site-main article .aft-post-excerpt,
body.home .site-main article .article-excerpt,
body.home .site-main article .archive-excerpt,
body.front-page .site-main article .entry-summary,
body.front-page .site-main article .post-excerpt,
body.front-page .site-main article .aft-post-excerpt,
body.front-page .site-main article .article-excerpt,
body.front-page .site-main article .archive-excerpt,
body.page-id-76725 .site-main article .entry-summary,
body.page-id-76725 .site-main article .post-excerpt,
body.page-id-76725 .site-main article .aft-post-excerpt,
body.page-id-76725 .site-main article .article-excerpt,
body.page-id-76725 .site-main article .archive-excerpt {
    display: none !important;
}

/* Allow the full-content container to expand naturally. */
body.home .site-main article .entry-content,
body.front-page .site-main article .entry-content,
body.page-id-76725 .site-main article .entry-content {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 8px auto 14px !important;
    padding: 0 !important;
    line-height: 1.55 !important;
    text-align: left !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

/* Hide every direct content element except the first paragraph. */
body.home .site-main article .entry-content > *:not(p:first-of-type),
body.front-page .site-main article .entry-content > *:not(p:first-of-type),
body.page-id-76725 .site-main article .entry-content > *:not(p:first-of-type) {
    display: none !important;
}

/* Display the complete first paragraph without truncation. */
body.home .site-main article .entry-content > p:first-of-type,
body.front-page .site-main article .entry-content > p:first-of-type,
body.page-id-76725 .site-main article .entry-content > p:first-of-type {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.55 !important;
    text-align: left !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

/* Hide homepage publication dates. */
body.home .site-main article time,
body.home .site-main article .posted-on,
body.home .site-main article .post-date,
body.front-page .site-main article time,
body.front-page .site-main article .posted-on,
body.front-page .site-main article .post-date,
body.page-id-76725 .site-main article time,
body.page-id-76725 .site-main article .posted-on,
body.page-id-76725 .site-main article .post-date {
    display: none !important;
}

/* Keep Read More at the bottom of every card. */
body.home .site-main article .more-link,
body.home .site-main article .read-more,
body.home .site-main article .read-more-link,
body.front-page .site-main article .more-link,
body.front-page .site-main article .read-more,
body.front-page .site-main article .read-more-link,
body.page-id-76725 .site-main article .more-link,
body.page-id-76725 .site-main article .read-more,
body.page-id-76725 .site-main article .read-more-link {
    display: inline-block !important;
    align-self: center !important;
    width: auto !important;
    margin: auto auto 0 !important;
    text-align: center !important;
}

/* Tablet: two columns. */
@media screen and (max-width: 1100px) {
    body.home .site-main .af-container-row,
    body.home .site-main .aft-archive-wrapper,
    body.home .site-main .archive-posts,
    body.home .site-main .posts-wrapper,
    body.home .site-main .posts-wrap,
    body.home .site-main .content-list,
    body.home .site-main .row:has(> article),
    body.home .site-main *:has(> article.post),
    body.home .site-main *:has(> .read-single),
    body.home .site-main *:has(> .grid-item),
    body.front-page .site-main .af-container-row,
    body.front-page .site-main .aft-archive-wrapper,
    body.front-page .site-main .archive-posts,
    body.front-page .site-main .posts-wrapper,
    body.front-page .site-main .posts-wrap,
    body.front-page .site-main .content-list,
    body.front-page .site-main .row:has(> article),
    body.front-page .site-main *:has(> article.post),
    body.front-page .site-main *:has(> .read-single),
    body.front-page .site-main *:has(> .grid-item),
    body.page-id-76725 .site-main .af-container-row,
    body.page-id-76725 .site-main .aft-archive-wrapper,
    body.page-id-76725 .site-main .archive-posts,
    body.page-id-76725 .site-main .posts-wrapper,
    body.page-id-76725 .site-main .posts-wrap,
    body.page-id-76725 .site-main .content-list,
    body.page-id-76725 .site-main .row:has(> article),
    body.page-id-76725 .site-main *:has(> article.post),
    body.page-id-76725 .site-main *:has(> .read-single),
    body.page-id-76725 .site-main *:has(> .grid-item) {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Phone: one column. */
@media screen and (max-width: 650px) {
    body.home .site-main .af-container-row,
    body.home .site-main .aft-archive-wrapper,
    body.home .site-main .archive-posts,
    body.home .site-main .posts-wrapper,
    body.home .site-main .posts-wrap,
    body.home .site-main .content-list,
    body.home .site-main .row:has(> article),
    body.home .site-main *:has(> article.post),
    body.home .site-main *:has(> .read-single),
    body.home .site-main *:has(> .grid-item),
    body.front-page .site-main .af-container-row,
    body.front-page .site-main .aft-archive-wrapper,
    body.front-page .site-main .archive-posts,
    body.front-page .site-main .posts-wrapper,
    body.front-page .site-main .posts-wrap,
    body.front-page .site-main .content-list,
    body.front-page .site-main .row:has(> article),
    body.front-page .site-main *:has(> article.post),
    body.front-page .site-main *:has(> .read-single),
    body.front-page .site-main *:has(> .grid-item),
    body.page-id-76725 .site-main .af-container-row,
    body.page-id-76725 .site-main .aft-archive-wrapper,
    body.page-id-76725 .site-main .archive-posts,
    body.page-id-76725 .site-main .posts-wrapper,
    body.page-id-76725 .site-main .posts-wrap,
    body.page-id-76725 .site-main .content-list,
    body.page-id-76725 .site-main .row:has(> article),
    body.page-id-76725 .site-main *:has(> article.post),
    body.page-id-76725 .site-main *:has(> .read-single),
    body.page-id-76725 .site-main *:has(> .grid-item) {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }
}

/* =========================================================
   RELOCATED LIMERICK ARCHIVES DATE LINE
   ========================================================= */

/* Style the “Limerick Archives — [date]” line after PHP moves it */

.single-post .limerick-archives-date {
    display: block !important;
    clear: both !important;
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 32px auto 0 auto !important;
    padding: 16px 0 0 0 !important;

    color: #111111 !important;

    border-top: 1px solid #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-style: italic !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;

    text-align: center !important;

    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}


/* Keep the relocated date line readable on phones */

@media screen and (max-width: 480px) {

    .single-post .limerick-archives-date {
        margin-top: 26px !important;
        padding-top: 14px !important;

        font-size: 12pt !important;
        line-height: 1.45 !important;
    }
}
/* =========================================================
   CENTRED PRIMARY NAVIGATION OVERRIDE
   ========================================================= */

/* Centre the complete primary-menu container */

.main-navigation,
.main-navigation .menu-primary-container,
.main-navigation .primary-menu-container,
.main-navigation .menu-main-menu-container,
.main-navigation > div {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
}


/* Centre all first-level menu items as one group on desktop.
   CoverNews controls whether the menu is open or closed on mobile. */

@media screen and (min-width: 769px) {

    .main-navigation > div > ul,
    .main-navigation ul.menu,
    .main-navigation .menu,
    .main-navigation .primary-menu {
        display: flex !important;
        justify-content: center !important;
        align-items: stretch !important;
        flex-wrap: wrap !important;

        width: 100% !important;
        max-width: 100% !important;

        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;

        text-align: center !important;
    }
}


/* Keep individual top-level items centred inside the menu group */

.main-navigation > div > ul > li,
.main-navigation ul.menu > li,
.main-navigation .primary-menu > li {
    display: block !important;
    float: none !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* Preserve normal dropdown positioning */

.main-navigation ul ul {
    text-align: left !important;
}


/* Mobile navigation is controlled by the native CoverNews toggle.
   Do not force the menu container open here. */

@media screen and (max-width: 768px) {

    .main-navigation > div > ul > li,
    .main-navigation ul.menu > li,
    .main-navigation .primary-menu > li {
        width: 100% !important;
    }
}

/* =========================================================
   INDIVIDUAL POSTS — HIDE REPEATED EXCERPTS
   =========================================================
   Excerpts remain visible in the Welcome page post grid,
   archives and listing pages, but are hidden on the full
   individual post pages where they repeat the opening text.
   ========================================================= */

body.single-post .entry-summary,
body.single-post .post-excerpt,
body.single-post .aft-post-excerpt,
body.single-post .article-excerpt,
body.single-post .archive-excerpt,
body.single-post .post-description,
body.single-post .entry-header + .entry-summary,
body.single-post article > .entry-summary,
body.single-post .entry-content > .excerpt,
body.single-post .entry-content > .post-excerpt {
    display: none !important;
}

/* =========================================================
   INDIVIDUAL POST HEADINGS
   ========================================================= */

body.single-post h1,
body.single-post h2,
body.single-post h3,
body.single-post h4,
body.single-post h5,
body.single-post h6 {
    color: #2F7D3B !important;
    font-family: Garamond, Georgia, serif !important;
    font-weight: 700 !important;
}

body.single-post h1.entry-title,
body.single-post .entry-title,
body.single-post .post-title,
body.single-post .entry-header h1,
body.single-post .entry-header .entry-title {
    color: #2F7D3B !important;
    font-size: 38px !important;
    line-height: 1.15 !important;
    font-weight: 700 !important;
}

body.single-post .entry-content h2,
body.single-post .post-content h2,
body.single-post .article-content h2 {
    color: #2F7D3B !important;
    font-size: 30px !important;
    line-height: 1.2 !important;
}

body.single-post .entry-content h3,
body.single-post .post-content h3,
body.single-post .article-content h3 {
    color: #2F7D3B !important;
    font-size: 25px !important;
    line-height: 1.25 !important;
}

body.single-post .entry-content h4,
body.single-post .post-content h4,
body.single-post .article-content h4 {
    color: #2F7D3B !important;
    font-size: 21px !important;
    line-height: 1.3 !important;
}


/* =========================================================
   WEBSITE MENUS — REDUCED FONT SIZE
   ========================================================= */

.main-navigation a,
.main-navigation .menu a,
.main-navigation .primary-menu a,
.site-header .menu a,
.header-main .menu a,
.top-navigation a,
.secondary-navigation a,
.widget_nav_menu a{
    font-size: 14px !important;
    line-height: 1.3 !important;
}

.main-navigation .sub-menu a,
.main-navigation ul ul a,
.main-navigation .children a,
.site-header .sub-menu a {
    font-size: 13px !important;
    line-height: 1.3 !important;
}

@media screen and (max-width: 768px) {

    body.single-post h1.entry-title,
    body.single-post .entry-title,
    body.single-post .post-title,
    body.single-post .entry-header h1,
    body.single-post .entry-header .entry-title {
        font-size: 30px !important;
    }

    body.single-post .entry-content h2,
    body.single-post .post-content h2,
    body.single-post .article-content h2 {
        font-size: 25px !important;
    }

    body.single-post .entry-content h3,
    body.single-post .post-content h3,
    body.single-post .article-content h3 {
        font-size: 22px !important;
    }

    .main-navigation a,
.main-navigation .menu a,
.main-navigation .primary-menu a,
.main-navigation .sub-menu a,
.main-navigation ul ul a,
.main-navigation .children a,
.site-header .menu a,
.header-main .menu a,
.top-navigation a,
.secondary-navigation a,
.widget_nav_menu a{
        font-size: 13px !important;
    }
}

/* Restore full colour to the masthead and header */

.site-header img,
.site-branding img,
.custom-logo,
.custom-logo-link img,
.header-image img,
.header-main img,
.masthead img,
#masthead img,
.site-header .data-bg,
.header-main .data-bg,
.masthead .data-bg,
#masthead .data-bg {
-webkit-filter: none !important;
filter: none !important;
opacity: 1 !important;
mix-blend-mode: normal !important;
}

/* =========================================================
   STATIC PAGES — FULL-COLOUR IMAGES
   =========================================================
   This rule guarantees that images on the public page
   https://limerickarchives.com/limerick-generations/
   remain in full colour.

   It applies to normal WordPress static pages only.
   Posts and category archives retain the archive greyscale.
   ========================================================= */

/* Standard images on all static WordPress pages. */

body.page:not(.home) .site-content img,
body.page:not(.home) .content-area img,
body.page:not(.home) .site-main img,
body.page:not(.home) .main-content img,
body.page:not(.home) article img,
body.page:not(.home) .entry-content img,
body.page:not(.home) .wp-block-post-content img,
body.page:not(.home) .wp-block-image img,
body.page:not(.home) .wp-block-media-text__media img,
body.page:not(.home) .post-thumbnail img,
body.page:not(.home) .featured-image img,
body.page:not(.home) .full-width-image img,
body.page:not(.home) .wp-post-image,
body.page:not(.home) figure img,
body.page:not(.home) picture img {
    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}


/* Explicitly cancel inherited greyscale, contrast and brightness. */

body.page:not(.home) .entry-content img,
body.page:not(.home) .wp-block-post-content img,
body.page:not(.home) .wp-block-image img,
body.page:not(.home) .wp-block-media-text__media img,
body.page:not(.home) figure img,
body.page:not(.home) picture img {
    -webkit-filter:
        grayscale(0%)
        contrast(100%)
        brightness(100%) !important;

    filter:
        grayscale(0%)
        contrast(100%)
        brightness(100%) !important;
}


/* WordPress Cover blocks and background images. */

body.page:not(.home) .wp-block-cover,
body.page:not(.home) .wp-block-cover img,
body.page:not(.home) .wp-block-cover__image-background,
body.page:not(.home) .data-bg,
body.page:not(.home) .aft-image,
body.page:not(.home) .post-image,
body.page:not(.home) .featured-post-image,
body.page:not(.home) .read-img {
    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}


/* Preserve full colour during hover and keyboard focus. */

body.page:not(.home) a:hover img,
body.page:not(.home) a:focus img,
body.page:not(.home) a:focus-visible img {
    -webkit-filter:
        grayscale(0%)
        contrast(100%)
        brightness(100%) !important;

    filter:
        grayscale(0%)
        contrast(100%)
        brightness(100%) !important;

    opacity: 1 !important;
    mix-blend-mode: normal !important;
}

/* =========================================================
   ALL STANDARD WORDPRESS PAGES — 750PX CENTRED LAYOUT
   Homepage, posts and archive listings remain unchanged.
   ========================================================= */

body.page:not(.home):not(.front-page) .content-area,
body.page:not(.home):not(.front-page) .site-main,
body.page:not(.home):not(.front-page) article,
body.page:not(.home):not(.front-page) .entry-header,
body.page:not(.home):not(.front-page) .entry-content{
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    box-sizing: border-box !important;
}

body.page:not(.home):not(.front-page) #secondary,
body.page:not(.home):not(.front-page) #secondary.widget-area,
body.page:not(.home):not(.front-page) aside.sidebar {
    display: none !important;
}

body.page:not(.home):not(.front-page) .entry-content {
    padding-left: 24px !important;
    padding-right: 24px !important;
}

body.page:not(.home):not(.front-page) .entry-content img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media screen and (max-width: 768px) {
    body.page:not(.home):not(.front-page) .content-area,
body.page:not(.home):not(.front-page) .site-main,
body.page:not(.home):not(.front-page) article,
body.page:not(.home):not(.front-page) .entry-header,
body.page:not(.home):not(.front-page) .entry-content{
        max-width: 100% !important;
    }

    body.page:not(.home):not(.front-page) .entry-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

/* =========================================================
   RELIABLE FIXED HEADER SYSTEM — ALL DEVICES
   =========================================================
   CoverNews and some mobile browsers prevent position: sticky
   from behaving reliably because of ancestor overflow and theme
   scrolling rules.

   The companion Limerick Archives plugin measures the complete
   header and writes its exact height into:
   --la-fixed-header-height

   The header is then fixed across desktop, tablet and phone,
   while the body receives an equal top offset. The masthead and
   menu therefore remain joined without covering page content.
   ========================================================= */

:root {
    --la-fixed-header-height: 0px;
}


/* Activate only after the companion plugin has measured the header. */

html body.la-fixed-site-header .header-layout-1 {
    position: fixed !important;

    top: 0 !important;
    right: 0 !important;
    bottom: auto !important;
    left: 0 !important;

    z-index: 999999 !important;

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    transform: none !important;

    overflow: visible !important;

    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.10) !important;

    isolation: isolate !important;
}


/*
 * Reserve exactly the same amount of space as the fixed header.
 * This replaces any obsolete inline padding inserted by earlier
 * fixed-header code.
 */

html body.la-fixed-site-header,
html body.la-fixed-site-header.home,
html body.la-fixed-site-header.blog,
html body.la-fixed-site-header.scrollup-sticky-header,
html body.la-fixed-site-header.aft-sticky-header,
html body.la-fixed-site-header[style*="padding-top"] {
    padding-top: var(--la-fixed-header-height) !important;
}


/* Keep the masthead in normal flow inside the fixed wrapper. */

html body.la-fixed-site-header #masthead,
html body.la-fixed-site-header header.site-header,
html body.la-fixed-site-header .site-header,
html body.la-fixed-site-header #masthead.la-desktop-fixed-header,
html body.la-fixed-site-header header.site-header.la-desktop-fixed-header,
html body.la-fixed-site-header .site-header.la-desktop-fixed-header {
    position: relative !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    z-index: auto !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding-bottom: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    transform: none !important;
    overflow: visible !important;

    box-shadow: none !important;
}


/* Keep the main menu joined to the masthead in normal flow. */

html body.la-fixed-site-header #masthead .main-navigation,
html body.la-fixed-site-header .site-header .main-navigation,
html body.la-fixed-site-header .la-desktop-fixed-header .main-navigation,
html body.la-fixed-site-header #site-navigation,
html body.la-fixed-site-header .main-navigation {
    position: relative !important;

    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;

    z-index: 1000000 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;

    transform: none !important;
}


/* Remove obsolete page offsets and prevent ancestor clipping. */

html body.la-fixed-site-header #page,
html body.la-fixed-site-header .site {
    margin-top: 0 !important;
    padding-top: 0 !important;

    overflow: visible !important;
}


/* WordPress administration bar offsets. */

@media screen and (min-width: 783px) {

    html body.admin-bar.la-fixed-site-header .header-layout-1 {
        top: 32px !important;
    }
}

@media screen and (max-width: 782px) {

    html body.admin-bar.la-fixed-site-header .header-layout-1 {
        top: 46px !important;
    }
}


/* =========================================================
   MOBILE MENU OPEN STATE
   =========================================================
   A long opened menu scrolls inside the available screen height.
   The plugin remeasures the header as the menu opens and closes.
   ========================================================= */

@media screen and (max-width: 768px) {

    html body.la-fixed-site-header .header-layout-1:has(
        .toggle-menu a[aria-expanded="true"]
    ) {
        max-height: 100dvh !important;

        overflow-x: hidden !important;
        overflow-y: auto !important;

        overscroll-behavior: contain !important;
        -webkit-overflow-scrolling: touch !important;
    }

    html body.admin-bar.la-fixed-site-header .header-layout-1:has(
        .toggle-menu a[aria-expanded="true"]
    ) {
        max-height: calc(100dvh - 46px) !important;
    }
}


/* =========================================================
   HOMEPAGE — ONE-COLUMN LATEST POSTS
   Keeps the homepage feed centred at a maximum width of 750px.
   ========================================================= */

body.home .content-area,
body.home .site-main,
body.front-page .content-area,
body.front-page .site-main,
body.page-id-76725 .content-area,
body.page-id-76725 .site-main {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.home .site-main .af-container-row,
body.home .site-main .aft-archive-wrapper,
body.home .site-main .archive-posts,
body.home .site-main .posts-wrapper,
body.home .site-main .posts-wrap,
body.home .site-main .content-list,
body.home .site-main .row:has(> article),
body.home .site-main *:has(> article.post),
body.home .site-main *:has(> .read-single),
body.home .site-main *:has(> .grid-item),
body.front-page .site-main .af-container-row,
body.front-page .site-main .aft-archive-wrapper,
body.front-page .site-main .archive-posts,
body.front-page .site-main .posts-wrapper,
body.front-page .site-main .posts-wrap,
body.front-page .site-main .content-list,
body.front-page .site-main .row:has(> article),
body.front-page .site-main *:has(> article.post),
body.front-page .site-main *:has(> .read-single),
body.front-page .site-main *:has(> .grid-item),
body.page-id-76725 .site-main .af-container-row,
body.page-id-76725 .site-main .aft-archive-wrapper,
body.page-id-76725 .site-main .archive-posts,
body.page-id-76725 .site-main .posts-wrapper,
body.page-id-76725 .site-main .posts-wrap,
body.page-id-76725 .site-main .content-list,
body.page-id-76725 .site-main .row:has(> article),
body.page-id-76725 .site-main *:has(> article.post),
body.page-id-76725 .site-main *:has(> .read-single),
body.page-id-76725 .site-main *:has(> .grid-item) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .site-main article,
body.home .site-main .read-single,
body.home .site-main .list-style,
body.home .site-main .grid-item,
body.front-page .site-main article,
body.front-page .site-main .read-single,
body.front-page .site-main .list-style,
body.front-page .site-main .grid-item,
body.page-id-76725 .site-main article,
body.page-id-76725 .site-main .read-single,
body.page-id-76725 .site-main .list-style,
body.page-id-76725 .site-main .grid-item {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both !important;
}

body.home .site-main article[class*="col-"],
body.home .site-main .read-single[class*="col-"],
body.home .site-main .grid-item[class*="col-"],
body.front-page .site-main article[class*="col-"],
body.front-page .site-main .read-single[class*="col-"],
body.front-page .site-main .grid-item[class*="col-"],
body.page-id-76725 .site-main article[class*="col-"],
body.page-id-76725 .site-main .read-single[class*="col-"],
body.page-id-76725 .site-main .grid-item[class*="col-"] {
    flex: none !important;
    width: 100% !important;
    max-width: 750px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .site-main .navigation,
body.home .site-main .pagination,
body.home .site-main .posts-navigation,
body.home .site-main .page-header,
body.home .site-main .archive-header,
body.front-page .site-main .navigation,
body.front-page .site-main .pagination,
body.front-page .site-main .posts-navigation,
body.front-page .site-main .page-header,
body.front-page .site-main .archive-header,
body.page-id-76725 .site-main .navigation,
body.page-id-76725 .site-main .pagination,
body.page-id-76725 .site-main .posts-navigation,
body.page-id-76725 .site-main .page-header,
body.page-id-76725 .site-main .archive-header {
    grid-column: 1 !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

@media screen and (max-width: 768px) {
    body.home .site-main .af-container-row,
    body.home .site-main .aft-archive-wrapper,
    body.home .site-main .archive-posts,
    body.home .site-main .posts-wrapper,
    body.home .site-main .posts-wrap,
    body.home .site-main .content-list,
    body.home .site-main .row:has(> article),
    body.home .site-main *:has(> article.post),
    body.home .site-main *:has(> .read-single),
    body.home .site-main *:has(> .grid-item),
    body.front-page .site-main .af-container-row,
    body.front-page .site-main .aft-archive-wrapper,
    body.front-page .site-main .archive-posts,
    body.front-page .site-main .posts-wrapper,
    body.front-page .site-main .posts-wrap,
    body.front-page .site-main .content-list,
    body.front-page .site-main .row:has(> article),
    body.front-page .site-main *:has(> article.post),
    body.front-page .site-main *:has(> .read-single),
    body.front-page .site-main *:has(> .grid-item),
    body.page-id-76725 .site-main .af-container-row,
    body.page-id-76725 .site-main .aft-archive-wrapper,
    body.page-id-76725 .site-main .archive-posts,
    body.page-id-76725 .site-main .posts-wrapper,
    body.page-id-76725 .site-main .posts-wrap,
    body.page-id-76725 .site-main .content-list,
    body.page-id-76725 .site-main .row:has(> article),
    body.page-id-76725 .site-main *:has(> article.post),
    body.page-id-76725 .site-main *:has(> .read-single),
    body.page-id-76725 .site-main *:has(> .grid-item) {
        width: 100% !important;
        max-width: 100% !important;
        gap: 26px !important;
    }

    body.home .site-main article,
    body.home .site-main .read-single,
    body.home .site-main .list-style,
    body.home .site-main .grid-item,
    body.front-page .site-main article,
    body.front-page .site-main .read-single,
    body.front-page .site-main .list-style,
    body.front-page .site-main .grid-item,
    body.page-id-76725 .site-main article,
    body.page-id-76725 .site-main .read-single,
    body.page-id-76725 .site-main .list-style,
    body.page-id-76725 .site-main .grid-item {
        max-width: 100% !important;
    }
}

/* =========================================================
   FINAL ARCHIVE / CATEGORY STRUCTURE OVERRIDE
   Keep this section at the very end of the stylesheet.
   Requires the separate PHP Code Snippets rule that adds:
   .historical-dateline, .historical-date-break and
   .historical-opening to generated excerpts.
   ========================================================= */

/* Keep each listing card separate. */
body.archive article,
body.category article,
body.search article,
body.blog article {
    display: block !important;
    clear: both !important;
    margin: 0 0 38px 0 !important;
    padding: 0 0 28px 0 !important;
}

/* Headline on its own line. */
body.archive article .entry-title,
body.category article .entry-title,
body.search article .entry-title,
body.blog article .entry-title,
body.archive article h2,
body.archive article h3,
body.category article h2,
body.category article h3 {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 8px 0 6px 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}

body.archive article .entry-title a,
body.category article .entry-title a,
body.search article .entry-title a,
body.blog article .entry-title a {
    display: block !important;
}

/* Author and post metadata on their own line. */
body.archive article .entry-meta,
body.category article .entry-meta,
body.search article .entry-meta,
body.blog article .entry-meta,
body.archive article .post-item-metadata,
body.category article .post-item-metadata,
body.archive article .post-meta,
body.category article .post-meta {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* Hide the modern WordPress publication date but retain author details. */
body.archive article .posts-date,
body.category article .posts-date,
body.search article .posts-date,
body.blog article .posts-date,
body.archive article span.posts-date,
body.category article span.posts-date,
body.archive article .posted-on,
body.category article .posted-on,
body.archive article time.entry-date,
body.category article time.entry-date,
body.search article time.entry-date,
body.blog article time.entry-date {
    display: none !important;
}

/* Excerpt beneath the metadata. */
body.archive article .entry-summary,
body.category article .entry-summary,
body.search article .entry-summary,
body.blog article .entry-summary,
body.archive article .entry-content,
body.category article .entry-content,
body.archive article .post-excerpt,
body.category article .post-excerpt {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.6 !important;
    white-space: normal !important;
}

/* Historical Limerick Archives dateline. */
body.archive .historical-dateline,
body.category .historical-dateline,
body.search .historical-dateline,
body.blog .historical-dateline {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    color: #2F7D3B !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

/* Forced line break after the historical date. */
body.archive br.historical-date-break,
body.category br.historical-date-break,
body.search br.historical-date-break,
body.blog br.historical-date-break {
    display: block !important;
    clear: both !important;
    content: "" !important;
    margin: 0 !important;
}

/* Opening LIMERICK dateline. */
body.archive .historical-opening,
body.category .historical-opening,
body.search .historical-opening,
body.blog .historical-opening {
    display: inline !important;
    font-weight: 700 !important;
}

/* Prevent paragraph spacing from collapsing. */
body.archive article .entry-summary p,
body.category article .entry-summary p,
body.search article .entry-summary p,
body.blog article .entry-summary p,
body.archive article .entry-content p,
body.category article .entry-content p {
    display: block !important;
    clear: both !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
}

/* Read More on its own line. */
body.archive article .read-more,
body.category article .read-more,
body.search article .read-more,
body.blog article .read-more,
body.archive article .aft-readmore-wrapper,
body.category article .aft-readmore-wrapper,
body.archive article a.more-link,
body.category article a.more-link {
    display: block !important;
    clear: both !important;
    width: fit-content !important;
    margin-top: 12px !important;
}

/* Mobile refinements. */
@media screen and (max-width: 768px) {
    body.archive article .entry-title,
    body.category article .entry-title,
    body.search article .entry-title,
    body.blog article .entry-title {
        margin-bottom: 7px !important;
    }

    body.archive article .entry-meta,
    body.category article .entry-meta,
    body.search article .entry-meta,
    body.blog article .entry-meta {
        margin-bottom: 9px !important;
    }

    body.archive .historical-dateline,
    body.category .historical-dateline,
    body.search .historical-dateline,
    body.blog .historical-dateline {
        margin-bottom: 7px !important;
    }
}

/* =========================================================
   READ ARTICLE / READ MORE LINK — FINAL OVERRIDE
   ========================================================= */

html body .site-main article .aft-readmore-wrapper,
html body .site-main article .aft-readmore-wrapper a,
html body .site-main article a.aft-readmore,
html body .site-main article .read-more,
html body .site-main article a.more-link,
html body .site-main article .read-more-link,
html body .site-main .post-description .aft-readmore-wrapper,
html body .site-main .post-description .aft-readmore {
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

html body .site-main article .aft-readmore-wrapper {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    margin: 16px 0 0 !important;
    text-align: center !important;
}

html body .site-main article .aft-readmore-wrapper a.aft-readmore,
html body .site-main article a.aft-readmore {
    display: inline-block !important;
    width: auto !important;
    min-height: 44px !important;
    padding: 8px 16px !important;
    color: #111111 !important;
    background: #ffffff !important;
    border: 2px solid #2F7D3B !important;
    text-decoration: none !important;
}

html body .site-main article .aft-readmore-wrapper a.aft-readmore:hover,
html body .site-main article .aft-readmore-wrapper a.aft-readmore:focus,
html body .site-main article a.aft-readmore:hover,
html body .site-main article a.aft-readmore:focus {
    color: #111111 !important;
    background: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

/* Preserve screen-reader-only text without enlarging or displaying it. */
html body .site-main article .aft-readmore-wrapper .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    font-size: 1px !important;
}

/* =========================================================
   HOMEPAGE OPENING PARAGRAPHS — 16PT AND JUSTIFIED
   Targets the exact CoverNews description wrapper.
   ========================================================= */

html body.home .site-main .full-item-discription,
html body.home .site-main .full-item-discription .post-description,
html body.home .site-main .full-item-discription .post-description > p,

html body.front-page .site-main .full-item-discription,
html body.front-page .site-main .full-item-discription .post-description,
html body.front-page .site-main .full-item-discription .post-description > p,

html body.page-id-76725 .site-main .full-item-discription,
html body.page-id-76725 .site-main .full-item-discription .post-description,
html body.page-id-76725 .site-main .full-item-discription .post-description > p {
    font-size: 16pt !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;
    text-align: justify !important;
    text-justify: inter-word !important;
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* Keep the Read Article button at its larger size. */

html body.home .site-main .full-item-discription .aft-readmore-wrapper,
html body.home .site-main .full-item-discription .aft-readmore,
html body.front-page .site-main .full-item-discription .aft-readmore-wrapper,
html body.front-page .site-main .full-item-discription .aft-readmore,
html body.page-id-76725 .site-main .full-item-discription .aft-readmore-wrapper,
html body.page-id-76725 .site-main .full-item-discription .aft-readmore {
    font-size: 22px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

/* =========================================================
   SITE-WIDE CONTENT WIDTH — FINAL OVERRIDE
   Widens all main content areas, including individual posts,
   pages, archives, categories and search results.
   ========================================================= */

html body .site-content,
html body .content-area,
html body .site-main,
html body .main-content,
html body .content-wrapper,

html body.single-post .site-content,
html body.single-post .content-area,
html body.single-post .site-main,
html body.single-post article,

html body.page .site-content,
html body.page .content-area,
html body.page .site-main,

html body.archive .site-content,
html body.archive .content-area,
html body.archive .site-main,

html body.category .site-content,
html body.category .content-area,
html body.category .site-main,

html body.tag .site-content,
html body.tag .content-area,
html body.tag .site-main,

html body.author .site-content,
html body.author .content-area,
html body.author .site-main,

html body.date .site-content,
html body.date .content-area,
html body.date .site-main,

html body.search .site-content,
html body.search .content-area,
html body.search .site-main {
    width: 96% !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Keep individual post sections centred inside the wider layout. */

html body.single-post .entry-header,
html body.single-post .entry-content{
    width: 100% !important;
    max-width: 1600px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Preserve comfortable margins on tablets and phones. */

@media screen and (max-width: 768px) {

    html body .site-content,
    html body .content-area,
    html body .site-main,
    html body .main-content,
    html body .content-wrapper,
    html body.single-post article {
        width: 94% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* =========================================================
   CATEGORY AND ARCHIVE PAGES — ONE COLUMN
   Applies to category, subcategory, tag, author, date
   and search-result listing pages.
   ========================================================= */

body.category .archive-layout,
body.category .posts-container,
body.category .site-main .row,
body.archive .archive-layout,
body.archive .posts-container,
body.archive .site-main .row,
body.tag .archive-layout,
body.tag .posts-container,
body.tag .site-main .row,
body.author .archive-layout,
body.author .posts-container,
body.author .site-main .row,
body.date .archive-layout,
body.date .posts-container,
body.date .site-main .row,
body.search .archive-layout,
body.search .posts-container,
body.search .site-main .row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Force every archive story tile to occupy a full row. */

body.category article,
body.category .archive-layout article,
body.category .posts-container article,
body.category .site-main .col-md-3,
body.category .site-main .col-md-4,
body.category .site-main .col-md-6,
body.category .site-main .col-lg-3,
body.category .site-main .col-lg-4,
body.category .site-main .col-lg-6,

body.archive article,
body.archive .archive-layout article,
body.archive .posts-container article,
body.archive .site-main .col-md-3,
body.archive .site-main .col-md-4,
body.archive .site-main .col-md-6,
body.archive .site-main .col-lg-3,
body.archive .site-main .col-lg-4,
body.archive .site-main .col-lg-6,

body.tag article,
body.author article,
body.date article,
body.search article {
    float: none !important;
    clear: both !important;

    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 36px !important;
}

/* Keep each story contained and prevent visual overlap. */

body.category article,
body.archive article,
body.tag article,
body.author article,
body.date article,
body.search article {
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Allow images and text to remain within the full-width tile. */

body.category article img,
body.archive article img,
body.tag article img,
body.author article img,
body.date article img,
body.search article img {
    max-width: 100% !important;
    height: auto !important;
}

/* Remove theme floats that can cause archive tiles to collide. */

body.category .archive-image,
body.category .post-thumbnail,
body.category .entry-content,
body.category .post-description,
body.archive .archive-image,
body.archive .post-thumbnail,
body.archive .entry-content,
body.archive .post-description,
body.tag .archive-image,
body.tag .post-thumbnail,
body.author .archive-image,
body.author .post-thumbnail,
body.date .archive-image,
body.date .post-thumbnail,
body.search .archive-image,
body.search .post-thumbnail {
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Maintain one-column layout on every screen size. */

@media screen and (max-width: 1200px) {
    body.category article,
    body.archive article,
    body.tag article,
    body.author article,
    body.date article,
    body.search article {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
}

/* =========================================================
   ARCHIVE IMAGES — MATCH HOMEPAGE SIZE
   Centres category and archive feeds at the same 750px
   maximum width used by the homepage.
   ========================================================= */

body.category .content-area,
body.category .site-main,
body.archive .content-area,
body.archive .site-main,
body.tag .content-area,
body.tag .site-main,
body.author .content-area,
body.author .site-main,
body.date .content-area,
body.date .site-main,
body.search .content-area,
body.search .site-main {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.category .site-main article,
body.category .site-main .read-single,
body.category .site-main .list-style,
body.category .site-main .grid-item,
body.archive .site-main article,
body.archive .site-main .read-single,
body.archive .site-main .list-style,
body.archive .site-main .grid-item,
body.tag .site-main article,
body.author .site-main article,
body.date .site-main article,
body.search .site-main article {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    clear: both !important;
}

/* Match the homepage featured-image container. */

body.category .site-main article .post-thumbnail,
body.category .site-main article .featured-image,
body.category .site-main article .read-img,
body.category .site-main article figure,
body.archive .site-main article .post-thumbnail,
body.archive .site-main article .featured-image,
body.archive .site-main article .read-img,
body.archive .site-main article figure,
body.tag .site-main article .post-thumbnail,
body.author .site-main article .post-thumbnail,
body.date .site-main article .post-thumbnail,
body.search .site-main article .post-thumbnail {
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 0 14px !important;
    overflow: hidden !important;
}

/* Match the homepage image dimensions and crop. */

body.category .site-main article .post-thumbnail img,
body.category .site-main article .featured-image img,
body.category .site-main article .read-img img,
body.category .site-main article figure img,
body.archive .site-main article .post-thumbnail img,
body.archive .site-main article .featured-image img,
body.archive .site-main article .read-img img,
body.archive .site-main article figure img,
body.tag .site-main article .post-thumbnail img,
body.author .site-main article .post-thumbnail img,
body.date .site-main article .post-thumbnail img,
body.search .site-main article .post-thumbnail img {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    aspect-ratio: 300 / 157 !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
}

/* Keep archive headings and pagination aligned with the feed. */

body.category .page-header,
body.category .archive-header,
body.category .navigation,
body.category .pagination,
body.archive .page-header,
body.archive .archive-header,
body.archive .navigation,
body.archive .pagination,
body.tag .page-header,
body.author .page-header,
body.date .page-header,
body.search .page-header {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Responsive width on smaller screens. */

@media screen and (max-width: 800px) {
    body.category .site-main article,
    body.archive .site-main article,
    body.tag .site-main article,
    body.author .site-main article,
    body.date .site-main article,
    body.search .site-main article,
    body.category .page-header,
    body.archive .page-header,
    body.tag .page-header,
    body.author .page-header,
    body.date .page-header,
    body.search .page-header {
        width: 94% !important;
        max-width: 750px !important;
    }
}

/* =========================================================
   CATEGORY PAGES — HIDE TOP TITLE AND INTRO TEXT
   Final override for category and subcategory archive pages.
   ========================================================= */

body.category .page-header,
body.category .archive-header,
body.category .archive-title,
body.category .page-title,
body.category .taxonomy-description,
body.category .archive-description,
body.category .category-description,
body.category .page-header p,
body.category .archive-header p {
    display: none !important;
}

/* Remove any empty space left behind. */

body.category .page-header,
body.category .archive-header {
    margin: 0 !important;
    padding: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* Prevent surrounding category-header wrappers from retaining spacing. */

body.category .site-main > .page-header,
body.category .site-main > .archive-header,
body.category .content-area > .page-header,
body.category .content-area > .archive-header {
    margin: 0 !important;
    padding: 0 !important;
}

/* =========================================================
   CATEGORY PAGE CONTENT ALIGNMENT — FINAL OVERRIDE
   Centres article titles and author details.
   Justifies article excerpt text.
   ========================================================= */

/* Centre story titles on category and subcategory pages. */

body.category .site-main article .entry-title,
body.category .site-main article .entry-title a,
body.category .site-main article .post-title,
body.category .site-main article .post-title a,
body.category .site-main article h2,
body.category .site-main article h2 a,
body.category .site-main article h3,
body.category .site-main article h3 a {
    text-align: center !important;
}

/* Centre author and post-meta information. */

body.category .site-main article .entry-meta,
body.category .site-main article .post-meta,
body.category .site-main article .author-links,
body.category .site-main article .author-name,
body.category .site-main article .byline,
body.category .site-main article .aft-post-excerpt-and-meta,
body.category .site-main article .aft-post-excerpt-and-meta .entry-meta {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
}

/* Ensure links and inline author elements inherit the centred alignment. */

body.category .site-main article .entry-meta a,
body.category .site-main article .post-meta a,
body.category .site-main article .author-links a,
body.category .site-main article .author-name a,
body.category .site-main article .byline a {
    text-align: center !important;
}

/* Justify the story excerpt and opening paragraph text. */

body.category .site-main article .entry-content,
body.category .site-main article .entry-summary,
body.category .site-main article .post-description,
body.category .site-main article .full-item-discription,
body.category .site-main article .full-item-discription p,
body.category .site-main article .post-description p,
body.category .site-main article .entry-summary p,
body.category .site-main article .entry-content p {
    text-align: justify !important;
    text-justify: inter-word !important;
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* =========================================================
   CATEGORY PAGE POST SEPARATORS — FINAL OVERRIDE
   Adds a clear divider between posts on category and
   subcategory archive pages.
   ========================================================= */

body.category .site-main article {
    position: relative !important;
    margin-bottom: 42px !important;
    padding-bottom: 42px !important;
    border-bottom: 2px solid #2F7D3B !important;
}

/* Remove the separator after the final visible post. */

body.category .site-main article:last-of-type {
    border-bottom: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Keep separators aligned with the 750px archive width. */

body.category .site-main article::after {
    content: none !important;
}

/* Slightly reduce spacing on phones. */

@media screen and (max-width: 768px) {
    body.category .site-main article {
        margin-bottom: 30px !important;
        padding-bottom: 30px !important;
    }
}

/* =========================================================
   FINAL APPROVED OVERRIDES
   ========================================================= */


/* =========================================================
   HOMEPAGE — ONE-COLUMN LAYOUT AT ALL SCREEN SIZES
   Overrides the original four-column and tablet rules.
   ========================================================= */

body.home .site-main .af-container-row,
body.home .site-main .aft-archive-wrapper,
body.home .site-main .archive-posts,
body.home .site-main .posts-wrapper,
body.home .site-main .posts-wrap,
body.home .site-main .content-list,
body.home .site-main .row:has(> article),
body.home .site-main *:has(> article.post),
body.home .site-main *:has(> .read-single),
body.home .site-main *:has(> .grid-item),
body.front-page .site-main .af-container-row,
body.front-page .site-main .aft-archive-wrapper,
body.front-page .site-main .archive-posts,
body.front-page .site-main .posts-wrapper,
body.front-page .site-main .posts-wrap,
body.front-page .site-main .content-list,
body.front-page .site-main .row:has(> article),
body.front-page .site-main *:has(> article.post),
body.front-page .site-main *:has(> .read-single),
body.front-page .site-main *:has(> .grid-item),
body.page-id-76725 .site-main .af-container-row,
body.page-id-76725 .site-main .aft-archive-wrapper,
body.page-id-76725 .site-main .archive-posts,
body.page-id-76725 .site-main .posts-wrapper,
body.page-id-76725 .site-main .posts-wrap,
body.page-id-76725 .site-main .content-list,
body.page-id-76725 .site-main .row:has(> article),
body.page-id-76725 .site-main *:has(> article.post),
body.page-id-76725 .site-main *:has(> .read-single),
body.page-id-76725 .site-main *:has(> .grid-item) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 30px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* Keep homepage cards in one centred reading column. */

body.home .site-main article,
body.home .site-main .read-single,
body.home .site-main .list-style,
body.home .site-main .grid-item,
body.front-page .site-main article,
body.front-page .site-main .read-single,
body.front-page .site-main .list-style,
body.front-page .site-main .grid-item,
body.page-id-76725 .site-main article,
body.page-id-76725 .site-main .read-single,
body.page-id-76725 .site-main .list-style,
body.page-id-76725 .site-main .grid-item {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   STANDARD PAGES — 750PX NARROW CENTRED LAYOUT
   Homepage and front page remain controlled separately.
   ========================================================= */

body.page:not(.home):not(.front-page) .content-area,
body.page:not(.home):not(.front-page) .site-main,
body.page:not(.home):not(.front-page) article,
body.page:not(.home):not(.front-page) .entry-header,
body.page:not(.home):not(.front-page) .entry-content{
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    box-sizing: border-box !important;
}

body.page:not(.home):not(.front-page) #secondary,
body.page:not(.home):not(.front-page) #secondary.widget-area,
body.page:not(.home):not(.front-page) aside.sidebar {
    display: none !important;
}

body.page:not(.home):not(.front-page) .entry-content {
    padding-left: 24px !important;
    padding-right: 24px !important;
}

body.page:not(.home):not(.front-page) .entry-content img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* =========================================================
   CATEGORY PAGES — HIDE TOP TITLE AND INTRODUCTORY TEXT
   ========================================================= */

body.category .page-header,
body.category .archive-header,
body.category header.page-header,
body.category header.archive-header,
body.category .archive-page-header,
body.category .taxonomy-header,
body.category .category-header,
body.category .site-main > .page-title,
body.category .site-main > .archive-title,
body.category .site-main > .category-title,
body.category .site-main > .taxonomy-description,
body.category .site-main > .archive-description,
body.category .site-main > .category-description,
body.category .content-area > .page-title,
body.category .content-area > .archive-title,
body.category .content-area > .category-title,
body.category .content-area > .taxonomy-description,
body.category .content-area > .archive-description,
body.category .content-area > .category-description {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
}

body.category .site-main,
body.category .content-area {
    padding-top: 0 !important;
}

body.category .site-main > :first-child,
body.category .content-area > :first-child {
    margin-top: 0 !important;
}


/* =========================================================
   INDIVIDUAL POSTS — PRIMARY SOURCES HEADING
   Automatically appears above the final ordered list.
   ========================================================= */

body.single-post .entry-content > ol:last-of-type::before {
    content: "PRIMARY SOURCES";
    display: block !important;
    width: 100% !important;
    margin: 32px 0 18px !important;
    padding: 12px 0 10px !important;
    color: #2F7D3B !important;
    border-top: 2px solid #2F7D3B !important;
    border-bottom: 1px solid #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
}


/* =========================================================
   MOBILE REFINEMENTS FOR NARROW PAGES AND HOMEPAGE
   ========================================================= */

@media screen and (max-width: 768px) {

    body.page:not(.home):not(.front-page) .content-area,
body.page:not(.home):not(.front-page) .site-main,
body.page:not(.home):not(.front-page) article,
body.page:not(.home):not(.front-page) .entry-header,
body.page:not(.home):not(.front-page) .entry-content,
body.home .site-main article,
body.home .site-main .read-single,
body.home .site-main .list-style,
body.home .site-main .grid-item,
body.front-page .site-main article,
body.front-page .site-main .read-single,
body.front-page .site-main .list-style,
body.front-page .site-main .grid-item,
body.page-id-76725 .site-main article,
body.page-id-76725 .site-main .read-single,
body.page-id-76725 .site-main .list-style,
body.page-id-76725 .site-main .grid-item{
        max-width: 100% !important;
    }

    body.page:not(.home):not(.front-page) .entry-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }
}

body.tag .site-main article .post-thumbnail,
body.tag .site-main article .featured-image,
body.tag .site-main article .read-img,
body.tag .site-main article figure {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

body.tag .site-main article .post-thumbnail a,
body.tag .site-main article .featured-image a,
body.tag .site-main article .read-img a,
body.tag .site-main article figure a {
    display: inline-block !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.tag .site-main article .post-thumbnail img,
body.tag .site-main article .featured-image img,
body.tag .site-main article .read-img img,
body.tag .site-main article figure img {
    display: block !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.tag .page-header,
body.tag .archive-header,
body.tag .archive-title,
body.tag .page-title,
body.tag .taxonomy-description,
body.tag .archive-description {
    display: none !important;
}

/* =========================================================
   TAG ARCHIVE POSTS — TITLE, AUTHOR AND EXCERPT ALIGNMENT
   Matches the homepage presentation.
   ========================================================= */

/* Centre each post title on tag archive pages. */

body.tag .site-main article .entry-title,
body.tag .site-main article .entry-title a,
body.tag .site-main article h2,
body.tag .site-main article h2 a,
body.tag .site-main article h3,
body.tag .site-main article h3 a {
    text-align: center !important;
}


/* Centre the author and post metadata. */

body.tag .site-main article .entry-meta,
body.tag .site-main article .entry-meta a,
body.tag .site-main article .author-links,
body.tag .site-main article .author-name,
body.tag .site-main article .post-author,
body.tag .site-main article .byline {
    text-align: center !important;
}


/* Justify the post excerpt and summary text. */

body.tag .site-main article .entry-summary,
body.tag .site-main article .entry-summary p,
body.tag .site-main article .entry-content,
body.tag .site-main article .entry-content p,
body.tag .site-main article .post-excerpt,
body.tag .site-main article .post-excerpt p {
    text-align: justify !important;
    text-justify: inter-word !important;
}

/* =========================================================
   TAG ARCHIVE POSTS — FORCE AUTHOR/METADATA CENTRED
   ========================================================= */

body.tag .site-main article .entry-meta,
body.tag .site-main article .post-item-metadata,
body.tag .site-main article .post-item-metadata ul,
body.tag .site-main article .post-item-metadata li,
body.tag .site-main article .aft-comment-view-share,
body.tag .site-main article .author-links,
body.tag .site-main article .byline {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
}

body.tag .site-main article .entry-meta *,
body.tag .site-main article .post-item-metadata *,
body.tag .site-main article .author-links *,
body.tag .site-main article .byline * {
    text-align: center !important;
}

body.tag .site-main article .entry-meta a,
body.tag .site-main article .post-item-metadata a,
body.tag .site-main article .author-links a,
body.tag .site-main article .byline a {
    display: inline-block !important;
    float: none !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

/* =========================================================
   UNIFORM POST EXCERPT TYPOGRAPHY AND SPACING — ENTIRE SITE
   Matches the homepage preview text measurements:
   font-size: clamp(16px, 1.1vw, 18px)
   line-height: 1.55
   outer margin: 8px auto 14px
   ========================================================= */

/* Apply homepage excerpt measurements to all post summaries. */

.site-main article .entry-summary,
.site-main article .post-excerpt,
.site-main article .aft-post-excerpt,
.site-main article .article-excerpt,
.site-main article .archive-excerpt,
.site-main article .aft-post-excerpt-and-meta {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 8px auto 14px !important;
    padding: 0 !important;

    font-size: clamp(16px, 1.1vw, 18px) !important;
    line-height: 1.55 !important;

    box-sizing: border-box !important;
}


/* Apply the same measurements to paragraphs inside summaries. */

.site-main article .entry-summary p,
.site-main article .post-excerpt p,
.site-main article .aft-post-excerpt p,
.site-main article .article-excerpt p,
.site-main article .archive-excerpt p,
.site-main article .aft-post-excerpt-and-meta p {
    font-size: inherit !important;
    line-height: inherit !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding: 0 !important;
}


/*
 * Some archive templates output preview text through .entry-content
 * rather than a dedicated excerpt container. Apply the same sizing
 * only on listing pages, leaving individual post/page content intact.
 */

body.home .site-main article .entry-content,
body.front-page .site-main article .entry-content,
body.blog .site-main article .entry-content,
body.archive .site-main article .entry-content,
body.category .site-main article .entry-content,
body.tag .site-main article .entry-content,
body.search .site-main article .entry-content,
body.author .site-main article .entry-content,
body.date .site-main article .entry-content {
    margin: 8px auto 14px !important;
    padding: 0 !important;

    font-size: clamp(16px, 1.1vw, 18px) !important;
    line-height: 1.55 !important;
}


/* Keep listing-page preview paragraphs consistent. */

body.home .site-main article .entry-content p,
body.front-page .site-main article .entry-content p,
body.blog .site-main article .entry-content p,
body.archive .site-main article .entry-content p,
body.category .site-main article .entry-content p,
body.tag .site-main article .entry-content p,
body.search .site-main article .entry-content p,
body.author .site-main article .entry-content p,
body.date .site-main article .entry-content p {
    font-size: inherit !important;
    line-height: inherit !important;

    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;

    padding: 0 !important;
}

/* =========================================================
   HOMEPAGE POST STYLE — ALL POST LISTING PAGES
   Applies the homepage visual treatment to:
   blog, category, tag, search, author and date archives.
   Individual posts and ordinary page content remain intact.
   ========================================================= */

/* Listing-page post cards use the same structure and spacing. */

body.blog .site-main article,
body.archive .site-main article,
body.category .site-main article,
body.tag .site-main article,
body.search .site-main article,
body.author .site-main article,
body.date .site-main article {
    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 750px !important;
    height: auto !important;

    margin: 0 auto 30px !important;
    padding: 0 0 24px !important;

    float: none !important;
    clear: both !important;

    border-bottom: 2px solid #2F7D3B !important;

    text-align: center !important;
    box-sizing: border-box !important;
}


/* Remove inherited Bootstrap widths from listing cards. */

body.blog .site-main article[class*="col-"],
body.archive .site-main article[class*="col-"],
body.category .site-main article[class*="col-"],
body.tag .site-main article[class*="col-"],
body.search .site-main article[class*="col-"],
body.author .site-main article[class*="col-"],
body.date .site-main article[class*="col-"] {
    width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    float: none !important;
}


/* Post images match the homepage dimensions and spacing. */

body.blog .site-main article .post-thumbnail,
body.blog .site-main article .featured-image,
body.blog .site-main article .read-img,
body.blog .site-main article figure,
body.archive .site-main article .post-thumbnail,
body.archive .site-main article .featured-image,
body.archive .site-main article .read-img,
body.archive .site-main article figure,
body.category .site-main article .post-thumbnail,
body.category .site-main article .featured-image,
body.category .site-main article .read-img,
body.category .site-main article figure,
body.tag .site-main article .post-thumbnail,
body.tag .site-main article .featured-image,
body.tag .site-main article .read-img,
body.tag .site-main article figure,
body.search .site-main article .post-thumbnail,
body.search .site-main article .featured-image,
body.search .site-main article .read-img,
body.search .site-main article figure,
body.author .site-main article .post-thumbnail,
body.author .site-main article .featured-image,
body.author .site-main article .read-img,
body.author .site-main article figure,
body.date .site-main article .post-thumbnail,
body.date .site-main article .featured-image,
body.date .site-main article .read-img,
body.date .site-main article figure {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto 14px !important;
    padding: 0 !important;

    text-align: center !important;
    overflow: hidden !important;
}


body.blog .site-main article .post-thumbnail img,
body.blog .site-main article .featured-image img,
body.blog .site-main article .read-img img,
body.blog .site-main article figure img,
body.archive .site-main article .post-thumbnail img,
body.archive .site-main article .featured-image img,
body.archive .site-main article .read-img img,
body.archive .site-main article figure img,
body.category .site-main article .post-thumbnail img,
body.category .site-main article .featured-image img,
body.category .site-main article .read-img img,
body.category .site-main article figure img,
body.tag .site-main article .post-thumbnail img,
body.tag .site-main article .featured-image img,
body.tag .site-main article .read-img img,
body.tag .site-main article figure img,
body.search .site-main article .post-thumbnail img,
body.search .site-main article .featured-image img,
body.search .site-main article .read-img img,
body.search .site-main article figure img,
body.author .site-main article .post-thumbnail img,
body.author .site-main article .featured-image img,
body.author .site-main article .read-img img,
body.author .site-main article figure img,
body.date .site-main article .post-thumbnail img,
body.date .site-main article .featured-image img,
body.date .site-main article .read-img img,
body.date .site-main article figure img {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 300 / 157 !important;

    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center !important;
}


/* Titles match the homepage typography. */

body.blog .site-main article .entry-title,
body.blog .site-main article .entry-title a,
body.archive .site-main article .entry-title,
body.archive .site-main article .entry-title a,
body.category .site-main article .entry-title,
body.category .site-main article .entry-title a,
body.tag .site-main article .entry-title,
body.tag .site-main article .entry-title a,
body.search .site-main article .entry-title,
body.search .site-main article .entry-title a,
body.author .site-main article .entry-title,
body.author .site-main article .entry-title a,
body.date .site-main article .entry-title,
body.date .site-main article .entry-title a {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 7px auto 10px !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
}


/* Author and metadata match the centred homepage treatment. */

body.blog .site-main article .entry-meta,
body.blog .site-main article .post-item-metadata,
body.archive .site-main article .entry-meta,
body.archive .site-main article .post-item-metadata,
body.category .site-main article .entry-meta,
body.category .site-main article .post-item-metadata,
body.tag .site-main article .entry-meta,
body.tag .site-main article .post-item-metadata,
body.search .site-main article .entry-meta,
body.search .site-main article .post-item-metadata,
body.author .site-main article .entry-meta,
body.author .site-main article .post-item-metadata,
body.date .site-main article .entry-meta,
body.date .site-main article .post-item-metadata {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto 8px !important;
    padding: 0 !important;

    text-align: center !important;
}


body.blog .site-main article .entry-meta *,
body.blog .site-main article .post-item-metadata *,
body.archive .site-main article .entry-meta *,
body.archive .site-main article .post-item-metadata *,
body.category .site-main article .entry-meta *,
body.category .site-main article .post-item-metadata *,
body.tag .site-main article .entry-meta *,
body.tag .site-main article .post-item-metadata *,
body.search .site-main article .entry-meta *,
body.search .site-main article .post-item-metadata *,
body.author .site-main article .entry-meta *,
body.author .site-main article .post-item-metadata *,
body.date .site-main article .entry-meta *,
body.date .site-main article .post-item-metadata * {
    text-align: center !important;
}


/* Excerpts match homepage font, width, spacing and justification. */

body.blog .site-main article .entry-summary,
body.blog .site-main article .post-excerpt,
body.blog .site-main article .aft-post-excerpt,
body.blog .site-main article .article-excerpt,
body.blog .site-main article .archive-excerpt,
body.archive .site-main article .entry-summary,
body.archive .site-main article .post-excerpt,
body.archive .site-main article .aft-post-excerpt,
body.archive .site-main article .article-excerpt,
body.archive .site-main article .archive-excerpt,
body.category .site-main article .entry-summary,
body.category .site-main article .post-excerpt,
body.category .site-main article .aft-post-excerpt,
body.category .site-main article .article-excerpt,
body.category .site-main article .archive-excerpt,
body.tag .site-main article .entry-summary,
body.tag .site-main article .post-excerpt,
body.tag .site-main article .aft-post-excerpt,
body.tag .site-main article .article-excerpt,
body.tag .site-main article .archive-excerpt,
body.search .site-main article .entry-summary,
body.search .site-main article .post-excerpt,
body.search .site-main article .aft-post-excerpt,
body.search .site-main article .article-excerpt,
body.search .site-main article .archive-excerpt,
body.author .site-main article .entry-summary,
body.author .site-main article .post-excerpt,
body.author .site-main article .aft-post-excerpt,
body.author .site-main article .article-excerpt,
body.author .site-main article .archive-excerpt,
body.date .site-main article .entry-summary,
body.date .site-main article .post-excerpt,
body.date .site-main article .aft-post-excerpt,
body.date .site-main article .article-excerpt,
body.date .site-main article .archive-excerpt {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 8px auto 14px !important;
    padding: 0 !important;

    font-size: clamp(16px, 1.1vw, 18px) !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-justify: inter-word !important;
}


/* Paragraphs inside excerpts inherit the homepage measurements. */

body.blog .site-main article .entry-summary p,
body.blog .site-main article .post-excerpt p,
body.archive .site-main article .entry-summary p,
body.archive .site-main article .post-excerpt p,
body.category .site-main article .entry-summary p,
body.category .site-main article .post-excerpt p,
body.tag .site-main article .entry-summary p,
body.tag .site-main article .post-excerpt p,
body.search .site-main article .entry-summary p,
body.search .site-main article .post-excerpt p,
body.author .site-main article .entry-summary p,
body.author .site-main article .post-excerpt p,
body.date .site-main article .entry-summary p,
body.date .site-main article .post-excerpt p {
    margin: 0 !important;
    padding: 0 !important;

    font-size: inherit !important;
    line-height: inherit !important;

    text-align: justify !important;
    text-justify: inter-word !important;
}


/* Keep Read More centred beneath each summary. */

body.blog .site-main article .more-link,
body.blog .site-main article .read-more,
body.blog .site-main article .read-more-link,
body.archive .site-main article .more-link,
body.archive .site-main article .read-more,
body.archive .site-main article .read-more-link,
body.category .site-main article .more-link,
body.category .site-main article .read-more,
body.category .site-main article .read-more-link,
body.tag .site-main article .more-link,
body.tag .site-main article .read-more,
body.tag .site-main article .read-more-link,
body.search .site-main article .more-link,
body.search .site-main article .read-more,
body.search .site-main article .read-more-link,
body.author .site-main article .more-link,
body.author .site-main article .read-more,
body.author .site-main article .read-more-link,
body.date .site-main article .more-link,
body.date .site-main article .read-more,
body.date .site-main article .read-more-link {
    display: inline-block !important;
    align-self: center !important;

    width: auto !important;

    margin: auto auto 0 !important;

    text-align: center !important;
}


/* Generated listing pages use the same centred 750px content column. */

body.blog .content-area,
body.blog .site-main,
body.archive .content-area,
body.archive .site-main,
body.category .content-area,
body.category .site-main,
body.tag .content-area,
body.tag .site-main,
body.search .content-area,
body.search .site-main,
body.author .content-area,
body.author .site-main,
body.date .content-area,
body.date .site-main {
    width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;
}


/* Mobile spacing remains comfortable and consistent. */

@media screen and (max-width: 768px) {

    body.blog .site-main article,
    body.archive .site-main article,
    body.category .site-main article,
    body.tag .site-main article,
    body.search .site-main article,
    body.author .site-main article,
    body.date .site-main article {
        max-width: 100% !important;
        margin-bottom: 24px !important;
        padding-bottom: 20px !important;
    }

    body.blog .site-main article .entry-title,
    body.blog .site-main article .entry-title a,
    body.archive .site-main article .entry-title,
    body.archive .site-main article .entry-title a,
    body.category .site-main article .entry-title,
    body.category .site-main article .entry-title a,
    body.tag .site-main article .entry-title,
    body.tag .site-main article .entry-title a,
    body.search .site-main article .entry-title,
    body.search .site-main article .entry-title a,
    body.author .site-main article .entry-title,
    body.author .site-main article .entry-title a,
    body.date .site-main article .entry-title,
    body.date .site-main article .entry-title a {
        font-size: 17pt !important;
    }
}

/* =========================================================
   LISTING EXCERPTS — EXACT HOMEPAGE TEXT SIZE
   Forces nested archive excerpt text to the same 18px desktop
   size used by the homepage preview paragraph.
   ========================================================= */

body.blog .site-main article .entry-summary,
body.blog .site-main article .post-excerpt,
body.blog .site-main article .aft-post-excerpt,
body.blog .site-main article .article-excerpt,
body.blog .site-main article .archive-excerpt,
body.archive .site-main article .entry-summary,
body.archive .site-main article .post-excerpt,
body.archive .site-main article .aft-post-excerpt,
body.archive .site-main article .article-excerpt,
body.archive .site-main article .archive-excerpt,
body.category .site-main article .entry-summary,
body.category .site-main article .post-excerpt,
body.category .site-main article .aft-post-excerpt,
body.category .site-main article .article-excerpt,
body.category .site-main article .archive-excerpt,
body.tag .site-main article .entry-summary,
body.tag .site-main article .post-excerpt,
body.tag .site-main article .aft-post-excerpt,
body.tag .site-main article .article-excerpt,
body.tag .site-main article .archive-excerpt,
body.search .site-main article .entry-summary,
body.search .site-main article .post-excerpt,
body.search .site-main article .aft-post-excerpt,
body.search .site-main article .article-excerpt,
body.search .site-main article .archive-excerpt,
body.author .site-main article .entry-summary,
body.author .site-main article .post-excerpt,
body.author .site-main article .aft-post-excerpt,
body.author .site-main article .article-excerpt,
body.author .site-main article .archive-excerpt,
body.date .site-main article .entry-summary,
body.date .site-main article .post-excerpt,
body.date .site-main article .aft-post-excerpt,
body.date .site-main article .article-excerpt,
body.date .site-main article .archive-excerpt {
    font-size: 18px !important;
    line-height: 1.55 !important;
}


/* Override smaller theme sizes inside nested excerpt markup. */

body.blog .site-main article .entry-summary *,
body.blog .site-main article .post-excerpt *,
body.blog .site-main article .aft-post-excerpt *,
body.blog .site-main article .article-excerpt *,
body.blog .site-main article .archive-excerpt *,
body.archive .site-main article .entry-summary *,
body.archive .site-main article .post-excerpt *,
body.archive .site-main article .aft-post-excerpt *,
body.archive .site-main article .article-excerpt *,
body.archive .site-main article .archive-excerpt *,
body.category .site-main article .entry-summary *,
body.category .site-main article .post-excerpt *,
body.category .site-main article .aft-post-excerpt *,
body.category .site-main article .article-excerpt *,
body.category .site-main article .archive-excerpt *,
body.tag .site-main article .entry-summary *,
body.tag .site-main article .post-excerpt *,
body.tag .site-main article .aft-post-excerpt *,
body.tag .site-main article .article-excerpt *,
body.tag .site-main article .archive-excerpt *,
body.search .site-main article .entry-summary *,
body.search .site-main article .post-excerpt *,
body.search .site-main article .aft-post-excerpt *,
body.search .site-main article .article-excerpt *,
body.search .site-main article .archive-excerpt *,
body.author .site-main article .entry-summary *,
body.author .site-main article .post-excerpt *,
body.author .site-main article .aft-post-excerpt *,
body.author .site-main article .article-excerpt *,
body.author .site-main article .archive-excerpt *,
body.date .site-main article .entry-summary *,
body.date .site-main article .post-excerpt *,
body.date .site-main article .aft-post-excerpt *,
body.date .site-main article .article-excerpt *,
body.date .site-main article .archive-excerpt * {
    font-size: 18px !important;
    line-height: 1.55 !important;
}


/* Archive templates that use entry-content for the preview. */

body.blog .site-main article .entry-content,
body.archive .site-main article .entry-content,
body.category .site-main article .entry-content,
body.tag .site-main article .entry-content,
body.search .site-main article .entry-content,
body.author .site-main article .entry-content,
body.date .site-main article .entry-content,
body.blog .site-main article .entry-content *,
body.archive .site-main article .entry-content *,
body.category .site-main article .entry-content *,
body.tag .site-main article .entry-content *,
body.search .site-main article .entry-content *,
body.author .site-main article .entry-content *,
body.date .site-main article .entry-content * {
    font-size: 18px !important;
    line-height: 1.55 !important;
}


/* Retain comfortable scaling on small phones. */

@media screen and (max-width: 480px) {

    body.blog .site-main article .entry-summary,
    body.archive .site-main article .entry-summary,
    body.category .site-main article .entry-summary,
    body.tag .site-main article .entry-summary,
    body.search .site-main article .entry-summary,
    body.author .site-main article .entry-summary,
    body.date .site-main article .entry-summary,
    body.blog .site-main article .post-excerpt,
    body.archive .site-main article .post-excerpt,
    body.category .site-main article .post-excerpt,
    body.tag .site-main article .post-excerpt,
    body.search .site-main article .post-excerpt,
    body.author .site-main article .post-excerpt,
    body.date .site-main article .post-excerpt,
    body.blog .site-main article .entry-content,
    body.archive .site-main article .entry-content,
    body.category .site-main article .entry-content,
    body.tag .site-main article .entry-content,
    body.search .site-main article .entry-content,
    body.author .site-main article .entry-content,
    body.date .site-main article .entry-content {
        font-size: 16px !important;
    }
}

.site-main article .entry-summary,
.site-main article .post-excerpt,
.site-main article .aft-post-excerpt,
.site-main article .article-excerpt,
.site-main article .archive-excerpt,
.site-main article .aft-post-excerpt-and-meta,
body.blog .site-main article .entry-content,
body.archive .site-main article .entry-content,
body.category .site-main article .entry-content,
body.tag .site-main article .entry-content,
body.search .site-main article .entry-content,
body.author .site-main article .entry-content,
body.date .site-main article .entry-content {
    font-size: 16pt !important;
    line-height: 1.55 !important;
    text-align: center !important;
    text-justify: auto !important;
}


/* Override nested theme typography and alignment. */

.site-main article .entry-summary *,
.site-main article .post-excerpt *,
.site-main article .aft-post-excerpt *,
.site-main article .article-excerpt *,
.site-main article .archive-excerpt *,
.site-main article .aft-post-excerpt-and-meta *,
body.blog .site-main article .entry-content *,
body.archive .site-main article .entry-content *,
body.category .site-main article .entry-content *,
body.tag .site-main article .entry-content *,
body.search .site-main article .entry-content *,
body.author .site-main article .entry-content *,
body.date .site-main article .entry-content * {
    font-size: 16pt !important;
    line-height: 1.55 !important;
    text-align: center !important;
    text-justify: auto !important;
}


/* Keep excerpt spacing consistent throughout the site. */

.site-main article .entry-summary,
.site-main article .post-excerpt,
.site-main article .aft-post-excerpt,
.site-main article .article-excerpt,
.site-main article .archive-excerpt,
.site-main article .aft-post-excerpt-and-meta {
    width: 100% !important;
    max-width: 100% !important;

    margin: 8px auto 14px !important;
    padding: 0 !important;
}


/* Remove paragraph margins inside excerpts. */

.site-main article .entry-summary p,
.site-main article .post-excerpt p,
.site-main article .aft-post-excerpt p,
.site-main article .article-excerpt p,
.site-main article .archive-excerpt p,
.site-main article .aft-post-excerpt-and-meta p {
    margin: 0 !important;
    padding: 0 !important;
}

/* =========================================================
   SITE-WIDE EXCERPTS — 14PT, JUSTIFIED, IMAGE WIDTH
   ========================================================= */

.site-main article .entry-summary,
.site-main article .post-excerpt,
.site-main article .aft-post-excerpt,
.site-main article .article-excerpt,
.site-main article .archive-excerpt,
.site-main article .aft-post-excerpt-and-meta,
body.blog .site-main article .entry-content,
body.archive .site-main article .entry-content,
body.category .site-main article .entry-content,
body.tag .site-main article .entry-content,
body.search .site-main article .entry-content,
body.author .site-main article .entry-content,
body.date .site-main article .entry-content {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 8px auto 14px !important;
    padding: 0 !important;

    font-size: 16pt !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-justify: inter-word !important;

    box-sizing: border-box !important;
}


/* Force all nested excerpt text to inherit the same alignment and size. */

.site-main article .entry-summary *,
.site-main article .post-excerpt *,
.site-main article .aft-post-excerpt *,
.site-main article .article-excerpt *,
.site-main article .archive-excerpt *,
.site-main article .aft-post-excerpt-and-meta *,
body.blog .site-main article .entry-content *,
body.archive .site-main article .entry-content *,
body.category .site-main article .entry-content *,
body.tag .site-main article .entry-content *,
body.search .site-main article .entry-content *,
body.author .site-main article .entry-content *,
body.date .site-main article .entry-content * {
    font-size: 16pt !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-justify: inter-word !important;
}


/* Keep excerpt paragraphs flush with the image edges. */

.site-main article .entry-summary p,
.site-main article .post-excerpt p,
.site-main article .aft-post-excerpt p,
.site-main article .article-excerpt p,
.site-main article .archive-excerpt p,
.site-main article .aft-post-excerpt-and-meta p {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: justify !important;
    text-justify: inter-word !important;
}

/* =========================================================
   FINAL EXCERPT OVERRIDE — FORCE 16PT JUSTIFIED PARAGRAPHS
   Targets the actual paragraph output used by all listing
   templates, regardless of the surrounding theme class.
   Titles and author metadata are not affected.
   ========================================================= */

html body.home .site-main article p,
html body.front-page .site-main article p,
html body.blog .site-main article p,
html body.archive .site-main article p,
html body.category .site-main article p,
html body.tag .site-main article p,
html body.search .site-main article p,
html body.author .site-main article p,
html body.date .site-main article p {
    display: block !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 8px 0 14px !important;
    padding: 0 !important;

    font-size: 16pt !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;

    box-sizing: border-box !important;
}


/* CoverNews alternative excerpt wrappers. */

html body .site-main article .full-item-content,
html body .site-main article .full-item-content p,
html body .site-main article .post-description,
html body .site-main article .post-description p,
html body .site-main article .aft-post-excerpt-and-meta,
html body .site-main article .aft-post-excerpt-and-meta p,
html body .site-main article .aft-post-excerpt,
html body .site-main article .aft-post-excerpt p,
html body .site-main article .entry-summary,
html body .site-main article .entry-summary p,
html body .site-main article .post-excerpt,
html body .site-main article .post-excerpt p {
    width: 100% !important;
    max-width: 100% !important;

    font-size: 16pt !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}


/* Do not allow centred parent wrappers to recenter excerpt text. */

html body.home .site-main article .entry-content,
html body.front-page .site-main article .entry-content,
html body.blog .site-main article .entry-content,
html body.archive .site-main article .entry-content,
html body.category .site-main article .entry-content,
html body.tag .site-main article .entry-content,
html body.search .site-main article .entry-content,
html body.author .site-main article .entry-content,
html body.date .site-main article .entry-content {
    width: 100% !important;
    max-width: 100% !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}

/* =========================================================
   READ ARTICLE BUTTON — CENTRED ON ALL LISTING PAGES
   Keeps excerpt text justified and titles/authors centred.
   ========================================================= */

html body.home .site-main article .more-link,
html body.home .site-main article .read-more,
html body.home .site-main article .read-more-link,
html body.front-page .site-main article .more-link,
html body.front-page .site-main article .read-more,
html body.front-page .site-main article .read-more-link,
html body.blog .site-main article .more-link,
html body.blog .site-main article .read-more,
html body.blog .site-main article .read-more-link,
html body.archive .site-main article .more-link,
html body.archive .site-main article .read-more,
html body.archive .site-main article .read-more-link,
html body.category .site-main article .more-link,
html body.category .site-main article .read-more,
html body.category .site-main article .read-more-link,
html body.tag .site-main article .more-link,
html body.tag .site-main article .read-more,
html body.tag .site-main article .read-more-link,
html body.search .site-main article .more-link,
html body.search .site-main article .read-more,
html body.search .site-main article .read-more-link,
html body.author .site-main article .more-link,
html body.author .site-main article .read-more,
html body.author .site-main article .read-more-link,
html body.date .site-main article .more-link,
html body.date .site-main article .read-more,
html body.date .site-main article .read-more-link {
    display: table !important;

    width: auto !important;
    max-width: max-content !important;

    margin: 14px auto 0 !important;

    float: none !important;
    clear: both !important;

    text-align: center !important;
}


/* Centre wrappers used by CoverNews around the button. */

html body .site-main article .read-more-wrapper,
html body .site-main article .read-more-section,
html body .site-main article .read-more-btn,
html body .site-main article .aft-readmore-wrapper {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;
}

/* =========================================================
   FINAL READ ARTICLE CENTRING
   The theme outputs the button inside p.aft-readmore-wrapper.
   This must come after the site-wide justified paragraph rule.
   ========================================================= */

html body .site-main article p.aft-readmore-wrapper,
html body .site-main article .aft-readmore-wrapper,
html body .site-main .post-description p.aft-readmore-wrapper,
html body .site-main .full-item-discription p.aft-readmore-wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 16px auto 0 !important;
    padding: 0 !important;

    text-align: center !important;
    text-align-last: center !important;
    text-justify: auto !important;

    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

html body .site-main article p.aft-readmore-wrapper > a.aft-readmore,
html body .site-main article .aft-readmore-wrapper > a.aft-readmore,
html body .site-main .post-description p.aft-readmore-wrapper > a,
html body .site-main .full-item-discription p.aft-readmore-wrapper > a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    flex: 0 0 auto !important;

    width: auto !important;
    max-width: max-content !important;

    margin: 0 auto !important;
    padding: 8px 16px !important;

    float: none !important;
    clear: none !important;

    text-align: center !important;
    text-align-last: center !important;
}

/* =========================================================
   INDIVIDUAL POST PAGES — MATCH SITE-WIDE LISTING STYLE
   Centred title and author, centred featured image,
   16pt justified text aligned to the image width.
   ========================================================= */

/* Keep the complete post in the same centred 750px column. */

body.single-post .content-area,
body.single-post .site-main,
body.single-post .site-main article,
body.single-post .site-main article .entry-content {
    width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    box-sizing: border-box !important;
}


/* Centre the individual post title. */

body.single-post .site-main article .entry-title,
body.single-post .site-main article .entry-title a,
body.single-post .site-main article h1.entry-title {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 8px auto 10px !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
}


/* Centre the post author and metadata. */

body.single-post .site-main article .entry-meta,
body.single-post .site-main article .post-item-metadata,
body.single-post .site-main article .author-links,
body.single-post .site-main article .post-author,
body.single-post .site-main article .byline {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto 12px !important;
    padding: 0 !important;

    text-align: center !important;
}


body.single-post .site-main article .entry-meta *,
body.single-post .site-main article .post-item-metadata *,
body.single-post .site-main article .author-links *,
body.single-post .site-main article .post-author *,
body.single-post .site-main article .byline * {
    text-align: center !important;
}


/* Centre the featured image and align it with the text width. */

body.single-post .site-main article .post-thumbnail,
body.single-post .site-main article .featured-image,
body.single-post .site-main article .read-img,
body.single-post .site-main article .entry-content > figure:first-child,
body.single-post .site-main article .entry-content > .wp-block-image:first-child {
    display: block !important;

    width: 100% !important;
    max-width: 750px !important;

    margin: 0 auto 18px !important;
    padding: 0 !important;

    text-align: center !important;
    overflow: hidden !important;
}


body.single-post .site-main article .post-thumbnail img,
body.single-post .site-main article .featured-image img,
body.single-post .site-main article .read-img img,
body.single-post .site-main article .entry-content > figure:first-child img,
body.single-post .site-main article .entry-content > .wp-block-image:first-child img {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: contain !important;
    object-position: center !important;
}


/* Match the post body to the 16pt justified listing text. */

body.single-post .site-main article .entry-content,
body.single-post .site-main article .entry-content p,
body.single-post .site-main article .entry-content li,
body.single-post .site-main article .entry-content blockquote {
    font-size: 16pt !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
}


/* Keep body paragraphs aligned exactly to the image width. */

body.single-post .site-main article .entry-content p {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 0 18px !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* Preserve centred alignment for intentional headings inside posts. */

body.single-post .site-main article .entry-content h2,
body.single-post .site-main article .entry-content h3,
body.single-post .site-main article .entry-content h4 {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    text-align: center !important;
}


/* Keep lists aligned within the same content width. */

body.single-post .site-main article .entry-content ul,
body.single-post .site-main article .entry-content ol {
    width: 100% !important;
    max-width: 100% !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 28px !important;

    box-sizing: border-box !important;
}


/* Responsive post-page refinement. */

@media screen and (max-width: 768px) {

    body.single-post .content-area,
    body.single-post .site-main,
    body.single-post .site-main article,
    body.single-post .site-main article .entry-content {
        max-width: 100% !important;
    }

    body.single-post .site-main article .entry-title,
    body.single-post .site-main article h1.entry-title {
        font-size: 17pt !important;
    }

    body.single-post .site-main article .entry-content,
    body.single-post .site-main article .entry-content p,
    body.single-post .site-main article .entry-content li,
    body.single-post .site-main article .entry-content blockquote {
        font-size: 16pt !important;
    }
}

/* =========================================================
   INDIVIDUAL POST IMAGES — FULL TEXT WIDTH
   Makes all post-page images span the same 750px width as
   the article text while preserving their natural proportion.
   ========================================================= */

/* Featured image and image wrappers use the full article width. */

body.single-post .site-main article .post-thumbnail,
body.single-post .site-main article .featured-image,
body.single-post .site-main article .read-img,
body.single-post .site-main article .entry-content figure,
body.single-post .site-main article .entry-content .wp-block-image,
body.single-post .site-main article .entry-content .wp-caption,
body.single-post .site-main article .entry-content picture {
    display: block !important;

    width: 100% !important;
    min-width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    box-sizing: border-box !important;
}


/* Make every post-page image fill the same width as the text. */

body.single-post .site-main article .post-thumbnail img,
body.single-post .site-main article .featured-image img,
body.single-post .site-main article .read-img img,
body.single-post .site-main article .entry-content figure img,
body.single-post .site-main article .entry-content .wp-block-image img,
body.single-post .site-main article .entry-content .wp-caption img,
body.single-post .site-main article .entry-content picture img,
body.single-post .site-main article .entry-content > img {
    display: block !important;

    width: 100% !important;
    min-width: 100% !important;
    max-width: 750px !important;
    height: auto !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding: 0 !important;

    object-fit: contain !important;
    object-position: center !important;

    box-sizing: border-box !important;
}


/* Remove restrictive WordPress size classes on single posts. */

body.single-post .site-main article img.size-thumbnail,
body.single-post .site-main article img.size-medium,
body.single-post .site-main article img.size-large,
body.single-post .site-main article img.size-full,
body.single-post .site-main article .wp-block-image.size-thumbnail img,
body.single-post .site-main article .wp-block-image.size-medium img,
body.single-post .site-main article .wp-block-image.size-large img,
body.single-post .site-main article .wp-block-image.size-full img {
    width: 100% !important;
    min-width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
}


/* Keep captions aligned to the same text and image width. */

body.single-post .site-main article .wp-caption-text,
body.single-post .site-main article figcaption {
    width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;
}


/* Responsive refinement. */

@media screen and (max-width: 768px) {

    body.single-post .site-main article .post-thumbnail,
    body.single-post .site-main article .featured-image,
    body.single-post .site-main article .read-img,
    body.single-post .site-main article .entry-content figure,
    body.single-post .site-main article .entry-content .wp-block-image,
    body.single-post .site-main article .entry-content .wp-caption,
    body.single-post .site-main article .entry-content picture,
    body.single-post .site-main article .post-thumbnail img,
    body.single-post .site-main article .featured-image img,
    body.single-post .site-main article .read-img img,
    body.single-post .site-main article .entry-content figure img,
    body.single-post .site-main article .entry-content .wp-block-image img,
    body.single-post .site-main article .entry-content .wp-caption img,
    body.single-post .site-main article .entry-content picture img,
    body.single-post .site-main article .entry-content > img {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }
}

/* =========================================================
   INDIVIDUAL POST TAGS — CENTRED RELATED-ARTICLE BUTTONS
   Post pages only. The heading is forced onto its own
   full-width centred line, with centred buttons underneath.
   ========================================================= */

body.single-post .site-main article .tags-links,
body.single-post .site-main article .post-tags,
body.single-post .site-main article .entry-tags,
body.single-post .site-main article .tag-links,
body.single-post .site-main article .aft-post-tags{
    display: block !important;
    position: static !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 28px auto 0 !important;
    padding: 18px 0 0 !important;

    border-top: 1px solid #2F7D3B !important;

    color: #111111 !important;
    font-size: 0 !important;
    line-height: normal !important;
    text-align: center !important;
    box-sizing: border-box !important;
}


/* Replace the theme's visible “Tags” label with a centred heading. */

body.single-post .site-main article .tags-links::before,
body.single-post .site-main article .post-tags::before,
body.single-post .site-main article .entry-tags::before,
body.single-post .site-main article .tag-links::before,
body.single-post .site-main article .aft-post-tags::before{
    content: "You May Also Like These Articles" !important;

    display: flex !important;
    position: static !important;
    float: none !important;
    clear: both !important;

    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 1.3em !important;

    inset: auto !important;
    transform: none !important;

    margin: 0 auto 14px !important;
    padding: 0 !important;

    background: transparent !important;
    color: #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;

    text-align: center !important;
    white-space: normal !important;
    box-sizing: border-box !important;
}


/* Display every individual tag as a centred button. */

body.single-post .site-main article .tags-links a,
body.single-post .site-main article .post-tags a,
body.single-post .site-main article .entry-tags a,
body.single-post .site-main article .tag-links a,
body.single-post .site-main article .aft-post-tags a{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    position: static !important;
    float: none !important;

    width: auto !important;
    min-width: 0 !important;
    min-height: 38px !important;

    margin: 4px !important;
    padding: 8px 15px !important;

    background-color: #ffffff !important;
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 5px !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-align: center !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
    white-space: normal !important;

    box-sizing: border-box !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease !important;
}


/* Button hover, keyboard focus and active states. */

body.single-post .site-main article .tags-links a:hover,
body.single-post .site-main article .tags-links a:focus,
body.single-post .site-main article .tags-links a:active,
body.single-post .site-main article .post-tags a:hover,
body.single-post .site-main article .post-tags a:focus,
body.single-post .site-main article .post-tags a:active,
body.single-post .site-main article .entry-tags a:hover,
body.single-post .site-main article .entry-tags a:focus,
body.single-post .site-main article .entry-tags a:active,
body.single-post .site-main article .tag-links a:hover,
body.single-post .site-main article .tag-links a:focus,
body.single-post .site-main article .tag-links a:active,
body.single-post .site-main article .aft-post-tags a:hover,
body.single-post .site-main article .aft-post-tags a:focus,
body.single-post .site-main article .aft-post-tags a:active{
    background-color: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;
    text-decoration: none !important;
}


/* Keep the related-article area compact on phones. */

@media screen and (max-width: 480px) {

    body.single-post .site-main article .tags-links,
body.single-post .site-main article .post-tags,
body.single-post .site-main article .entry-tags,
body.single-post .site-main article .tag-links,
body.single-post .site-main article .aft-post-tags{
        margin-top: 24px !important;
        padding-top: 14px !important;
    }

    body.single-post .site-main article .tags-links::before,
body.single-post .site-main article .post-tags::before,
body.single-post .site-main article .entry-tags::before,
body.single-post .site-main article .tag-links::before,
body.single-post .site-main article .aft-post-tags::before{
        margin-bottom: 10px !important;
        font-size: 18px !important;
    }

    body.single-post .site-main article .tags-links a,
body.single-post .site-main article .post-tags a,
body.single-post .site-main article .entry-tags a,
body.single-post .site-main article .tag-links a,
body.single-post .site-main article .aft-post-tags a{
        min-height: 36px !important;
        margin: 3px !important;
        padding: 7px 12px !important;
        font-size: 13px !important;
    }
}

/* =========================================================
   PRIMARY SOURCES HEADING — REDUCED FONT SIZE
   ========================================================= */

body.single-post .entry-content > ol:last-of-type::before {
    font-size: 14px !important;
    line-height: 1.3 !important;
}

/* =========================================================
   PRIMARY SOURCES LIST — 14PX
   Reduces only the final ordered list containing the five
   primary sources on individual post pages.
   ========================================================= */

body.single-post .entry-content > ol:last-of-type,
body.single-post .entry-content > ol:last-of-type li,
body.single-post .entry-content > ol:last-of-type li p,
body.single-post .entry-content > ol:last-of-type li a {
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* =========================================================
   PRIMARY SOURCES HEADING — CENTRED
   ========================================================= */

body.single-post .entry-content > ol:last-of-type::before {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    text-align-last: center !important;
}

/* =========================================================
   POST IMAGE FRAMES REMOVED
   =========================================================
   The former 10px frame systems were removed because their fixed
   wrappers produced exposed grey/green areas when grid images were
   changed from 3:2 to 1200:628.
   ========================================================= */

/* =========================================================
   ALL HEADLINES AND READ-ARTICLE TEXT — GREEN
   ========================================================= */

/* All site headlines and linked headline text. */

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body h1 a,
body h2 a,
body h3 a,
body h4 a,
body h5 a,
body h6 a,
.entry-title,
.entry-title a,
.post-title,
.post-title a,
.page-title,
.page-title a,
.archive-title,
.archive-title a,
.search-title,
.search-title a,
.widget-title,
.widget-title a,
.section-title,
.section-title a,
.site-title,
.site-title a,
.card-title,
.card-title a,
.article-title,
.article-title a,
.post-content-title,
.post-content-title a,
.related-posts .entry-title,
.related-posts .entry-title a,
.aft-post-title,
.aft-post-title a,
.read-title,
.read-title a,
.af-main-banner .entry-title,
.af-main-banner .entry-title a,
.spotlight-post .entry-title,
.spotlight-post .entry-title a,
.aft-trending-posts .entry-title,
.aft-trending-posts .entry-title a {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}


/* All Read Article, Read More and equivalent links. */

.read-more,
.read-more a,
.readmore,
.readmore a,
.read-more-link,
.read-more-link a,
.more-link,
.more-link a,
.read-article,
.read-article a,
.article-read-more,
.article-read-more a,
.post-read-more,
.post-read-more a,
.aft-readmore,
.aft-readmore a,
.aft-read-more,
.aft-read-more a,
.af-read-more,
.af-read-more a,
.btn-read-more,
.btn-read-more a,
.entry-content .more-link,
.entry-summary .more-link,
.site-main article .more-link,
.site-main article .read-more,
.site-main article .read-more-link {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}


/* Keep Read Article text green on hover, focus and after visiting. */

.read-more:hover,
.read-more:focus,
.read-more:visited,
.read-more a:hover,
.read-more a:focus,
.read-more a:visited,
.readmore:hover,
.readmore:focus,
.readmore:visited,
.readmore a:hover,
.readmore a:focus,
.readmore a:visited,
.read-more-link:hover,
.read-more-link:focus,
.read-more-link:visited,
.more-link:hover,
.more-link:focus,
.more-link:visited,
.read-article:hover,
.read-article:focus,
.read-article:visited,
.article-read-more:hover,
.article-read-more:focus,
.article-read-more:visited,
.post-read-more:hover,
.post-read-more:focus,
.post-read-more:visited,
.aft-readmore:hover,
.aft-readmore:focus,
.aft-readmore:visited,
.aft-read-more:hover,
.aft-read-more:focus,
.aft-read-more:visited,
.af-read-more:hover,
.af-read-more:focus,
.af-read-more:visited,
.btn-read-more:hover,
.btn-read-more:focus,
.btn-read-more:visited {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}

/* =========================================================
   POST GRIDS — GREEN HEADLINES AND READ-ARTICLE TEXT
   ========================================================= */

/* Grid and archive card headlines. */

body.home .site-main article .entry-title,
body.home .site-main article .entry-title a,
body.front-page .site-main article .entry-title,
body.front-page .site-main article .entry-title a,
body.blog .site-main article .entry-title,
body.blog .site-main article .entry-title a,
body.archive .site-main article .entry-title,
body.archive .site-main article .entry-title a,
body.category .site-main article .entry-title,
body.category .site-main article .entry-title a,
body.tag .site-main article .entry-title,
body.tag .site-main article .entry-title a,
body.author .site-main article .entry-title,
body.author .site-main article .entry-title a,
body.date .site-main article .entry-title,
body.date .site-main article .entry-title a,
body.search .site-main article .entry-title,
body.search .site-main article .entry-title a,
body.search-results .site-main article .entry-title,
body.search-results .site-main article .entry-title a,
.site-main .grid-item .entry-title,
.site-main .grid-item .entry-title a,
.site-main .read-single .entry-title,
.site-main .read-single .entry-title a,
.site-main .list-style .entry-title,
.site-main .list-style .entry-title a,
.site-main .post-grid .entry-title,
.site-main .post-grid .entry-title a,
.site-main .posts-grid .entry-title,
.site-main .posts-grid .entry-title a,
.site-main .wp-block-post-template .wp-block-post-title,
.site-main .wp-block-post-template .wp-block-post-title a,
.site-main .wp-block-query .wp-block-post-title,
.site-main .wp-block-query .wp-block-post-title a,
.site-main .aft-post-title,
.site-main .aft-post-title a,
.site-main .read-title,
.site-main .read-title a,
.site-main .article-title,
.site-main .article-title a,
.site-main .card-title,
.site-main .card-title a {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}


/* Grid and archive Read Article / Read More links. */

body.home .site-main article .more-link,
body.home .site-main article .read-more,
body.home .site-main article .read-more-link,
body.home .site-main article .read-article,
body.front-page .site-main article .more-link,
body.front-page .site-main article .read-more,
body.front-page .site-main article .read-more-link,
body.front-page .site-main article .read-article,
body.blog .site-main article .more-link,
body.blog .site-main article .read-more,
body.blog .site-main article .read-more-link,
body.blog .site-main article .read-article,
body.archive .site-main article .more-link,
body.archive .site-main article .read-more,
body.archive .site-main article .read-more-link,
body.archive .site-main article .read-article,
body.category .site-main article .more-link,
body.category .site-main article .read-more,
body.category .site-main article .read-more-link,
body.category .site-main article .read-article,
body.tag .site-main article .more-link,
body.tag .site-main article .read-more,
body.tag .site-main article .read-more-link,
body.tag .site-main article .read-article,
body.author .site-main article .more-link,
body.author .site-main article .read-more,
body.author .site-main article .read-more-link,
body.author .site-main article .read-article,
body.date .site-main article .more-link,
body.date .site-main article .read-more,
body.date .site-main article .read-more-link,
body.date .site-main article .read-article,
body.search .site-main article .more-link,
body.search .site-main article .read-more,
body.search .site-main article .read-more-link,
body.search .site-main article .read-article,
.site-main .grid-item .more-link,
.site-main .grid-item .read-more,
.site-main .grid-item .read-more-link,
.site-main .grid-item .read-article,
.site-main .read-single .more-link,
.site-main .read-single .read-more,
.site-main .read-single .read-more-link,
.site-main .read-single .read-article,
.site-main .list-style .more-link,
.site-main .list-style .read-more,
.site-main .list-style .read-more-link,
.site-main .list-style .read-article,
.site-main .post-grid .more-link,
.site-main .post-grid .read-more,
.site-main .post-grid .read-more-link,
.site-main .post-grid .read-article,
.site-main .posts-grid .more-link,
.site-main .posts-grid .read-more,
.site-main .posts-grid .read-more-link,
.site-main .posts-grid .read-article,
.site-main .wp-block-post-template .wp-block-read-more,
.site-main .wp-block-query .wp-block-read-more,
.site-main .aft-readmore,
.site-main .aft-read-more,
.site-main .af-read-more,
.site-main .article-read-more,
.site-main .post-read-more,
.site-main .btn-read-more {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}


/* Preserve green on hover, focus and visited states in post grids. */

.site-main article .entry-title a:hover,
.site-main article .entry-title a:focus,
.site-main article .entry-title a:visited,
.site-main .grid-item .entry-title a:hover,
.site-main .grid-item .entry-title a:focus,
.site-main .grid-item .entry-title a:visited,
.site-main .read-single .entry-title a:hover,
.site-main .read-single .entry-title a:focus,
.site-main .read-single .entry-title a:visited,
.site-main .wp-block-post-title a:hover,
.site-main .wp-block-post-title a:focus,
.site-main .wp-block-post-title a:visited,
.site-main article .more-link:hover,
.site-main article .more-link:focus,
.site-main article .more-link:visited,
.site-main article .read-more:hover,
.site-main article .read-more:focus,
.site-main article .read-more:visited,
.site-main article .read-more-link:hover,
.site-main article .read-more-link:focus,
.site-main article .read-more-link:visited,
.site-main article .read-article:hover,
.site-main article .read-article:focus,
.site-main article .read-article:visited,
.site-main .wp-block-read-more:hover,
.site-main .wp-block-read-more:focus,
.site-main .wp-block-read-more:visited {
    color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}

/* =========================================================
   FINAL POST-GRID READ-ARTICLE OVERRIDE
   =========================================================
   Forces the visible text, nested spans, icons and generated
   content to use #2F7D3B, overriding theme button/link rules.
   ========================================================= */

body .site-main article .read-more,
body .site-main article .read-more *,
body .site-main article .readmore,
body .site-main article .readmore *,
body .site-main article .read-more-link,
body .site-main article .read-more-link *,
body .site-main article .read-article,
body .site-main article .read-article *,
body .site-main article .article-read-more,
body .site-main article .article-read-more *,
body .site-main article .post-read-more,
body .site-main article .post-read-more *,
body .site-main article .aft-readmore,
body .site-main article .aft-readmore *,
body .site-main article .aft-read-more,
body .site-main article .aft-read-more *,
body .site-main article .af-read-more,
body .site-main article .af-read-more *,
body .site-main article .btn-read-more,
body .site-main article .btn-read-more *,
body .site-main article .continue-reading,
body .site-main article .continue-reading *,
body .site-main article .continue_reading,
body .site-main article .continue_reading *,
body .site-main article .more-link,
body .site-main article .more-link *,
body .site-main article .wp-block-read-more,
body .site-main article .wp-block-read-more *,
body .site-main article a[class*="read-more"],
body .site-main article a[class*="read-more"] *,
body .site-main article a[class*="readmore"],
body .site-main article a[class*="readmore"] *,
body .site-main article a[class*="read-article"],
body .site-main article a[class*="read-article"] *,
body .site-main article a[class*="continue-reading"],
body .site-main article a[class*="continue-reading"] *,
body .site-main article [class*="read-more"] > a,
body .site-main article [class*="read-more"] > a *,
body .site-main article [class*="readmore"] > a,
body .site-main article [class*="readmore"] > a *,
body .site-main article [class*="read-article"] > a,
body .site-main article [class*="read-article"] > a *,
body .site-main article [class*="continue-reading"] > a,
body .site-main article [class*="continue-reading"] > a *,
body .site-main article a[aria-label*="Read"],
body .site-main article a[aria-label*="Read"] *,
body .site-main article a[title*="Read"],
body .site-main article a[title*="Read"] * {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    fill: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
    opacity: 1 !important;
}


/* Generated arrows, labels or decorative text. */

body .site-main article .read-more::before,
body .site-main article .read-more::after,
body .site-main article .readmore::before,
body .site-main article .readmore::after,
body .site-main article .read-more-link::before,
body .site-main article .read-more-link::after,
body .site-main article .read-article::before,
body .site-main article .read-article::after,
body .site-main article .aft-readmore::before,
body .site-main article .aft-readmore::after,
body .site-main article .aft-read-more::before,
body .site-main article .aft-read-more::after,
body .site-main article .af-read-more::before,
body .site-main article .af-read-more::after,
body .site-main article .more-link::before,
body .site-main article .more-link::after,
body .site-main article a[class*="read-more"]::before,
body .site-main article a[class*="read-more"]::after,
body .site-main article a[class*="readmore"]::before,
body .site-main article a[class*="readmore"]::after,
body .site-main article a[class*="read-article"]::before,
body .site-main article a[class*="read-article"]::after {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    fill: #2F7D3B !important;
}


/* Preserve the same colour in every interaction state. */

body .site-main article .read-more:hover,
body .site-main article .read-more:focus,
body .site-main article .read-more:active,
body .site-main article .read-more:visited,
body .site-main article .readmore:hover,
body .site-main article .readmore:focus,
body .site-main article .readmore:active,
body .site-main article .readmore:visited,
body .site-main article .read-more-link:hover,
body .site-main article .read-more-link:focus,
body .site-main article .read-more-link:active,
body .site-main article .read-more-link:visited,
body .site-main article .read-article:hover,
body .site-main article .read-article:focus,
body .site-main article .read-article:active,
body .site-main article .read-article:visited,
body .site-main article .aft-readmore:hover,
body .site-main article .aft-readmore:focus,
body .site-main article .aft-readmore:active,
body .site-main article .aft-readmore:visited,
body .site-main article .more-link:hover,
body .site-main article .more-link:focus,
body .site-main article .more-link:active,
body .site-main article .more-link:visited {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    text-decoration-color: #2F7D3B !important;
}

/* =========================================================
   LOWER THE FIRST POST SLIGHTLY ON POST-GRID PAGES
   =========================================================
   Adds a modest gap above the first post card on the homepage,
   archives, categories, tags, author pages and search results.
   ========================================================= */

body.home .site-main article:first-of-type,
body.front-page .site-main article:first-of-type,
body.blog .site-main article:first-of-type,
body.archive .site-main article:first-of-type,
body.category .site-main article:first-of-type,
body.tag .site-main article:first-of-type,
body.author .site-main article:first-of-type,
body.date .site-main article:first-of-type,
body.search .site-main article:first-of-type,
body.search-results .site-main article:first-of-type,
body.page-id-76725 .site-main article:first-of-type,
.site-main .post-grid article:first-of-type,
.site-main .posts-grid article:first-of-type,
.site-main .archive-posts article:first-of-type,
.site-main .posts-wrapper article:first-of-type,
.site-main .posts-wrap article:first-of-type,
.site-main .wp-block-post-template > li:first-child,
.site-main .wp-block-query .wp-block-post-template > li:first-child {
    margin-top: 24px !important;
}


/* Keep the spacing slightly tighter on phones. */

@media screen and (max-width: 650px) {
    body.home .site-main article:first-of-type,
    body.front-page .site-main article:first-of-type,
    body.blog .site-main article:first-of-type,
    body.archive .site-main article:first-of-type,
    body.category .site-main article:first-of-type,
    body.tag .site-main article:first-of-type,
    body.author .site-main article:first-of-type,
    body.date .site-main article:first-of-type,
    body.search .site-main article:first-of-type,
    body.search-results .site-main article:first-of-type,
    body.page-id-76725 .site-main article:first-of-type,
    .site-main .post-grid article:first-of-type,
    .site-main .posts-grid article:first-of-type,
    .site-main .archive-posts article:first-of-type,
    .site-main .posts-wrapper article:first-of-type,
    .site-main .posts-wrap article:first-of-type,
    .site-main .wp-block-post-template > li:first-child,
    .site-main .wp-block-query .wp-block-post-template > li:first-child {
        margin-top: 18px !important;
    }
}

/* =========================================================
   HOMEPAGE PUBLISHED-ARTICLE COUNTER
   =========================================================
   Theme-green container with white text.
   The counter spans the full homepage post grid and updates
   automatically through the active PHP shortcode snippet.
   ========================================================= */

body.home .article-count,
body.front-page .article-count,
body.blog .article-count,
body.page-id-76725 .article-count,
.article-count {
    display: block !important;
    position: relative !important;
    grid-column: 1 / -1 !important;
    clear: both !important;
    float: none !important;

    width: calc(100% - 28px) !important;
    max-width: 900px !important;

    margin: 45px auto 55px !important;
    padding: 18px 25px !important;

    background: #2F7D3B !important;
    background-color: transparent !important;
    color: #ffffff !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 5% !important;
    box-shadow: none !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;

    text-align: center !important;
    text-transform: capitalize !important;
    box-sizing: border-box !important;
}

body.home .article-count strong,
body.front-page .article-count strong,
body.blog .article-count strong,
body.page-id-76725 .article-count strong,
.article-count strong {
    background: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 26px !important;
    font-weight: 700 !important;
}

@media screen and (max-width: 650px) {
    body.home .article-count,
    body.front-page .article-count,
    body.blog .article-count,
    body.page-id-76725 .article-count,
    .article-count {
        width: calc(100% - 24px) !important;
        margin: 38px auto 48px !important;
        padding: 15px 18px !important;

        font-size: 17px !important;
        line-height: 1.45 !important;
    }

    body.home .article-count strong,
    body.front-page .article-count strong,
    body.blog .article-count strong,
    body.page-id-76725 .article-count strong,
    .article-count strong {
        font-size: 22px !important;
    }
}

/* =========================================================
   ARTICLE COUNTER SEPARATORS
   ========================================================= */

.article-count::before,
.article-count::after {
    content: "" !important;
    display: block !important;
    position: absolute !important;

    left: 0 !important;
    width: 100% !important;
    height: 2px !important;

    background-color: transparent !important;
}

.article-count::before {
    top: -15px !important;
}

.article-count::after {
    bottom: -15px !important;
}

/* =========================================================
   LATEST ARTICLES PAGE — UNIFORM ONE-COLUMN LAYOUT
   =========================================================
   Applies only to the dedicated /latest-articles/ page.
   - Full-width page with no sidebar
   - One article per row
   - Matching 16:9 featured images
   - Centred green headlines
   - Centred publication dates
   - Green separators
   ========================================================= */

/* Use the full content width and remove the page sidebar. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .content-area,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .content-area,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .site-main,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .site-main {
    display: block !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .sidebar,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .sidebar,
body:has(a[aria-current="page"][href*="/latest-articles/"]) #secondary,
body:has(.current-menu-item > a[href*="/latest-articles/"]) #secondary {
    display: none !important;
}

/* Centre and contain the page content. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
    width: 100% !important;
    max-width: 950px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Style the page title to match the site's green post headings. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
    color: #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    text-align: center !important;

    margin: 0 auto 36px !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}

/* Remove WordPress list styling and keep one article per row. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts {
    display: block !important;

    width: 100% !important;
    max-width: 900px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    list-style: none !important;
}

/* Uniform article cards. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;

    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 900px !important;

    margin: 0 auto 38px !important;
    padding: 0 0 32px !important;

    background-color: #ffffff !important;
    border-bottom: 2px solid #2F7D3B !important;

    text-align: center !important;
    list-style: none !important;

    overflow: hidden !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li::before,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li::after,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li::before,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li::after {
    content: none !important;
    display: none !important;
}

/* Remove the native floating-image behaviour. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.alignleft,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.alignright,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.aligncenter,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.alignleft,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.alignright,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image.aligncenter {
    display: block !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 900px !important;

    margin: 0 auto 18px !important;
    padding: 0 !important;

    text-align: center !important;
}

/* Make the linked image fill the card. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image a {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* Give every featured image the same 16:9 shape. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image img,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image img {
    display: block !important;
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    aspect-ratio: 300 / 157 !important;
    object-fit: cover !important;
    object-position: center !important;

    margin: 0 auto !important;
    padding: 0 !important;
}

/* Uniform green article headlines. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title {
    display: block !important;
    clear: both !important;

    width: 100% !important;
    max-width: 820px !important;

    margin: 4px auto 8px !important;
    padding: 0 14px !important;

    color: #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;

    text-align: center !important;
    text-decoration: none !important;

    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title:hover,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title:focus,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title:hover,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title:focus {
    color: #2F7D3B !important;

    text-decoration: underline !important;
    text-decoration-color: #2F7D3B !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 5px !important;
}

/* Uniform publication dates. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-date,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-date {
    display: block !important;
    clear: both !important;

    width: 100% !important;

    margin: 0 auto !important;
    padding: 0 12px !important;

    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: italic !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;

    text-align: center !important;
}

/* The final article does not need a lower separator. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li:last-child,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li:last-child {
    margin-bottom: 0 !important;
    border-bottom: none !important;
}

/* Tablets and phones. */
@media screen and (max-width: 768px) {

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
        font-size: 30px !important;
        margin-bottom: 28px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li {
        margin-bottom: 30px !important;
        padding-bottom: 26px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title {
        font-size: 21px !important;
        line-height: 1.3 !important;
    }
}

@media screen and (max-width: 480px) {

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
        font-size: 27px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title {
        font-size: 19px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-date,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-date {
        font-size: 14px !important;
    }
}

/* =========================================================
   LATEST ARTICLES — FINAL UNIFORM ARTICLE LIST
   =========================================================
   The Latest Posts block must remain set to:
   Post content → Full post

   This final section:
   - Keeps image, title, author and date
   - Adds the same 10px green image frame used on the homepage
   - Displays only the genuine opening paragraph
   - Matches the homepage paragraph size at 16pt
   - Justifies text without automatic hyphenation
   - Adds a centred, clickable Read Article link on a new line
   ========================================================= */

/* Keep the author line uniform and centred. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-author,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-author {
    display: block !important;
    clear: both !important;

    width: 100% !important;

    margin: 0 auto 3px !important;
    padding: 0 12px !important;

    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;

    text-align: center !important;
}

/* Add spacing beneath the publication date. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-date,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-date {
    margin: 0 auto 14px !important;
}

/* Give Latest Articles images the same true-green 10px frame as the homepage. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image {
    display: block !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 900px !important;

    margin: 0 auto 18px !important;
    padding: 0 !important;

    border: 0 !important;
    background-color: transparent !important;
    box-shadow: none !important;

    box-sizing: border-box !important;
    overflow: hidden !important;

    -webkit-filter: none !important;
    filter: none !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__featured-image img,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__featured-image img {
    display: block !important;
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    aspect-ratio: 300 / 157 !important;
    object-fit: cover !important;
    object-position: center !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;

    -webkit-filter: none !important;

    filter: none !important;
}

/* Reserve a separate final line for the clickable Read Article link. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li {
    position: relative !important;
    padding-bottom: 92px !important;
}

/* Full-post content wrapper. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content {
    display: block !important;
    clear: both !important;

    width: 100% !important;
    max-width: 820px !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 auto !important;
    padding: 0 18px !important;

    color: #111111 !important;

    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 16pt !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;

    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

/* Hide every full-post element except the genuine first paragraph. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > *:not(p:first-of-type),
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > *:not(p:first-of-type) {
    display: none !important;
}

/* Display the complete opening paragraph at the homepage text size. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > p:first-of-type,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > p:first-of-type {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #111111 !important;

    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 16pt !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;

    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;

    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;

    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;

    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

/* Hide any separate link generated inside the full-content wrapper. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .more-link,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .read-more,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .read-more-link,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .more-link,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .read-more,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content .read-more-link {
    display: none !important;
}

/* Use the existing title link to create a second clickable Read Article link. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title {
    position: static !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after {
    content: "Read Article" !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    position: absolute !important;
    left: 50% !important;
    bottom: 30px !important;
    z-index: 2 !important;

    width: auto !important;
    min-height: 44px !important;
    max-width: max-content !important;

    margin: 0 !important;
    padding: 8px 16px !important;

    color: #2F7D3B !important;
    background-color: #ffffff !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 0 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    box-sizing: border-box !important;
    transform: translateX(-50%) !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title:hover::after,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title:focus::after,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title:hover::after,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title:focus::after {
    color: #ffffff !important;
    background-color: transparent !important;
    text-decoration: none !important;
}

/* Keep the final article separator rule while retaining button space. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts > li:last-child,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts > li:last-child {
    padding-bottom: 92px !important;
}

/* Responsive refinements without reducing the homepage-matched 16pt text. */
@media screen and (max-width: 768px) {

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > p:first-of-type,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content > p:first-of-type {
        font-size: 16pt !important;
        line-height: 1.55 !important;
    }
}

@media screen and (max-width: 480px) {

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-full-content {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-author,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-author,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-date,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-date {
        font-size: 14px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after {
        font-size: 14px !important;
        padding: 8px 14px !important;
    }
}

/* =========================================================
   LATEST ARTICLES — PAGINATED QUERY LOOP
   =========================================================
   Applies to the dedicated Latest Articles page.
   - One article per row
   - 20 articles per page, controlled in the editor
   - Green framed 16:9 images
   - Centred title, author and date
   - Genuine opening paragraph only
   - Justified text with no hyphenation
   - Read Article on its own line
   - Centred numbered pagination
   ========================================================= */

/* Keep the complete page comfortably centred. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
    width: 100% !important;
    max-width: 950px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Main page title. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 38px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    margin-bottom: 36px !important;
}

/* Query Loop and Post Template remain one-column lists. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-template,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-template {
    display: block !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Each result is a uniform article card. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-template > .wp-block-post,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-template > .wp-block-post {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto 42px !important;
    padding: 0 0 34px !important;
    background: #ffffff !important;
    border-bottom: 2px solid #2F7D3B !important;
    box-sizing: border-box !important;
    text-align: center !important;
}

/* Remove the final separator before pagination. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-template > .wp-block-post:last-child,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-template > .wp-block-post:last-child {
    margin-bottom: 18px !important;
}

/* Featured image frame matching the homepage. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-featured-image,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-featured-image {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-featured-image a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-featured-image a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-featured-image img,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-featured-image img {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    aspect-ratio: 300 / 157 !important;
    object-fit: cover !important;
    object-position: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
}

/* Uniform article title. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title {
    display: block !important;
    width: 100% !important;
    max-width: 820px !important;
    margin: 4px auto 8px !important;
    padding: 0 14px !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title a {
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    text-align: center !important;
    text-decoration: none !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title a:hover,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title a:focus,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title a:hover,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title a:focus {
    color: #2F7D3B !important;
    text-decoration: underline !important;
    text-decoration-color: #2F7D3B !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 5px !important;
}

/* Author line. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-author,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-author-name,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-author,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-author-name {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 3px !important;
    padding: 0 12px !important;
    color: #111111 !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-author-name a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-author-name a {
    color: #111111 !important;
    font: inherit !important;
    text-decoration: none !important;
}

/* Publication date. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-date,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-date {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 14px !important;
    padding: 0 12px !important;
    color: #111111 !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: italic !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-date a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-date a {
    color: #111111 !important;
    font: inherit !important;
    text-decoration: none !important;
}

/* Full Post Content block: show only the genuine first paragraph. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-content,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-content {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    max-width: 820px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 18px !important;
    color: #111111 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 16pt !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-content > *:not(p:first-of-type),
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-content > *:not(p:first-of-type) {
    display: none !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-content > p:first-of-type,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-content > p:first-of-type {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 16pt !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
    text-align: justify !important;
    text-align-last: left !important;
    text-justify: inter-word !important;
    -webkit-hyphens: none !important;
    -moz-hyphens: none !important;
    -ms-hyphens: none !important;
    hyphens: none !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

/* Read Article appears beneath the opening paragraph on its own line. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-read-more,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-read-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    align-self: center !important;
    width: auto !important;
    min-height: 44px !important;
    max-width: max-content !important;
    margin: 22px auto 0 !important;
    padding: 8px 16px !important;
    color: #2F7D3B !important;
    background-color: #ffffff !important;
    border: 2px solid #2F7D3B !important;
    border-radius: 0 !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-read-more:hover,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-read-more:focus,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-read-more:hover,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-read-more:focus {
    color: #ffffff !important;
    background-color: transparent !important;
    text-decoration: none !important;
}

/* Numbered page navigation. */
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 32px auto 12px !important;
    padding: 24px 0 !important;
    border-top: 2px solid #2F7D3B !important;
    border-bottom: 2px solid #2F7D3B !important;
    text-align: center !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination-numbers,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination-numbers {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 0 !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination a,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination .page-numbers,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination a,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination .page-numbers {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    color: #111111 !important;
    background-color: #ffffff !important;
    border: 2px solid #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination .current,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination .current,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination a:hover,
body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination a:focus,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination a:hover,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination a:focus {
    color: #ffffff !important;
    background-color: transparent !important;
    text-decoration: none !important;
}

/* Responsive refinements. */
@media screen and (max-width: 768px) {
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
        font-size: 30px !important;
        margin-bottom: 28px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title {
        font-size: 21px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-content {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

@media screen and (max-width: 480px) {
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-content {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .entry-header .entry-title,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .page-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .page-title {
        font-size: 27px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-title,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-title {
        font-size: 19px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-content,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-content {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-author,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-author-name,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-post-date,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-author,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-author-name,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-post-date,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-read-more,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-read-more,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination a,
    body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-query-pagination .page-numbers,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination a,
    body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-query-pagination .page-numbers {
        font-size: 14px !important;
    }
}

/* =========================================================
   LATEST ARTICLES PAGE — HIDE PAGE TITLE ONLY
   =========================================================
   Keeps the page title available in WordPress and in the
   navigation menu, but removes it from the visible page.
   Query Loop article titles remain visible.
   ========================================================= */

body:has(
    a[aria-current="page"][href*="/latest-articles/"]
) .site-main > article > .entry-header,

body:has(
    .current-menu-item > a[href*="/latest-articles/"]
) .site-main > article > .entry-header,

body:has(
    a[aria-current="page"][href*="/latest-articles/"]
) .site-main > article > header.entry-header,

body:has(
    .current-menu-item > a[href*="/latest-articles/"]
) .site-main > article > header.entry-header {
    display: none !important;
}


/* Remove any space left behind above the article listing. */

body:has(
    a[aria-current="page"][href*="/latest-articles/"]
) .site-main > article > .entry-content,

body:has(
    .current-menu-item > a[href*="/latest-articles/"]
) .site-main > article > .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* =========================================================
   LATEST ARTICLES PAGE — TOP SPACE MATCHING HOMEPAGE
   =========================================================
   Adds the same modest gap above the first article that is
   used above the first post on the homepage.
   ========================================================= */

body:has(
    a[aria-current="page"][href*="/latest-articles/"]
) .wp-block-query .wp-block-post-template > .wp-block-post:first-child,

body:has(
    .current-menu-item > a[href*="/latest-articles/"]
) .wp-block-query .wp-block-post-template > .wp-block-post:first-child {
    margin-top: 24px !important;
}


/* Slightly tighter matching gap on phones. */

@media screen and (max-width: 650px) {

    body:has(
        a[aria-current="page"][href*="/latest-articles/"]
    ) .wp-block-query .wp-block-post-template > .wp-block-post:first-child,

    body:has(
        .current-menu-item > a[href*="/latest-articles/"]
    ) .wp-block-query .wp-block-post-template > .wp-block-post:first-child {
        margin-top: 18px !important;
    }
}

/* =========================================================
   SAFE SITE-WIDE IMAGE FRAME REMOVAL
   =========================================================
   Removes borders, padding and shadows without deleting any
   CoverNews CSS background image.
   ========================================================= */

html body figure,
html body picture,
html body .wp-block-image,
html body .post-thumbnail,
html body .featured-image,
html body .full-width-image,
html body .read-img,
html body .aft-image,
html body .post-image,
html body .featured-post-image,
html body .widget_media_image,
html body .gallery-icon,
html body .wp-block-gallery figure,
html body .wp-block-media-text__media,
html body .entry-content figure,
html body .entry-summary figure,
html body .site-main article figure,
html body .site-main article picture,
html body .site-main article .wp-block-image,
html body .site-main article .post-thumbnail,
html body .site-main article .featured-image,
html body .site-main article .full-width-image,
html body .site-main article .read-img {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;

    /* Use only background-color here.
       Never use background:transparent or background-image:none. */
    background-color: transparent !important;
}

html body img,
html body figure img,
html body picture img,
html body .wp-block-image img,
html body .post-thumbnail img,
html body .featured-image img,
html body .full-width-image img,
html body .read-img img,
html body .aft-image img,
html body .post-image img,
html body .featured-post-image img,
html body .widget_media_image img,
html body .gallery-icon img,
html body .wp-block-gallery img,
html body .wp-block-media-text__media img,
html body .entry-content img,
html body .entry-summary img,
html body .site-main article img {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    background-color: transparent !important;
}

html body figure > a,
html body picture > a,
html body .wp-block-image > a,
html body .post-thumbnail > a,
html body .featured-image > a,
html body .full-width-image > a,
html body .read-img > a,
html body .widget_media_image > a,
html body .gallery-icon > a,
html body a:has(> img) {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    background-color: transparent !important;
}

html body figure::before,
html body figure::after,
html body picture::before,
html body picture::after,
html body .wp-block-image::before,
html body .wp-block-image::after,
html body .post-thumbnail::before,
html body .post-thumbnail::after,
html body .featured-image::before,
html body .featured-image::after,
html body .full-width-image::before,
html body .full-width-image::after,
html body .read-img::before,
html body .read-img::after,
html body .widget_media_image::before,
html body .widget_media_image::after {
    content: none !important;
    display: none !important;
}

/* =========================================================
   FINAL COMPACT WHITE MASTHEAD
   COMPLETE LOGO VISIBLE — NAVIGATION REMAINS BELOW
   =========================================================
   This controls only the masthead image/branding area.
   It does not restrict the height of the complete site header,
   so the navigation menu remains fully visible underneath.
   ========================================================= */


/* Keep the complete header white and full width. */

html body #masthead,
html body header.site-header,
html body .site-header {
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    overflow: visible !important;
}


/* Compact desktop masthead image area.
   Keep this at 150px so it does not conflict with the masthead
   banner snippet. */

html body #masthead .header-main,
html body #masthead .masthead-banner,
html body #masthead .header-image,
html body #masthead .wp-custom-header,
html body .site-header .header-main,
html body .site-header .masthead-banner,
html body .site-header .header-image,
html body .site-header .wp-custom-header {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    background-color: #ffffff !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* Keep all inner masthead containers centred and compact. */

html body #masthead .header-main .container,
html body #masthead .header-main .container-wrapper,
html body #masthead .header-main .wrapper,
html body #masthead .header-main .af-container-row,
html body #masthead .site-branding,
html body .site-header .header-main .container,
html body .site-header .header-main .container-wrapper,
html body .site-header .header-main .wrapper,
html body .site-header .header-main .af-container-row,
html body .site-header .site-branding {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;

    width: 100% !important;
    max-width: 1800px !important;

    height: 150px !important;
    min-height: 0 !important;
    max-height: 150px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    text-align: center !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* Centre the clickable logo/header-image wrapper. */

html body #masthead .custom-logo-link,
html body #masthead .site-logo,
html body #masthead .site-branding > a,
html body #masthead .header-image > a,
html body #masthead .wp-custom-header > a,
html body .site-header .custom-logo-link,
html body .site-header .site-logo,
html body .site-header .site-branding > a,
html body .site-header .header-image > a,
html body .site-header .wp-custom-header > a {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 100% !important;
    max-height: 150px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    overflow: hidden !important;
}


/* Display the complete masthead image or logo without cropping. */

html body #masthead .custom-logo,
html body #masthead .custom-logo-link img,
html body #masthead .site-logo img,
html body #masthead .site-branding img,
html body #masthead .header-image img,
html body #masthead .wp-custom-header img,
html body #masthead .header-main img,
html body #masthead .masthead-banner img,
html body .site-header .custom-logo,
html body .site-header .custom-logo-link img,
html body .site-header .site-logo img,
html body .site-header .site-branding img,
html body .site-header .header-image img,
html body .site-header .wp-custom-header img,
html body .site-header .header-main img,
html body .site-header .masthead-banner img {
    display: block !important;

    width: auto !important;
    max-width: 96vw !important;

    height: auto !important;
    max-height: 150px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: contain !important;
    object-position: center center !important;

    transform: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* Prevent CoverNews background-image mastheads from using cover/cropping.
   Use the same 150px sizing as the masthead snippet. */

html body #masthead .data-bg,
html body #masthead .header-main.data-bg,
html body #masthead .masthead-banner.data-bg,
html body .site-header .data-bg,
html body .site-header .header-main.data-bg,
html body .site-header .masthead-banner.data-bg {
    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;

    background-color: #ffffff !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 100% 100% !important;

    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;

    overflow: hidden !important;
}


/* Do not restrict or crop the navigation beneath the masthead. */

html body #masthead .main-navigation,
html body .site-header .main-navigation,
html body .main-navigation {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    overflow: visible !important;
}


/* Tablet masthead. */

@media screen and (max-width: 1024px) {

    html body #masthead .header-main,
    html body #masthead .masthead-banner,
    html body #masthead .header-image,
    html body #masthead .wp-custom-header,
    html body .site-header .header-main,
    html body .site-header .masthead-banner,
    html body .site-header .header-image,
    html body .site-header .wp-custom-header,
    html body #masthead .data-bg,
    html body .site-header .data-bg {
        height: 150px !important;
        min-height: 150px !important;
        max-height: 150px !important;

        padding: 0 !important;
    }

    html body #masthead .header-main .container,
    html body #masthead .header-main .container-wrapper,
    html body #masthead .header-main .wrapper,
    html body #masthead .header-main .af-container-row,
    html body #masthead .site-branding,
    html body .site-header .header-main .container,
    html body .site-header .header-main .container-wrapper,
    html body .site-header .header-main .wrapper,
    html body .site-header .header-main .af-container-row,
    html body .site-header .site-branding,
    html body #masthead .custom-logo-link,
    html body .site-header .custom-logo-link {
        height: 150px !important;
        max-height: 150px !important;
    }

    html body #masthead .custom-logo,
    html body #masthead .custom-logo-link img,
    html body #masthead .site-logo img,
    html body #masthead .site-branding img,
    html body #masthead .header-image img,
    html body #masthead .wp-custom-header img,
    html body #masthead .header-main img,
    html body .site-header .custom-logo,
    html body .site-header .custom-logo-link img,
    html body .site-header .site-logo img,
    html body .site-header .site-branding img,
    html body .site-header .header-image img,
    html body .site-header .wp-custom-header img,
    html body .site-header .header-main img {
        max-width: 95vw !important;
        max-height: 150px !important;
    }
}


/* Phone masthead. */

@media screen and (max-width: 768px) {

    html body #masthead .header-main,
    html body #masthead .masthead-banner,
    html body #masthead .header-image,
    html body #masthead .wp-custom-header,
    html body .site-header .header-main,
    html body .site-header .masthead-banner,
    html body .site-header .header-image,
    html body .site-header .wp-custom-header,
    html body #masthead .data-bg,
    html body .site-header .data-bg {
        height: 150px !important;
        min-height: 150px !important;
        max-height: 150px !important;

        padding: 0 !important;
    }

    html body #masthead .header-main .container,
    html body #masthead .header-main .container-wrapper,
    html body #masthead .header-main .wrapper,
    html body #masthead .header-main .af-container-row,
    html body #masthead .site-branding,
    html body .site-header .header-main .container,
    html body .site-header .header-main .container-wrapper,
    html body .site-header .header-main .wrapper,
    html body .site-header .header-main .af-container-row,
    html body .site-header .site-branding,
    html body #masthead .custom-logo-link,
    html body .site-header .custom-logo-link {
        height: 150px !important;
        max-height: 150px !important;
    }

    html body #masthead .custom-logo,
    html body #masthead .custom-logo-link img,
    html body #masthead .site-logo img,
    html body #masthead .site-branding img,
    html body #masthead .header-image img,
    html body #masthead .wp-custom-header img,
    html body #masthead .header-main img,
    html body .site-header .custom-logo,
    html body .site-header .custom-logo-link img,
    html body .site-header .site-logo img,
    html body .site-header .site-branding img,
    html body .site-header .header-image img,
    html body .site-header .wp-custom-header img,
    html body .site-header .header-main img {
        max-width: 94vw !important;
        max-height: 150px !important;
    }
}

/* =========================================================
   MOBILE MENU BUTTON
   =========================================================
   Custom styling for the CoverNews mobile menu trigger has been removed.
   The theme now controls the default mobile menu icon and open/closed state.
   ========================================================= */

/* =========================================================
   MOBILE ARTICLE PARAGRAPHS — LEFT ALIGNED
   =========================================================
   On phones, article paragraphs use a natural ragged-right
   edge instead of centred or justified spacing. This prevents
   stretched gaps between words and improves readability.
   ========================================================= */

@media screen and (max-width: 768px) {

    body.single-post article p,
    body.single-post .entry-content p,
    body.single-post .post-content p,
    body.single-post .single-content p,
    body.single-post .post-description p,
    body.single-post [itemprop="articleBody"] p {
        text-align: left !important;
        text-align-last: left !important;
        text-justify: auto !important;

        word-spacing: normal !important;
        letter-spacing: normal !important;

        white-space: normal !important;
    }
}

/* =========================================================
   PHONE-SPECIFIC PARAGRAPH ALIGNMENT — FINAL OVERRIDE
   =========================================================
   Some CoverNews phone layouts apply their own alignment class
   or inline text alignment after the general mobile rules.
   This final rule targets phones more aggressively and overrides
   centred and justified paragraph classes inside single posts.
   ========================================================= */

@media screen and (max-width: 600px),
       screen and (max-device-width: 600px) {

    body.single-post main#main article p,
    body.single main#main article p,

    body.single-post article .entry-content p,
    body.single article .entry-content p,

    body.single-post article .post-content p,
    body.single article .post-content p,

    body.single-post article .single-content p,
    body.single article .single-content p,

    body.single-post article .post-description p,
    body.single article .post-description p,

    body.single-post article .wp-block-paragraph,
    body.single article .wp-block-paragraph,

    body.single-post article p.has-text-align-center,
    body.single article p.has-text-align-center,

    body.single-post article p.has-text-align-right,
    body.single article p.has-text-align-right,

    body.single-post article p.has-text-align-justify,
    body.single article p.has-text-align-justify,

    body.single-post article p[style*="text-align"],
    body.single article p[style*="text-align"] {
        text-align: left !important;
        text-align-last: left !important;
        text-justify: auto !important;

        word-spacing: normal !important;
        letter-spacing: normal !important;

        white-space: normal !important;

        -webkit-hyphens: none !important;
        -ms-hyphens: none !important;
        hyphens: none !important;
    }
}

/* =========================================================
   RESPONSIVE ARTICLE PARAGRAPH SIZE — FINAL OVERRIDE
   =========================================================
   The desktop article size remains unchanged.
   Tablets use 15pt and phones use 14pt for a more comfortable,
   less crowded reading experience.
   ========================================================= */


/* Tablets. */

@media screen and (min-width: 769px) and (max-width: 1024px) {

    body.single-post main#main article p,
    body.single main#main article p,

    body.single-post article .entry-content p,
    body.single article .entry-content p,

    body.single-post article .post-content p,
    body.single article .post-content p,

    body.single-post article .single-content p,
    body.single article .single-content p,

    body.single-post article .post-description p,
    body.single article .post-description p,

    body.single-post article .wp-block-paragraph,
    body.single article .wp-block-paragraph,

    body.single-post article [itemprop="articleBody"] p,
    body.single article [itemprop="articleBody"] p {
        font-size: 15pt !important;
        line-height: 1.55 !important;
    }
}


/* Phones. */

@media screen and (max-width: 768px),
       screen and (max-device-width: 768px) {

    body.single-post main#main article p,
    body.single main#main article p,

    body.single-post article .entry-content p,
    body.single article .entry-content p,

    body.single-post article .post-content p,
    body.single article .post-content p,

    body.single-post article .single-content p,
    body.single article .single-content p,

    body.single-post article .post-description p,
    body.single article .post-description p,

    body.single-post article .wp-block-paragraph,
    body.single article .wp-block-paragraph,

    body.single-post article [itemprop="articleBody"] p,
    body.single article [itemprop="articleBody"] p {
        font-size: 14pt !important;
        line-height: 1.55 !important;
    }
}

/* =========================================================
   ABOUT PAGE — STICKY BANNER
   STICKY MENU (OR ANYTHING!) PLUGIN
   =========================================================
   WORDPRESS SETUP:
   1. Select the About-page banner Image block, Group or Container.
   2. Add this Additional CSS class: about-sticky-banner
   3. In Sticky Menu (or Anything!), use this selector:
      .about-sticky-banner
   4. Set the plugin top spacing to 0px.
   5. Set the plugin minimum screen width to 769px.
   6. Set the plugin z-index to 99980.

   The existing fixed-header system supplies the exact header height
   through --la-fixed-header-height. The banner therefore sticks
   directly beneath the complete masthead and navigation without
   covering either of them.
   ========================================================= */


/* Normal banner appearance before it becomes sticky. */

.about-sticky-banner {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    max-width: 750px !important;

    margin: 0 auto 28px !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    border: 0 !important;
    outline: 0 !important;

    overflow: hidden !important;

    z-index: 99980 !important;
    isolation: isolate !important;

    box-sizing: border-box !important;
}


/* Keep the supplied About banner clear, proportional and unfiltered. */

.about-sticky-banner img,
.about-sticky-banner picture,
.about-sticky-banner picture img {
    display: block !important;
    position: static !important;
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;

    object-fit: contain !important;
    object-position: center !important;

    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;

    transform: none !important;

    border: 0 !important;
    box-shadow: none !important;
}


/* Sticky Anything adds .element-is-sticky while the banner is fixed. */

body .about-sticky-banner.element-is-sticky {
    position: fixed !important;

    top: var(--la-fixed-header-height, 0px) !important;
    right: auto !important;
    bottom: auto !important;
    left: 50% !important;

    width: min(750px, 100vw) !important;
    max-width: 750px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    transform: translateX(-50%) !important;

    z-index: 99980 !important;

    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.20) !important;

    overflow: hidden !important;
}


/* Preserve the correct centred width when the plugin inserts inline styles. */

body .about-sticky-banner.element-is-sticky[style] {
    top: var(--la-fixed-header-height, 0px) !important;
    right: auto !important;
    left: 50% !important;

    width: min(750px, 100vw) !important;
    max-width: 750px !important;

    margin-left: 0 !important;
    margin-right: 0 !important;

    transform: translateX(-50%) !important;
}


/* Keep links and hover effects from altering the sticky banner. */

.about-sticky-banner a,
.about-sticky-banner a:hover,
.about-sticky-banner a:focus,
.about-sticky-banner a:focus-visible {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    outline-offset: 3px !important;

    text-decoration: none !important;
}

.about-sticky-banner a:hover img,
.about-sticky-banner a:focus img,
.about-sticky-banner a:focus-visible img {
    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    transform: none !important;
}


/* Disable the sticky banner on tablets and phones so that it does not
   occupy too much of the available reading screen. The banner remains
   visible in its normal position. */

@media screen and (max-width: 768px) {

    .about-sticky-banner,
    body .about-sticky-banner.element-is-sticky,
    body .about-sticky-banner.element-is-sticky[style] {
        position: relative !important;

        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        left: auto !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 auto 22px !important;

        transform: none !important;

        box-shadow: none !important;
    }
}


/* Remove the banner from printed pages. */

@media print {

    .about-sticky-banner,
    .about-sticky-banner.element-is-sticky {
        display: none !important;
    }
}

/* =========================================================
   FINAL MULTI-POST GRID IMAGE FIX — EXACT 1200 × 628 RATIO
   =========================================================
   This section affects only Home, blog, archive, category, tag,
   author, date, search and the Latest Articles page.

   Single-post pages are intentionally excluded because their
   images were already displaying correctly.
   ========================================================= */

:root {
    --la-grid-image-ratio: 300 / 157;
}


/* Cards must end naturally rather than stretching to grid-row height. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    article,
    .read-single,
    .list-style,
    .grid-item,
    .wp-block-post
) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    background-color: #ffffff !important;
}


/* Standard thumbnail frames. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img:not(.data-bg),
    .aft-image:not(.data-bg),
    .post-image:not(.data-bg),
    .featured-post-image:not(.data-bg),
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image
) {
    display: block !important;
    position: relative !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--la-grid-image-ratio) !important;

    margin: 0 0 14px !important;
    padding: 0 !important;

    line-height: 0 !important;
    font-size: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    background-color: transparent !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* Links occupy exactly the same frame as the thumbnail. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img:not(.data-bg),
    .aft-image:not(.data-bg),
    .post-image:not(.data-bg),
    .featured-post-image:not(.data-bg),
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image
) > a {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 0 !important;
    font-size: 0 !important;

    border: 0 !important;
    box-shadow: none !important;

    background-color: transparent !important;

    overflow: hidden !important;
}


/* Normal image files completely fill the 1200:628 frame. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image
) img {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    float: none !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 100% !important;
    min-height: 100% !important;
    max-height: 100% !important;
    aspect-ratio: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center center !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    background-color: transparent !important;
}


/* CoverNews CSS-background thumbnails.
   The existing background-image URL is preserved. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    .data-bg,
    .read-img.data-bg,
    .aft-image.data-bg,
    .post-image.data-bg,
    .featured-post-image.data-bg
) {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--la-grid-image-ratio) !important;

    margin: 0 0 14px !important;
    padding: 0 !important;

    background-color: transparent !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* Remove residual spacing and colour from immediate media parents. */

:is(
    body.home,
    body.front-page,
    body.blog,
    body.archive,
    body.category,
    body.tag,
    body.author,
    body.date,
    body.search,
    body.page-id-76725
) .site-main :is(
    div,
    figure,
    picture,
    a
):has(> .data-bg) {
    min-height: 0 !important;
    max-height: none !important;

    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    background-color: transparent !important;

    overflow: hidden !important;
}

/* =========================================================
   HOMEPAGE POSTS INDEX — FINAL GREY-BOX REMOVAL
   =========================================================
   Applies ONLY when WordPress is set to:
   Settings > Reading > Your homepage displays > Your latest posts

   The posts-index homepage normally carries both body classes:
   .home and .blog.

   Other pages, archives and individual posts are not changed.
   ========================================================= */

:root {
    --la-home-image-ratio: 300 / 157;
}


/* ---------------------------------------------------------
   1. HOMEPAGE POST CARDS MUST NOT STRETCH
   --------------------------------------------------------- */

html body.home.blog .site-main article,
html body.home.blog .site-main .read-single,
html body.home.blog .site-main .list-style,
html body.home.blog .site-main .grid-item,
html body.home.blog .site-main .archive-post,
html body.home.blog .site-main .post-item {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    align-self: start !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    overflow: visible !important;
    box-sizing: border-box !important;
}


/* Prevent the homepage grid from stretching every card to the
   height of the tallest card in its row. */

html body.home.blog .site-main .af-container-row,
html body.home.blog .site-main .aft-archive-wrapper,
html body.home.blog .site-main .archive-posts,
html body.home.blog .site-main .posts-wrapper,
html body.home.blog .site-main .posts-wrap,
html body.home.blog .site-main .content-list,
html body.home.blog .site-main .row:has(> article),
html body.home.blog .site-main *:has(> article.post),
html body.home.blog .site-main *:has(> .read-single),
html body.home.blog .site-main *:has(> .grid-item) {
    align-items: start !important;
    align-content: start !important;
    grid-auto-rows: auto !important;
}


/* ---------------------------------------------------------
   2. REMOVE HEIGHT, PADDING AND GREY BACKING FROM EVERY
      POSSIBLE HOMEPAGE IMAGE PARENT
   --------------------------------------------------------- */

html body.home.blog .site-main article :is(
    div,
    figure,
    picture,
    span,
    a
):has(> img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley)),

html body.home.blog .site-main article :is(
    div,
    figure,
    picture,
    span
):has(> a > img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley)),

html body.home.blog .site-main :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image
) {
    display: block !important;
    position: relative !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;

    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;

    line-height: 0 !important;
    font-size: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;

    -webkit-filter: none !important;
    filter: none !important;
}


/* Do not erase a real CoverNews CSS background image.
   These selectors restore the inline image after the general
   wrapper reset above by preserving background-image. */

html body.home.blog .site-main article [style*="background-image"],
html body.home.blog .site-main .data-bg,
html body.home.blog .site-main .read-img.data-bg,
html body.home.blog .site-main .aft-image.data-bg,
html body.home.blog .site-main .post-image.data-bg,
html body.home.blog .site-main .featured-post-image.data-bg {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--la-home-image-ratio) !important;

    margin: 0 0 14px !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;

    background-color: transparent !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* Parents of CSS-background thumbnails must collapse exactly
   around the 1200:628 image layer. */

html body.home.blog .site-main article :is(
    div,
    figure,
    picture,
    span,
    a
):has(> [style*="background-image"]),

html body.home.blog .site-main article :is(
    div,
    figure,
    picture,
    span,
    a
):has(> .data-bg) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;

    margin: 0 !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   3. NORMAL HOMEPAGE IMAGE FILES — 1200:628
   --------------------------------------------------------- */

html body.home.blog .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.home.blog .site-main .read-single img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.home.blog .site-main .list-style img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.home.blog .site-main .grid-item img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    display: block !important;
    position: static !important;
    float: none !important;
    vertical-align: top !important;

    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--la-home-image-ratio) !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center center !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   4. REMOVE HOMEPAGE IMAGE PLACEHOLDERS AND OVERLAYS
   --------------------------------------------------------- */

html body.home.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg
)::before,

html body.home.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg
)::after {
    content: none !important;
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* ---------------------------------------------------------
   5. RESET THE HOMEPAGE DETAILS AREA BELOW EACH IMAGE
   This removes a grey backing or inherited fixed height without
   hiding the title, author, excerpt or Read Article link.
   --------------------------------------------------------- */

/* ---------------------------------------------------------
   6. SMALL SCREENS
   --------------------------------------------------------- */

@media screen and (max-width: 1200px) {
    html body.home.blog .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
    html body.home.blog .site-main article [style*="background-image"],
    html body.home.blog .site-main article .data-bg {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* =========================================================
   FINAL OVERRIDE — HIDE TITLES ON WORDPRESS PAGES ONLY
   =========================================================
   Removes the visible title from static/non-post pages while
   preserving individual post titles, archive titles, search
   results and article titles inside Query Loops or post grids.
   ========================================================= */

/* Classic CoverNews / WordPress page templates. */
html body.page .site-main > article.page > .entry-header > .entry-title,
html body.page .site-main > article.type-page > .entry-header > .entry-title,
html body.page main#primary > article.page > .entry-header > .entry-title,
html body.page main#primary > article.type-page > .entry-header > .entry-title,
html body.page .content-area > article.page > .entry-header > .entry-title,
html body.page .content-area > article.type-page > .entry-header > .entry-title,

/* Alternate theme page-title structures. */
html body.page .site-main > .page-header > .page-title,
html body.page main#primary > .page-header > .page-title,
html body.page .content-area > .page-header > .page-title,
html body.page .site-main > h1.entry-title,
html body.page main#primary > h1.entry-title,

/* Block-theme or block-template page titles. */
html body.page .site-main > .wp-block-post-title,
html body.page .site-main > h1.wp-block-post-title,
html body.page main#primary > .wp-block-post-title,
html body.page main#primary > h1.wp-block-post-title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Remove an entry-header only when the hidden page title is its
   sole element. Headers containing an image or other content stay. */
html body.page .site-main > article.page > .entry-header:has(> .entry-title):not(:has(> :not(.entry-title))),
html body.page .site-main > article.type-page > .entry-header:has(> .entry-title):not(:has(> :not(.entry-title))),
html body.page main#primary > article.page > .entry-header:has(> .entry-title):not(:has(> :not(.entry-title))),
html body.page main#primary > article.type-page > .entry-header:has(> .entry-title):not(:has(> :not(.entry-title))) {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* Remove residual top spacing without touching nested post cards. */
html body.page .site-main > article.page,
html body.page .site-main > article.type-page,
html body.page main#primary > article.page,
html body.page main#primary > article.type-page {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* =========================================================
   FINAL BLACK-AND-WHITE IMAGE OVERRIDE
   All website images are black and white.
   Masthead and header images remain in full colour.
   This block must remain at the absolute end of the stylesheet.
   ========================================================= */

/*
 * The #page ID gives this rule enough specificity to override
 * the older static-page and Limerick Generations colour rules.
 */
html body:not(.wp-admin) #page img,
html body:not(.wp-admin) #page picture img,
html body:not(.wp-admin) #page .wp-block-cover__image-background {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Keep every masthead and header image in its original full colour. */
html body:not(.wp-admin) #page #masthead img,
html body:not(.wp-admin) #page header.site-header img,
html body:not(.wp-admin) #page .site-header img,
html body:not(.wp-admin) #page .header-layout-1 img,
html body:not(.wp-admin) #page .site-branding img,
html body:not(.wp-admin) #page .site-logo img,
html body:not(.wp-admin) #page .custom-logo,
html body:not(.wp-admin) #page .custom-logo-link img,
html body:not(.wp-admin) #page .header-image img,
html body:not(.wp-admin) #page .custom-header img,
html body:not(.wp-admin) #page .wp-custom-header img,
html body:not(.wp-admin) #masthead img,
html body:not(.wp-admin) header.site-header img,
html body:not(.wp-admin) .site-header img,
html body:not(.wp-admin) .header-layout-1 img,
html body:not(.wp-admin) .site-branding img,
html body:not(.wp-admin) .site-logo img,
html body:not(.wp-admin) .custom-logo,
html body:not(.wp-admin) .custom-logo-link img,
html body:not(.wp-admin) .header-image img,
html body:not(.wp-admin) .custom-header img,
html body:not(.wp-admin) .wp-custom-header img {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

/* =========================================================
   PUBLISHED SITE — PRIMARY NAVIGATION AND LOWER-MENU REPAIR
   =========================================================

   Purpose:
   1. Preserve the genuine navigation in the site header.
   2. Keep desktop dropdowns closed until hover or keyboard focus.
   3. Remove duplicate primary menus printed after page content.
   4. Remove footer navigation, footer links and CoverNews credits.
   5. Collapse the dark or empty containers left behind.
   ========================================================= */


/* ---------------------------------------------------------
   KEEP THE GENUINE TOP HEADER AND PRIMARY MENU VISIBLE
   --------------------------------------------------------- */

html body .header-layout-1,
html body #masthead,
html body header.site-header,
html body .site-header {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
}

html body .header-layout-1 .main-navigation,
html body #masthead .main-navigation,
html body header.site-header .main-navigation,
html body .site-header .main-navigation,
html body #site-navigation {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    overflow: visible !important;
    pointer-events: auto !important;
}

html body .header-layout-1 .main-navigation a,
html body #masthead .main-navigation a,
html body header.site-header .main-navigation a,
html body .site-header .main-navigation a,
html body #site-navigation a {
    color: #111111 !important;
    text-decoration-color: #111111 !important;
}


/* ---------------------------------------------------------
   DESKTOP DROPDOWNS — CLOSED UNTIL HOVER OR KEYBOARD FOCUS
   --------------------------------------------------------- */

@media screen and (min-width: 769px) {

    html body .header-layout-1 .main-navigation ul ul,
    html body #masthead .main-navigation ul ul,
    html body header.site-header .main-navigation ul ul,
    html body .site-header .main-navigation ul ul,
    html body #site-navigation ul ul {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;

        position: absolute !important;
        top: 100% !important;
        left: 0 !important;

        height: auto !important;
        max-height: none !important;

        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #111111 !important;

        pointer-events: none !important;
    }

    html body .header-layout-1 .main-navigation li:hover > ul,
    html body .header-layout-1 .main-navigation li:focus-within > ul,
    html body #masthead .main-navigation li:hover > ul,
    html body #masthead .main-navigation li:focus-within > ul,
    html body header.site-header .main-navigation li:hover > ul,
    html body header.site-header .main-navigation li:focus-within > ul,
    html body .site-header .main-navigation li:hover > ul,
    html body .site-header .main-navigation li:focus-within > ul,
    html body #site-navigation li:hover > ul,
    html body #site-navigation li:focus-within > ul {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    html body .header-layout-1 .main-navigation ul ul ul,
    html body #masthead .main-navigation ul ul ul,
    html body header.site-header .main-navigation ul ul ul,
    html body .site-header .main-navigation ul ul ul,
    html body #site-navigation ul ul ul {
        top: -2px !important;
        left: 100% !important;
    }
}


/* ---------------------------------------------------------
   MOBILE MENU — LET COVERNEWS CONTROL OPEN AND CLOSED STATES
   --------------------------------------------------------- */

@media screen and (max-width: 768px) {

    html body .header-layout-1 .main-navigation ul ul,
    html body #masthead .main-navigation ul ul,
    html body header.site-header .main-navigation ul ul,
    html body .site-header .main-navigation ul ul,
    html body #site-navigation ul ul {
        position: static !important;
        width: 100% !important;
        min-width: 100% !important;
        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #111111 !important;
    }
}


/* ---------------------------------------------------------
   AREA IMMEDIATELY BELOW THE TOP NAVIGATION
   --------------------------------------------------------- */

html body #content,
html body .site-content,
html body .content-area,
html body .site-main,
html body main.site-main,
html body .main-content,
html body .content-wrapper {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
}

html body #content,
html body .site-content {
    position: relative !important;
    z-index: 1 !important;
    clear: both !important;
}


/* ---------------------------------------------------------
   REMOVE ONLY A DUPLICATED PRIMARY MENU AFTER PAGE CONTENT
   The genuine Footer Menu is deliberately excluded.
   --------------------------------------------------------- */

html body #content ~ .main-navigation,
html body #content ~ #site-navigation,
html body #content ~ nav[id*="primary" i],
html body #content ~ nav[class*="primary" i],
html body #content ~ nav[aria-label*="primary" i],
html body #content ~ nav[aria-label*="main menu" i],

html body .site-content ~ .main-navigation,
html body .site-content ~ #site-navigation,
html body .site-content ~ nav[id*="primary" i],
html body .site-content ~ nav[class*="primary" i],
html body .site-content ~ nav[aria-label*="primary" i],
html body .site-content ~ nav[aria-label*="main menu" i],

html body main.site-main ~ .main-navigation,
html body main.site-main ~ #site-navigation,
html body .site-main ~ .main-navigation,
html body .site-main ~ #site-navigation {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* ---------------------------------------------------------
   FOOTER MENU — MATCH THE MAIN NAVIGATION DESIGN
   White background, dark text, green double borders,
   matching Garamond typography, separators and hover effect.
   --------------------------------------------------------- */

/* Remove the obsolete custom footer that duplicated the full Primary Menu. */

html body #la-custom-footer {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* Keep the genuine theme footer available, but visually neutral. */

html body footer.site-footer,
html body #colophon,
html body footer[role="contentinfo"],
html body .site-footer-container,
html body .footer-wrapper,
html body .footer-container,
html body .footer-widgets,
html body .footer-widget-area {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    box-shadow: none !important;
    overflow: visible !important;
}


/* Hide the visible widget heading “Footer Menu”, just as the main menu has no title. */

html body .widget_nav_menu:has(#menu-footer-menu) .widget-title,
html body .widget_nav_menu:has(.menu-footer-menu-container) .widget-title,
html body .widget_nav_menu:has(#menu-footer-menu) .wp-block-heading,
html body .widget_nav_menu:has(.menu-footer-menu-container) .wp-block-heading,
html body nav[aria-label*="footer menu" i] + .wp-block-heading,
html body .wp-block-heading:has(+ nav[aria-label*="footer menu" i]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}


/* Genuine Footer Menu outer container — identical visual frame to Main Navigation. */

html body .menu-footer-menu-container,
html body nav:has(> #menu-footer-menu),
html body #footer-navigation,
html body #site-footer-menu,
html body .footer-navigation,
html body nav[aria-label*="footer menu" i] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    float: none !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    border-top: 3px double #2F7D3B !important;
    border-right: 0 !important;
    border-bottom: 3px double #2F7D3B !important;
    border-left: 0 !important;

    box-shadow: 0 2px 8px rgba(47, 125, 59, 0.12) !important;
    overflow: visible !important;
    pointer-events: auto !important;
    box-sizing: border-box !important;
}


/* First-level Footer Menu list — centred exactly like the desktop Main Menu. */

html body .menu-footer-menu-container > ul.menu,
html body ul#menu-footer-menu,
html body #footer-navigation > ul,
html body #site-footer-menu > ul,
html body .footer-navigation > ul,
html body nav[aria-label*="footer menu" i] > ul,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container {
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    flex-wrap: wrap !important;
    gap: 0 !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    list-style: none !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    overflow: visible !important;
}


/* Footer Menu items — same white panels and green separators as the Main Menu. */

html body .menu-footer-menu-container li,
html body #menu-footer-menu li,
html body #footer-navigation li,
html body #site-footer-menu li,
html body .footer-navigation li,
html body nav[aria-label*="footer menu" i] li,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-item {
    display: block !important;
    position: relative !important;
    float: none !important;

    width: auto !important;
    max-width: none !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    list-style: none !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    border-top: 0 !important;
    border-right: 1px solid rgba(47, 125, 59, 0.25) !important;
    border-bottom: 0 !important;
    border-left: 0 !important;

    overflow: visible !important;
}

html body .menu-footer-menu-container li:last-child,
html body #menu-footer-menu li:last-child,
html body #footer-navigation li:last-child,
html body #site-footer-menu li:last-child,
html body .footer-navigation li:last-child,
html body nav[aria-label*="footer menu" i] li:last-child {
    border-right: 0 !important;
}


/* Footer Menu links — same typography, height and spacing as Main Navigation. */

html body .menu-footer-menu-container a,
html body #menu-footer-menu a,
html body #footer-navigation a,
html body #site-footer-menu a,
html body .footer-navigation a,
html body nav[aria-label*="footer menu" i] a,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-item__content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;

    min-height: 44px !important;
    height: auto !important;

    margin: 0 !important;
    padding: 15px 20px !important;

    border: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.4px !important;

    text-align: center !important;
    text-transform: none !important;
    text-decoration: none !important;
    text-decoration-color: #111111 !important;
    white-space: normal !important;

    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    box-sizing: border-box !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease !important;
}


/* Remove theme-generated dashes, icons and dropdown symbols from the Footer Menu. */

html body .menu-footer-menu-container li::before,
html body .menu-footer-menu-container li::after,
html body .menu-footer-menu-container a::before,
html body #menu-footer-menu li::before,
html body #menu-footer-menu li::after,
html body #menu-footer-menu a::before,
html body nav[aria-label*="footer menu" i] li::before,
html body nav[aria-label*="footer menu" i] li::after,
html body nav[aria-label*="footer menu" i] a::before {
    content: none !important;
    display: none !important;
}

html body .menu-footer-menu-container svg,
html body .menu-footer-menu-container i,
html body .menu-footer-menu-container .dropdown-toggle,
html body .menu-footer-menu-container .sub-menu-toggle,
html body #menu-footer-menu svg,
html body #menu-footer-menu i,
html body #menu-footer-menu .dropdown-toggle,
html body #menu-footer-menu .sub-menu-toggle,
html body nav[aria-label*="footer menu" i] svg,
html body nav[aria-label*="footer menu" i] i,
html body nav[aria-label*="footer menu" i] button {
    display: none !important;
}


/* Match the Main Menu hover and keyboard-focus treatment. */

html body .menu-footer-menu-container a:hover,
html body .menu-footer-menu-container a:focus,
html body #menu-footer-menu a:hover,
html body #menu-footer-menu a:focus,
html body #footer-navigation a:hover,
html body #footer-navigation a:focus,
html body #site-footer-menu a:hover,
html body #site-footer-menu a:focus,
html body .footer-navigation a:hover,
html body .footer-navigation a:focus,
html body nav[aria-label*="footer menu" i] a:hover,
html body nav[aria-label*="footer menu" i] a:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    text-decoration: underline !important;
    text-decoration-color: #111111 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 5px !important;

    outline: none !important;
}


/* Match the Main Menu current-page indicator. */

html body .menu-footer-menu-container .current-menu-item > a,
html body .menu-footer-menu-container .current-menu-ancestor > a,
html body .menu-footer-menu-container .current_page_item > a,
html body .menu-footer-menu-container .current_page_ancestor > a,
html body #menu-footer-menu .current-menu-item > a,
html body #menu-footer-menu .current-menu-ancestor > a,
html body #menu-footer-menu .current_page_item > a,
html body #menu-footer-menu .current_page_ancestor > a,
html body nav[aria-label*="footer menu" i] .current-menu-item > a,
html body nav[aria-label*="footer menu" i] .current_page_item > a {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    box-shadow: inset 0 -4px 0 #2F7D3B !important;
}


/* Mobile Footer Menu — same full-width white rows as the opened Main Menu. */

@media screen and (max-width: 768px) {

    html body .menu-footer-menu-container > ul.menu,
    html body ul#menu-footer-menu,
    html body #footer-navigation > ul,
    html body #site-footer-menu > ul,
    html body .footer-navigation > ul,
    html body nav[aria-label*="footer menu" i] > ul,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation__container {
        display: block !important;
        width: 100% !important;
    }

    html body .menu-footer-menu-container li,
    html body #menu-footer-menu li,
    html body #footer-navigation li,
    html body #site-footer-menu li,
    html body .footer-navigation li,
    html body nav[aria-label*="footer menu" i] li,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation-item {
        width: 100% !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(47, 125, 59, 0.20) !important;
    }

    html body .menu-footer-menu-container li:last-child,
    html body #menu-footer-menu li:last-child,
    html body #footer-navigation li:last-child,
    html body #site-footer-menu li:last-child,
    html body .footer-navigation li:last-child,
    html body nav[aria-label*="footer menu" i] li:last-child {
        border-bottom: 0 !important;
    }

    html body .menu-footer-menu-container a,
    html body #menu-footer-menu a,
    html body #footer-navigation a,
    html body #site-footer-menu a,
    html body .footer-navigation a,
    html body nav[aria-label*="footer menu" i] a,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation-item__content {
        width: 100% !important;
        justify-content: space-between !important;
        padding: 13px 16px !important;
        font-size: 13px !important;
        text-align: left !important;
    }
}


/* ---------------------------------------------------------
   REMOVE THE COVERNEWS CREDIT AND SECONDARY BOTTOM STRIP
   --------------------------------------------------------- */

html body .site-info,
html body .site-info-wrap,
html body .footer-site-info,
html body .aft-footer-copyright,
html body .af-footer-copyright,
html body .footer-credits,
html body .theme-credit,
html body .powered-by,
html body .copyright-wrap:has(a),
html body .copyright-bar:has(a) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* ---------------------------------------------------------
   FOOTER CONTAINERS ARE STYLED IN THE FOOTER MENU SECTION ABOVE
   --------------------------------------------------------- */


/* Keep any remaining plain copyright line tidy and unlinked. */

html body footer.site-footer .widget_text,
html body footer.site-footer .textwidget,
html body footer.site-footer .wp-block-paragraph,
html body #colophon .widget_text,
html body #colophon .textwidget,
html body #colophon .wp-block-paragraph,
html body .limerick-archives-copyright,
html body #limerick-archives-copyright {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto !important;
    padding: 8px 16px !important;

    background: #ffffff !important;
    color: #111111 !important;

    border-top: 1px solid rgba(47, 125, 59, 0.25) !important;

    font-size: 12pt !important;
    line-height: 1.4 !important;
    text-align: center !important;
}


/* ---------------------------------------------------------
   PRINT — DO NOT PRINT THE FOOTER MENU OR THEME CREDIT
   --------------------------------------------------------- */

@media print {

    footer.site-footer nav,
    #colophon nav,
    footer[role="contentinfo"] nav,
    .footer-navigation,
    .footer-menu,
    .bottom-navigation,
    .bottom-menu,
    .site-info,
    .footer-credits,
    .theme-credit,
    .powered-by {
        display: none !important;
    }
}

/* =========================================================
   FINAL FOOTER WRAPPER RESET — REMOVE THE GREY BOX
   =========================================================
   CoverNews places Footer Menu inside one or more native
   footer-widget wrappers. These parent containers must remain
   present so the menu displays, but their theme background,
   padding, borders and shadow are removed completely.
   ========================================================= */

html body .af-footer,
html body .aft-footer,
html body .footer-widgets-wrapper,
html body .footer-sidebar-wrapper,
html body .footer-widgets,
html body .footer-widget-area,
html body .footer-bottom,
html body .bottom-footer,
html body footer.site-footer .af-container,
html body #colophon .af-container,
html body footer.site-footer .af-container-row,
html body #colophon .af-container-row,
html body footer.site-footer .container-wrapper,
html body #colophon .container-wrapper,
html body footer.site-footer .widget-area,
html body #colophon .widget-area,
html body footer.site-footer .widget_nav_menu:has(#menu-footer-menu),
html body #colophon .widget_nav_menu:has(#menu-footer-menu),
html body footer.site-footer .widget_nav_menu:has(.menu-footer-menu-container),
html body #colophon .widget_nav_menu:has(.menu-footer-menu-container) {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    filter: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* Remove decorative layers attached to the grey wrapper. */

html body .af-footer::before,
html body .af-footer::after,
html body .aft-footer::before,
html body .aft-footer::after,
html body .footer-widgets-wrapper::before,
html body .footer-widgets-wrapper::after,
html body .footer-sidebar-wrapper::before,
html body .footer-sidebar-wrapper::after,
html body footer.site-footer .widget_nav_menu:has(#menu-footer-menu)::before,
html body footer.site-footer .widget_nav_menu:has(#menu-footer-menu)::after,
html body #colophon .widget_nav_menu:has(#menu-footer-menu)::before,
html body #colophon .widget_nav_menu:has(#menu-footer-menu)::after {
    content: none !important;
    display: none !important;
}

/* =========================================================
   ABSOLUTE FOOTER SHELL RESET — REMOVE REMAINING GREY BOX
   =========================================================
   The CoverNews footer root can retain its own grey background
   even after the inner widget wrappers have been reset. These
   rules clear the outer footer shell while preserving the
   separately styled Footer Menu itself.
   ========================================================= */

html body footer#colophon,
html body footer.site-footer,
html body #colophon,
html body footer[role="contentinfo"],
html body .site-footer,
html body .site-footer-wrap,
html body .site-footer-wrapper,
html body .footer-wrapper,
html body .footer-container,
html body .footer-widget-wrapper,
html body .footer-widgets-section,
html body .footer-widget-section,
html body .primary-footer,
html body .secondary-footer,
html body .site-footer .container,
html body .site-footer .container-fluid,
html body .site-footer .af-container,
html body .site-footer .af-container-row,
html body .site-footer .row,
html body #colophon .container,
html body #colophon .container-fluid,
html body #colophon .af-container,
html body #colophon .af-container-row,
html body #colophon .row {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    filter: none !important;
    opacity: 1 !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

/* Reset the individual widget/aside box that holds Footer Menu. */

html body footer.site-footer .widget,
html body footer.site-footer aside,
html body #colophon .widget,
html body #colophon aside,
html body footer[role="contentinfo"] .widget,
html body footer[role="contentinfo"] aside {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Remove grey overlays and decorative pseudo-elements on the shell. */

html body footer#colophon::before,
html body footer#colophon::after,
html body footer.site-footer::before,
html body footer.site-footer::after,
html body #colophon::before,
html body #colophon::after,
html body footer[role="contentinfo"]::before,
html body footer[role="contentinfo"]::after,
html body .site-footer-wrap::before,
html body .site-footer-wrap::after,
html body .site-footer-wrapper::before,
html body .site-footer-wrapper::after,
html body .footer-wrapper::before,
html body .footer-wrapper::after,
html body .footer-container::before,
html body .footer-container::after,
html body .footer-widget-wrapper::before,
html body .footer-widget-wrapper::after {
    content: none !important;
    display: none !important;
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}


/* =========================================================
   FIXED FOOTER MENU + THEME-GREEN LOWER STRIP
   =========================================================
   Keeps the genuine Footer Menu fixed to the bottom of the
   browser window. The existing fixed header remains at the top,
   allowing the page content to scroll between both menus.

   A full-width theme-green strip sits immediately below the Footer
   Menu. Bottom page padding reserves the complete footer height
   so no article or page content is hidden behind it.
   ========================================================= */

:root {
    --la-footer-black-strip-height: 24px;
    --la-footer-menu-row-height: 51px;
    --la-fixed-footer-total-height: calc(
        var(--la-footer-menu-row-height) +
        var(--la-footer-black-strip-height) +
        6px
    );
}

/* Fix only the genuine public footer shell to the viewport. */

html body footer#colophon,
html body footer.site-footer,
html body #colophon,
html body footer[role="contentinfo"] {
    position: fixed !important;

    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    top: auto !important;

    z-index: 999998 !important;

    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 0 var(--la-footer-black-strip-height) 0 !important;

    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: 0 -3px 10px rgba(0, 0, 0, 0.12) !important;

    overflow: visible !important;
    box-sizing: border-box !important;
    transform: none !important;
}

/* The white navigation remains above the theme-green lower strip. */

html body footer.site-footer .menu-footer-menu-container,
html body #colophon .menu-footer-menu-container,
html body footer.site-footer nav:has(> #menu-footer-menu),
html body #colophon nav:has(> #menu-footer-menu),
html body footer.site-footer #footer-navigation,
html body #colophon #footer-navigation,
html body footer.site-footer #site-footer-menu,
html body #colophon #site-footer-menu,
html body footer.site-footer .footer-navigation,
html body #colophon .footer-navigation,
html body footer.site-footer nav[aria-label*="footer menu" i],
html body #colophon nav[aria-label*="footer menu" i] {
    position: relative !important;
    z-index: 2 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Keep the fixed menu to one predictable row on every device. */

html body .menu-footer-menu-container > ul.menu,
html body ul#menu-footer-menu,
html body #footer-navigation > ul,
html body #site-footer-menu > ul,
html body .footer-navigation > ul,
html body nav[aria-label*="footer menu" i] > ul,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container {
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: var(--la-footer-menu-row-height) !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: thin !important;
}

html body .menu-footer-menu-container li,
html body #menu-footer-menu li,
html body #footer-navigation li,
html body #site-footer-menu li,
html body .footer-navigation li,
html body nav[aria-label*="footer menu" i] li,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-item {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;

    border-right: 1px solid rgba(47, 125, 59, 0.25) !important;
    border-bottom: 0 !important;
}

html body .menu-footer-menu-container li:last-child,
html body #menu-footer-menu li:last-child,
html body #footer-navigation li:last-child,
html body #site-footer-menu li:last-child,
html body .footer-navigation li:last-child,
html body nav[aria-label*="footer menu" i] li:last-child {
    border-right: 0 !important;
    border-bottom: 0 !important;
}

html body .menu-footer-menu-container a,
html body #menu-footer-menu a,
html body #footer-navigation a,
html body #site-footer-menu a,
html body .footer-navigation a,
html body nav[aria-label*="footer menu" i] a,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-item__content {
    min-height: var(--la-footer-menu-row-height) !important;
    height: var(--la-footer-menu-row-height) !important;
    width: auto !important;

    justify-content: center !important;

    padding: 0 20px !important;

    white-space: nowrap !important;
    text-align: center !important;
}

/* Reserve room below every page so content stops above the fixed menu. */

html body,
html body.home,
html body.blog,
html body.page,
html body.single,
html body.archive,
html body.search,
html body.error404,
html body.la-fixed-site-header {
    padding-bottom: var(--la-fixed-footer-total-height) !important;
}

html,
body {
    scroll-padding-bottom: var(--la-fixed-footer-total-height) !important;
}

/* Compact spacing for phones while retaining the same single-row design. */

@media screen and (max-width: 768px) {

    :root {
        --la-footer-menu-row-height: 47px;
        --la-footer-black-strip-height: 20px;
    }

    html body .menu-footer-menu-container > ul.menu,
    html body ul#menu-footer-menu,
    html body #footer-navigation > ul,
    html body #site-footer-menu > ul,
    html body .footer-navigation > ul,
    html body nav[aria-label*="footer menu" i] > ul,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation__container {
        display: flex !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        width: 100% !important;
    }

    html body .menu-footer-menu-container li,
    html body #menu-footer-menu li,
    html body #footer-navigation li,
    html body #site-footer-menu li,
    html body .footer-navigation li,
    html body nav[aria-label*="footer menu" i] li,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation-item {
        width: auto !important;
        min-width: max-content !important;
        border-right: 1px solid rgba(47, 125, 59, 0.25) !important;
        border-bottom: 0 !important;
    }

    html body .menu-footer-menu-container a,
    html body #menu-footer-menu a,
    html body #footer-navigation a,
    html body #site-footer-menu a,
    html body .footer-navigation a,
    html body nav[aria-label*="footer menu" i] a,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation-item__content {
        width: auto !important;
        min-height: var(--la-footer-menu-row-height) !important;
        height: var(--la-footer-menu-row-height) !important;

        justify-content: center !important;

        padding: 0 15px !important;

        font-size: 13px !important;
        text-align: center !important;
        white-space: nowrap !important;
    }
}

/* The fixed navigation and black strip must not print. */

@media print {

    html body footer#colophon,
    html body footer.site-footer,
    html body #colophon,
    html body footer[role="contentinfo"] {
        display: none !important;
        position: static !important;
    }

    html body {
        padding-bottom: 0 !important;
    }
}

/* =========================================================
   FINAL FIX — TAG / ARCHIVE / POST IMAGE GREY BOX REMOVAL
   =========================================================
   This is the only grey-box fix that should remain at the
   bottom of the stylesheet.

   Purpose:
   - Remove the exposed grey block beneath images on tag pages.
   - Remove grey image backing on archive/category/search pages.
   - Remove grey backing under the featured image on single posts.
   - Keep the real text, titles, excerpts, dates and Read Article
     links visible.
   ========================================================= */

:root {
    --la-archive-image-ratio: 300 / 157;
}


/* ---------------------------------------------------------
   1. Reset post cards and article shells on listing pages.
   --------------------------------------------------------- */

html body.tag .site-main article,
html body.category .site-main article,
html body.archive .site-main article,
html body.search .site-main article,
html body.blog .site-main article,
html body.author .site-main article,
html body.date .site-main article,
html body.tag .site-main .read-single,
html body.category .site-main .read-single,
html body.archive .site-main .read-single,
html body.search .site-main .read-single,
html body.blog .site-main .read-single,
html body.author .site-main .read-single,
html body.date .site-main .read-single,
html body.tag .site-main .list-style,
html body.category .site-main .list-style,
html body.archive .site-main .list-style,
html body.search .site-main .list-style,
html body.blog .site-main .list-style,
html body.author .site-main .list-style,
html body.date .site-main .list-style,
html body.tag .site-main .grid-item,
html body.category .site-main .grid-item,
html body.archive .site-main .grid-item,
html body.search .site-main .grid-item,
html body.blog .site-main .grid-item,
html body.author .site-main .grid-item,
html body.date .site-main .grid-item {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    box-shadow: none !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;

    overflow: visible !important;
}


/* ---------------------------------------------------------
   2. Image frames on tag/archive/category/search/blog pages.
   These are the most likely source of the grey block.
   --------------------------------------------------------- */

html body.tag .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image,
    figure
),
html body.category .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image,
    figure
),
html body.archive .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image,
    figure
),
html body.search .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image,
    figure
),
html body.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    .wp-block-latest-posts__featured-image,
    figure
) {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 0 14px 0 !important;
    padding: 0 !important;

    line-height: 0 !important;
    font-size: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   3. Keep CoverNews background-image thumbnails visible.
   Do not erase the inline background-image URL.
   --------------------------------------------------------- */

html body.tag .site-main article :is(.data-bg, [style*="background-image"]),
html body.category .site-main article :is(.data-bg, [style*="background-image"]),
html body.archive .site-main article :is(.data-bg, [style*="background-image"]),
html body.search .site-main article :is(.data-bg, [style*="background-image"]),
html body.blog .site-main article :is(.data-bg, [style*="background-image"]) {
    display: block !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: var(--la-archive-image-ratio) !important;

    margin: 0 0 14px 0 !important;
    padding: 0 !important;

    background-color: #ffffff !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   4. Links and pictures inside image frames.
   --------------------------------------------------------- */

html body.tag .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure
) > a,
html body.category .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure
) > a,
html body.archive .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure
) > a,
html body.search .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure
) > a,
html body.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure
) > a {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    line-height: 0 !important;
    font-size: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
}


/* ---------------------------------------------------------
   5. The actual image files on listing pages.
   --------------------------------------------------------- */

html body.tag .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.category .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.archive .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.search .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.blog .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    display: block !important;
    float: none !important;
    vertical-align: top !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center center !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    box-sizing: border-box !important;
}


/* ---------------------------------------------------------
   6. Remove hidden image overlays and pseudo-elements.
   --------------------------------------------------------- */

html body.tag .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::before,
html body.tag .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::after,
html body.category .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::before,
html body.category .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::after,
html body.archive .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::before,
html body.archive .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::after,
html body.search .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::before,
html body.search .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::after,
html body.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::before,
html body.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .data-bg,
    .wp-block-post-featured-image,
    figure
)::after {
    content: none !important;
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* ---------------------------------------------------------
   7. The text/details area below archive images must be white.
   This fixes the case where the grey box is not the image,
   but the CoverNews content container immediately beneath it.
   --------------------------------------------------------- */

html body.tag .site-main article :is(
    .read-details,
    .read-title,
    .entry-header,
    .entry-content,
    .entry-summary,
    .post-content,
    .post-content-wrapper,
    .article-content,
    .article-inner,
    .content-wrap,
    .content-wrapper,
    .content-caption,
    .archive-content,
    .entry-wrapper,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .entry-meta,
    .post-meta
),
html body.category .site-main article :is(
    .read-details,
    .read-title,
    .entry-header,
    .entry-content,
    .entry-summary,
    .post-content,
    .post-content-wrapper,
    .article-content,
    .article-inner,
    .content-wrap,
    .content-wrapper,
    .content-caption,
    .archive-content,
    .entry-wrapper,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .entry-meta,
    .post-meta
),
html body.archive .site-main article :is(
    .read-details,
    .read-title,
    .entry-header,
    .entry-content,
    .entry-summary,
    .post-content,
    .post-content-wrapper,
    .article-content,
    .article-inner,
    .content-wrap,
    .content-wrapper,
    .content-caption,
    .archive-content,
    .entry-wrapper,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .entry-meta,
    .post-meta
),
html body.search .site-main article :is(
    .read-details,
    .read-title,
    .entry-header,
    .entry-content,
    .entry-summary,
    .post-content,
    .post-content-wrapper,
    .article-content,
    .article-inner,
    .content-wrap,
    .content-wrapper,
    .content-caption,
    .archive-content,
    .entry-wrapper,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .entry-meta,
    .post-meta
),
html body.blog .site-main article :is(
    .read-details,
    .read-title,
    .entry-header,
    .entry-content,
    .entry-summary,
    .post-content,
    .post-content-wrapper,
    .article-content,
    .article-inner,
    .content-wrap,
    .content-wrapper,
    .content-caption,
    .archive-content,
    .entry-wrapper,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .entry-meta,
    .post-meta
) {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    box-shadow: none !important;
    border-left: 0 !important;
    border-right: 0 !important;

    min-height: 0 !important;
}


/* ---------------------------------------------------------
   8. Remove empty spacer/caption blocks directly beneath images.
   --------------------------------------------------------- */

html body :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image,
    .wp-block-image,
    figure
) + :is(
    .wp-block-spacer,
    .spacer,
    .empty,
    p:empty,
    div:empty,
    figcaption:empty,
    .wp-element-caption:empty
) {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;

    overflow: hidden !important;
}


/* ---------------------------------------------------------
   9. Single post featured image and image area.
   --------------------------------------------------------- */

html body.single-post .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .entry-thumbnail,
    .post-featured-image,
    .wp-block-post-featured-image,
    .entry-content figure,
    .entry-content .wp-block-image,
    .wp-caption
) {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    margin-bottom: 0 !important;
    padding-bottom: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    line-height: 0 !important;
    font-size: 0 !important;

    overflow: hidden !important;
}

html body.single-post .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .entry-thumbnail,
    .post-featured-image,
    .wp-block-post-featured-image,
    .entry-content figure,
    .entry-content .wp-block-image,
    .wp-caption
) img {
    display: block !important;
    vertical-align: top !important;

    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Restore readable captions after image line-height reset. */

html body.single-post .site-main article figcaption,
html body.single-post .site-main article .wp-caption-text,
html body.single-post .site-main article .wp-element-caption {
    display: block !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    margin: 6px auto 0 auto !important;
    padding: 0 !important;

    color: #111111 !important;

    font-size: 12pt !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


/* ---------------------------------------------------------
   10. Last-resort reset for CoverNews grey panels immediately
       after images. This does not hide real text.
   --------------------------------------------------------- */

html body.tag .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image
) + *,
html body.category .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image
) + *,
html body.archive .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image
) + *,
html body.search .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image
) + *,
html body.blog .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .wp-block-post-featured-image
) + *,
html body.single-post .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .entry-thumbnail,
    .post-featured-image,
    .wp-block-post-featured-image
) + * {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;

    box-shadow: none !important;
    border-left: 0 !important;
    border-right: 0 !important;
}


/* ---------------------------------------------------------
   11. Clear obsolete diagnostic/test blocks.
   --------------------------------------------------------- */

html body.tag .site-main .wp-block-spacer:empty,
html body.category .site-main .wp-block-spacer:empty,
html body.archive .site-main .wp-block-spacer:empty,
html body.search .site-main .wp-block-spacer:empty,
html body.blog .site-main .wp-block-spacer:empty,
html body.single-post .site-main .wp-block-spacer:empty {
    display: none !important;
}
/* =========================================================
   FINAL FIX — REMOVE GREY BOX BENEATH SINGLE POST IMAGE
   Limerick Archives / CoverNews
   ========================================================= */

/* Remove CoverNews grey image shell on individual posts */
body.single-post .entry-header,
body.single-post .entry-header .post-thumbnail,
body.single-post .entry-header .post-thumbnail.full-width-image,
body.single-post .entry-header .featured-image,
body.single-post .entry-header .full-width-image,
body.single-post .entry-header .read-img,
body.single-post .entry-header .post-image,
body.single-post .entry-header .aft-image,
body.single-post .entry-header .data-bg,
body.single-post .entry-header figure {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    padding: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;

    overflow: hidden !important;
}

/* Keep the actual featured image visible and flush */
body.single-post .entry-header .post-thumbnail img,
body.single-post .entry-header .post-thumbnail.full-width-image img,
body.single-post .entry-header .featured-image img,
body.single-post .entry-header .full-width-image img,
body.single-post .entry-header figure img,
body.single-post .entry-header .wp-post-image {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    border: none !important;
    box-shadow: none !important;

    vertical-align: top !important;
}

/* Remove empty grey theme/meta blocks directly below the image */
body.single-post .entry-header .post-thumbnail + .entry-meta,
body.single-post .entry-header .post-thumbnail + .aft-post-meta,
body.single-post .entry-header .post-thumbnail + .post-meta,
body.single-post .entry-header .post-thumbnail + .entry-summary,
body.single-post .entry-header .post-thumbnail + .post-excerpt,
body.single-post .entry-header .full-width-image + .entry-meta,
body.single-post .entry-header .full-width-image + .aft-post-meta,
body.single-post .entry-header .full-width-image + .post-meta,
body.single-post .entry-header .full-width-image + .entry-summary,
body.single-post .entry-header .full-width-image + .post-excerpt {
    display: none !important;
    visibility: hidden !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    overflow: hidden !important;
}

/* Remove any pseudo grey panel attached to the featured image */
body.single-post .entry-header .post-thumbnail::before,
body.single-post .entry-header .post-thumbnail::after,
body.single-post .entry-header .post-thumbnail.full-width-image::before,
body.single-post .entry-header .post-thumbnail.full-width-image::after,
body.single-post .entry-header .featured-image::before,
body.single-post .entry-header .featured-image::after,
body.single-post .entry-header .full-width-image::before,
body.single-post .entry-header .full-width-image::after,
body.single-post .entry-header .read-img::before,
body.single-post .entry-header .read-img::after,
body.single-post .entry-header .data-bg::before,
body.single-post .entry-header .data-bg::after {
    content: none !important;
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}

/* Reset normal text below the image so the article is not affected */
body.single-post .entry-content,
body.single-post .entry-content *,
body.single-post .limerick-archives-date {
    font-size: inherit;
    line-height: inherit;
}


/* =========================================================
   TAINACAN — LIMERICK PHOTOGRAPHIC ARCHIVE
   FINAL HOMEPAGE-STYLE DISPLAY
   =========================================================
   Purpose:
   - Make the photographic archive listing match the homepage feed.
   - One centred column only.
   - Use the same clean image-card behaviour as the homepage.
   - Remove the grey old-frame/base strip by using a homepage-style
     image crop from the top of the thumbnail.
   - Remove all previous forced "View Record" button effects.
   ========================================================= */

/* Main archive page width */
body[class*="limerick-photographic-archive"] .content-area,
body[class*="limerick-photographic-archive"] .site-main,
body.post-type-archive-tnc_col_item .content-area,
body.post-type-archive-tnc_col_item .site-main,
body.tax-tnc_tax .content-area,
body.tax-tnc_tax .site-main {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Hide archive sidebars so the layout matches the homepage column */
body[class*="limerick-photographic-archive"] #secondary,
body[class*="limerick-photographic-archive"] #secondary.widget-area,
body[class*="limerick-photographic-archive"] aside.sidebar,
body.post-type-archive-tnc_col_item #secondary,
body.post-type-archive-tnc_col_item #secondary.widget-area,
body.post-type-archive-tnc_col_item aside.sidebar,
body.tax-tnc_tax #secondary,
body.tax-tnc_tax #secondary.widget-area,
body.tax-tnc_tax aside.sidebar {
    display: none !important;
}

/* Archive item wrapper: one centred column, homepage-style spacing */
body[class*="limerick-photographic-archive"] .site-main .af-container-row,
body[class*="limerick-photographic-archive"] .site-main .aft-archive-wrapper,
body[class*="limerick-photographic-archive"] .site-main .archive-posts,
body[class*="limerick-photographic-archive"] .site-main .posts-wrapper,
body[class*="limerick-photographic-archive"] .site-main .posts-wrap,
body[class*="limerick-photographic-archive"] .site-main .content-list,
body[class*="limerick-photographic-archive"] .site-main .row:has(> article),
body[class*="limerick-photographic-archive"] .site-main *:has(> article.post),
body[class*="limerick-photographic-archive"] .site-main *:has(> .read-single),
body[class*="limerick-photographic-archive"] .site-main *:has(> .grid-item),
body.post-type-archive-tnc_col_item .site-main .af-container-row,
body.post-type-archive-tnc_col_item .site-main .aft-archive-wrapper,
body.post-type-archive-tnc_col_item .site-main .archive-posts,
body.post-type-archive-tnc_col_item .site-main .posts-wrapper,
body.post-type-archive-tnc_col_item .site-main .posts-wrap,
body.post-type-archive-tnc_col_item .site-main .content-list,
body.post-type-archive-tnc_col_item .site-main .row:has(> article),
body.post-type-archive-tnc_col_item .site-main *:has(> article.post),
body.post-type-archive-tnc_col_item .site-main *:has(> .read-single),
body.post-type-archive-tnc_col_item .site-main *:has(> .grid-item),
body.tax-tnc_tax .site-main .af-container-row,
body.tax-tnc_tax .site-main .aft-archive-wrapper,
body.tax-tnc_tax .site-main .archive-posts,
body.tax-tnc_tax .site-main .posts-wrapper,
body.tax-tnc_tax .site-main .posts-wrap,
body.tax-tnc_tax .site-main .content-list,
body.tax-tnc_tax .site-main .row:has(> article),
body.tax-tnc_tax .site-main *:has(> article.post),
body.tax-tnc_tax .site-main *:has(> .read-single),
body.tax-tnc_tax .site-main *:has(> .grid-item) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px !important;
    align-items: start !important;
    align-content: start !important;
    grid-auto-rows: auto !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

/* Individual archive record cards */
body[class*="limerick-photographic-archive"] .site-main article,
body[class*="limerick-photographic-archive"] .site-main .read-single,
body[class*="limerick-photographic-archive"] .site-main .list-style,
body[class*="limerick-photographic-archive"] .site-main .grid-item,
body.post-type-archive-tnc_col_item .site-main article,
body.post-type-archive-tnc_col_item .site-main .read-single,
body.post-type-archive-tnc_col_item .site-main .list-style,
body.post-type-archive-tnc_col_item .site-main .grid-item,
body.tax-tnc_tax .site-main article,
body.tax-tnc_tax .site-main .read-single,
body.tax-tnc_tax .site-main .list-style,
body.tax-tnc_tax .site-main .grid-item {
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    clear: both !important;
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 750px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    align-self: start !important;
    margin: 0 auto 32px !important;
    padding: 0 0 24px !important;
    border-bottom: 2px solid #2F7D3B !important;
    box-sizing: border-box !important;
    text-align: center !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    overflow: visible !important;
}

/* Remove all grey frames, old image shells and fixed-height wrappers */
body[class*="limerick-photographic-archive"] .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure,
    picture,
    a:has(> img)
),
body.post-type-archive-tnc_col_item .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure,
    picture,
    a:has(> img)
),
body.tax-tnc_tax .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    .post-thumb,
    .aft-post-thumbnail,
    .wp-block-post-featured-image,
    figure,
    picture,
    a:has(> img)
) {
    display: block !important;
    position: relative !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 0 0 14px !important;
    padding: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

/* Remove pseudo-elements that create old grey/green image backing */
body[class*="limerick-photographic-archive"] .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    figure,
    picture,
    a:has(> img)
)::before,
body[class*="limerick-photographic-archive"] .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    figure,
    picture,
    a:has(> img)
)::after,
body.post-type-archive-tnc_col_item .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    figure,
    picture,
    a:has(> img)
)::before,
body.post-type-archive-tnc_col_item .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    .archive-image,
    figure,
    picture,
    a:has(> img)
)::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
}

/* Archive images: full uploaded image, contained and centred — no crop */
body[class*="limerick-photographic-archive"] .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.post-type-archive-tnc_col_item .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.tax-tnc_tax .site-main article img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 320px !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto 14px auto !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    vertical-align: top !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    -webkit-filter: none !important;
    filter: none !important;
}

/* Hide any empty decorative panel that appears directly after image wrappers */
body[class*="limerick-photographic-archive"] .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    figure,
    picture
) + :empty,
body.post-type-archive-tnc_col_item .site-main article :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .read-img,
    .aft-image,
    .post-image,
    .featured-post-image,
    figure,
    picture
) + :empty {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    overflow: hidden !important;
}

/* Catalogue titles match the site styling but use archive green */
body[class*="limerick-photographic-archive"] .site-main article .entry-title,
body[class*="limerick-photographic-archive"] .site-main article .entry-title a,
body.post-type-archive-tnc_col_item .site-main article .entry-title,
body.post-type-archive-tnc_col_item .site-main article .entry-title a,
body.tax-tnc_tax .site-main article .entry-title,
body.tax-tnc_tax .site-main article .entry-title a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 7px auto 8px !important;
    padding: 0 !important;
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    text-decoration: none !important;
}

/* Remove small date/author lines on the catalogue cards */
body[class*="limerick-photographic-archive"] .site-main article .entry-meta,
body[class*="limerick-photographic-archive"] .site-main article .posted-on,
body[class*="limerick-photographic-archive"] .site-main article .byline,
body[class*="limerick-photographic-archive"] .site-main article time,
body.post-type-archive-tnc_col_item .site-main article .entry-meta,
body.post-type-archive-tnc_col_item .site-main article .posted-on,
body.post-type-archive-tnc_col_item .site-main article .byline,
body.post-type-archive-tnc_col_item .site-main article time {
    display: none !important;
}

/* Archive text/excerpts follow homepage text behaviour */
body[class*="limerick-photographic-archive"] .site-main article .entry-content,
body[class*="limerick-photographic-archive"] .site-main article .entry-summary,
body[class*="limerick-photographic-archive"] .site-main article .post-excerpt,
body[class*="limerick-photographic-archive"] .site-main article .aft-post-excerpt,
body.post-type-archive-tnc_col_item .site-main article .entry-content,
body.post-type-archive-tnc_col_item .site-main article .entry-summary,
body.post-type-archive-tnc_col_item .site-main article .post-excerpt,
body.post-type-archive-tnc_col_item .site-main article .aft-post-excerpt,
body.tax-tnc_tax .site-main article .entry-content,
body.tax-tnc_tax .site-main article .entry-summary,
body.tax-tnc_tax .site-main article .post-excerpt,
body.tax-tnc_tax .site-main article .aft-post-excerpt {
    display: block !important;
    clear: both !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 8px auto 14px !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-align: left !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: initial !important;
    background: transparent !important;
}

body[class*="limerick-photographic-archive"] .site-main article .entry-content p,
body[class*="limerick-photographic-archive"] .site-main article .entry-summary p,
body.post-type-archive-tnc_col_item .site-main article .entry-content p,
body.post-type-archive-tnc_col_item .site-main article .entry-summary p,
body.tax-tnc_tax .site-main article .entry-content p,
body.tax-tnc_tax .site-main article .entry-summary p {
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-align: left !important;
}

/* Buttons: leave the native theme text intact so it matches the homepage */
body[class*="limerick-photographic-archive"] .site-main article .more-link,
body[class*="limerick-photographic-archive"] .site-main article a.more-link,
body[class*="limerick-photographic-archive"] .site-main article .read-more,
body[class*="limerick-photographic-archive"] .site-main article .read-more a,
body[class*="limerick-photographic-archive"] .site-main article .aft-readmore a,
body.post-type-archive-tnc_col_item .site-main article .more-link,
body.post-type-archive-tnc_col_item .site-main article a.more-link,
body.post-type-archive-tnc_col_item .site-main article .read-more,
body.post-type-archive-tnc_col_item .site-main article .read-more a,
body.post-type-archive-tnc_col_item .site-main article .aft-readmore a {
    display: inline-block !important;
    align-self: center !important;
    width: auto !important;
    min-height: 44px !important;
    margin: auto auto 0 !important;
    padding: 8px 18px !important;
    border: 2px solid #2F7D3B !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
}

body[class*="limerick-photographic-archive"] .site-main article .more-link::before,
body[class*="limerick-photographic-archive"] .site-main article .more-link::after,
body[class*="limerick-photographic-archive"] .site-main article a.more-link::before,
body[class*="limerick-photographic-archive"] .site-main article a.more-link::after,
body[class*="limerick-photographic-archive"] .site-main article .read-more a::before,
body[class*="limerick-photographic-archive"] .site-main article .read-more a::after,
body[class*="limerick-photographic-archive"] .site-main article .aft-readmore a::before,
body[class*="limerick-photographic-archive"] .site-main article .aft-readmore a::after,
body.post-type-archive-tnc_col_item .site-main article .more-link::before,
body.post-type-archive-tnc_col_item .site-main article .more-link::after,
body.post-type-archive-tnc_col_item .site-main article a.more-link::before,
body.post-type-archive-tnc_col_item .site-main article a.more-link::after,
body.post-type-archive-tnc_col_item .site-main article .read-more a::before,
body.post-type-archive-tnc_col_item .site-main article .read-more a::after,
body.post-type-archive-tnc_col_item .site-main article .aft-readmore a::before,
body.post-type-archive-tnc_col_item .site-main article .aft-readmore a::after {
    content: none !important;
    display: none !important;
}

body[class*="limerick-photographic-archive"] .site-main article .more-link:hover,
body[class*="limerick-photographic-archive"] .site-main article a.more-link:hover,
body[class*="limerick-photographic-archive"] .site-main article .read-more:hover,
body[class*="limerick-photographic-archive"] .site-main article .read-more a:hover,
body[class*="limerick-photographic-archive"] .site-main article .aft-readmore a:hover,
body.post-type-archive-tnc_col_item .site-main article .more-link:hover,
body.post-type-archive-tnc_col_item .site-main article a.more-link:hover,
body.post-type-archive-tnc_col_item .site-main article .read-more:hover,
body.post-type-archive-tnc_col_item .site-main article .read-more a:hover,
body.post-type-archive-tnc_col_item .site-main article .aft-readmore a:hover {
    background: #ffffff !important;
    color: #111111 !important;
    border-color: #2F7D3B !important;
    text-decoration: underline !important;
    text-decoration-color: #111111 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

/* Pagination/navigation */
body[class*="limerick-photographic-archive"] .site-main .navigation,
body[class*="limerick-photographic-archive"] .site-main .pagination,
body[class*="limerick-photographic-archive"] .site-main .posts-navigation,
body.post-type-archive-tnc_col_item .site-main .navigation,
body.post-type-archive-tnc_col_item .site-main .pagination,
body.post-type-archive-tnc_col_item .site-main .posts-navigation,
body.tax-tnc_tax .site-main .navigation,
body.tax-tnc_tax .site-main .pagination,
body.tax-tnc_tax .site-main .posts-navigation {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

/* =========================================================
   TAINACAN COLLECTIONS LANDING PAGE — /collections/
   Keeps the collections index clean while preserving site style.
   ========================================================= */

body.post-type-archive-tnc_collections .content-area,
body.post-type-archive-tnc_collections .site-main,
body[class*="collections"] .content-area,
body[class*="collections"] .site-main {
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

body.post-type-archive-tnc_collections article,
body.archive article.tainacan-collection,
body[class*="collections"] article {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto 34px auto !important;
    padding: 0 0 24px !important;
    border-bottom: 2px solid #2F7D3B !important;
    text-align: center !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
}

body.post-type-archive-tnc_collections article .entry-title,
body.post-type-archive-tnc_collections article .entry-title a,
body.post-type-archive-tnc_collections article h2,
body.post-type-archive-tnc_collections article h3,
body[class*="collections"] article .entry-title,
body[class*="collections"] article .entry-title a,
body[class*="collections"] article h2,
body[class*="collections"] article h3 {
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

body.post-type-archive-tnc_collections article .entry-summary,
body.post-type-archive-tnc_collections article .entry-content,
body[class*="collections"] article .entry-summary,
body[class*="collections"] article .entry-content {
    max-width: 750px !important;
    margin: 12px auto 18px !important;
    text-align: left !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
}

/* /collections/ button may remain archive-specific */
body.post-type-archive-tnc_collections .more-link,
body.post-type-archive-tnc_collections a.more-link,
body.post-type-archive-tnc_collections .aft-readmore a,
body.post-type-archive-tnc_collections a.aft-readmore,
body[class*="collections"] .more-link,
body[class*="collections"] a.more-link,
body[class*="collections"] .aft-readmore a,
body[class*="collections"] a.aft-readmore {
    font-size: 0 !important;
    line-height: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    border: 2px solid #2F7D3B !important;
    color: transparent !important;
    background: #ffffff !important;
    padding: 8px 18px !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

body.post-type-archive-tnc_collections .more-link::after,
body.post-type-archive-tnc_collections a.more-link::after,
body.post-type-archive-tnc_collections .aft-readmore a::after,
body.post-type-archive-tnc_collections a.aft-readmore::after,
body[class*="collections"] .more-link::after,
body[class*="collections"] a.more-link::after,
body[class*="collections"] .aft-readmore a::after,
body[class*="collections"] a.aft-readmore::after {
    content: "View Archive" !important;
    color: #2F7D3B !important;
    font-size: 15px !important;
    line-height: 1.2 !important;
}

body.post-type-archive-tnc_collections .more-link:hover,
body.post-type-archive-tnc_collections a.more-link:hover,
body.post-type-archive-tnc_collections .aft-readmore a:hover,
body.post-type-archive-tnc_collections a.aft-readmore:hover,
body[class*="collections"] .more-link:hover,
body[class*="collections"] a.more-link:hover,
body[class*="collections"] .aft-readmore a:hover,
body[class*="collections"] a.aft-readmore:hover {
    background: #ffffff !important;
    color: transparent !important;
    text-decoration: underline !important;
    text-decoration-color: #111111 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
}

body.post-type-archive-tnc_collections .more-link:hover::after,
body.post-type-archive-tnc_collections a.more-link:hover::after,
body.post-type-archive-tnc_collections .aft-readmore a:hover::after,
body.post-type-archive-tnc_collections a.aft-readmore:hover::after,
body[class*="collections"] .more-link:hover::after,
body[class*="collections"] a.more-link:hover::after,
body[class*="collections"] .aft-readmore a:hover::after,
body[class*="collections"] a.aft-readmore:hover::after {
    color: #111111 !important;
}

@media screen and (max-width: 768px) {

    body[class*="limerick-photographic-archive"] .content-area,
    body[class*="limerick-photographic-archive"] .site-main,
    body.post-type-archive-tnc_col_item .content-area,
    body.post-type-archive-tnc_col_item .site-main,
    body.tax-tnc_tax .content-area,
    body.tax-tnc_tax .site-main,
    body.post-type-archive-tnc_collections .content-area,
    body.post-type-archive-tnc_collections .site-main,
    body[class*="collections"] .content-area,
    body[class*="collections"] .site-main {
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body[class*="limerick-photographic-archive"] .site-main article,
    body[class*="limerick-photographic-archive"] .site-main .read-single,
    body[class*="limerick-photographic-archive"] .site-main .list-style,
    body[class*="limerick-photographic-archive"] .site-main .grid-item,
    body.post-type-archive-tnc_col_item .site-main article,
    body.post-type-archive-tnc_col_item .site-main .read-single,
    body.post-type-archive-tnc_col_item .site-main .list-style,
    body.post-type-archive-tnc_col_item .site-main .grid-item,
    body.tax-tnc_tax .site-main article,
    body.tax-tnc_tax .site-main .read-single,
    body.tax-tnc_tax .site-main .list-style,
    body.tax-tnc_tax .site-main .grid-item {
        max-width: 100% !important;
    }
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — CHILD THEME IMAGE OUTPUT
   =========================================================
   This section works with the active CoverNews Child functions.php
   override, which outputs the archive-card featured image directly
   with these classes:

   .limerick-archive-child-override
   .limerick-archive-direct-thumbnail
   .limerick-archive-direct-featured-image

   It deliberately does NOT crop or force a fixed image height.
   ========================================================= */

body[class*="limerick-photographic-archive"] .limerick-archive-child-override,
body.post-type-archive-tnc_col_item .limerick-archive-child-override,
body.tax-tnc_tax .limerick-archive-child-override {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-card-header,
body.post-type-archive-tnc_col_item .limerick-archive-card-header,
body.tax-tnc_tax .limerick-archive-card-header {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-direct-thumbnail,
body.post-type-archive-tnc_col_item .limerick-archive-direct-thumbnail,
body.tax-tnc_tax .limerick-archive-direct-thumbnail {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto 16px auto !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    line-height: 0 !important;
    font-size: 0 !important;
    overflow: visible !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-direct-thumbnail a,
body.post-type-archive-tnc_col_item .limerick-archive-direct-thumbnail a,
body.tax-tnc_tax .limerick-archive-direct-thumbnail a {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    line-height: 0 !important;
    font-size: 0 !important;
    text-decoration: none !important;
    overflow: visible !important;
}

body[class*="limerick-photographic-archive"] img.limerick-archive-direct-featured-image,
body.post-type-archive-tnc_col_item img.limerick-archive-direct-featured-image,
body.tax-tnc_tax img.limerick-archive-direct-featured-image {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: 320px !important;
    aspect-ratio: auto !important;
    margin: 0 auto 14px auto !important;
    padding: 0 !important;
    vertical-align: top !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
}


body[class*="limerick-photographic-archive"] .limerick-archive-details-wrapper,
body.post-type-archive-tnc_col_item .limerick-archive-details-wrapper,
body.tax-tnc_tax .limerick-archive-details-wrapper,
body[class*="limerick-photographic-archive"] .limerick-archive-entry-details,
body.post-type-archive-tnc_col_item .limerick-archive-entry-details,
body.tax-tnc_tax .limerick-archive-entry-details {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-entry-details .entry-title,
body[class*="limerick-photographic-archive"] .limerick-archive-entry-details .entry-title a,
body.post-type-archive-tnc_col_item .limerick-archive-entry-details .entry-title,
body.post-type-archive-tnc_col_item .limerick-archive-entry-details .entry-title a,
body.tax-tnc_tax .limerick-archive-entry-details .entry-title,
body.tax-tnc_tax .limerick-archive-entry-details .entry-title a {
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 18pt !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-post-excerpt,
body.post-type-archive-tnc_col_item .limerick-archive-post-excerpt,
body.tax-tnc_tax .limerick-archive-post-excerpt {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 10px auto 16px auto !important;
    padding: 0 !important;
    color: #111111 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-align: left !important;
    border: none !important;
    box-shadow: none !important;
}

body[class*="limerick-photographic-archive"] .limerick-archive-post-excerpt p,
body.post-type-archive-tnc_col_item .limerick-archive-post-excerpt p,
body.tax-tnc_tax .limerick-archive-post-excerpt p {
    margin: 0 0 14px 0 !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
    text-align: left !important;
}

/* Hide old CoverNews image decorations if any survive around the child output. */
body[class*="limerick-photographic-archive"] .limerick-archive-child-override .figure-categories,
body[class*="limerick-photographic-archive"] .limerick-archive-child-override .figure-categories-bg,
body[class*="limerick-photographic-archive"] .limerick-archive-child-override .em-post-format,
body.post-type-archive-tnc_col_item .limerick-archive-child-override .figure-categories,
body.post-type-archive-tnc_col_item .limerick-archive-child-override .figure-categories-bg,
body.post-type-archive-tnc_col_item .limerick-archive-child-override .em-post-format,
body.tax-tnc_tax .limerick-archive-child-override .figure-categories,
body.tax-tnc_tax .limerick-archive-child-override .figure-categories-bg,
body.tax-tnc_tax .limerick-archive-child-override .em-post-format {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

@media screen and (max-width: 768px) {
    body[class*="limerick-photographic-archive"] .limerick-archive-child-override,
    body[class*="limerick-photographic-archive"] .limerick-archive-card-header,
    body[class*="limerick-photographic-archive"] .limerick-archive-direct-thumbnail,
    body[class*="limerick-photographic-archive"] .limerick-archive-details-wrapper,
    body[class*="limerick-photographic-archive"] .limerick-archive-entry-details,
    body[class*="limerick-photographic-archive"] .limerick-archive-post-excerpt,
    body.post-type-archive-tnc_col_item .limerick-archive-child-override,
    body.post-type-archive-tnc_col_item .limerick-archive-card-header,
    body.post-type-archive-tnc_col_item .limerick-archive-direct-thumbnail,
    body.post-type-archive-tnc_col_item .limerick-archive-details-wrapper,
    body.post-type-archive-tnc_col_item .limerick-archive-entry-details,
    body.post-type-archive-tnc_col_item .limerick-archive-post-excerpt,
    body.tax-tnc_tax .limerick-archive-child-override,
    body.tax-tnc_tax .limerick-archive-card-header,
    body.tax-tnc_tax .limerick-archive-direct-thumbnail,
    body.tax-tnc_tax .limerick-archive-details-wrapper,
    body.tax-tnc_tax .limerick-archive-entry-details,
    body.tax-tnc_tax .limerick-archive-post-excerpt {
        max-width: 100% !important;
    }
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — GRID PAGE FINAL CLEAN RULES
   =========================================================
   Purpose:
   - Keeps the main Images catalogue tidy.
   - Keeps catalogue photographs in full colour.
   - Hides the top catalogue title/intro only.
   - Keeps individual card descriptions visible.
   - Changes card buttons to VIEW IMAGE.
   ========================================================= */


/* Grid images and image wrappers stay in full colour. */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page img,
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page img,
html body:has(.current_page_item > a[href*="/limerick-photographic-archive/"]) #page img,
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page img,
html body:has(main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page img,
html body:has(#main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page img,
body[class*="limerick-photographic-archive"] #page img,
body.post-type-archive-tnc_col_item #page img,
body.tax-tnc_tax #page img {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture),
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture),
body[class*="limerick-photographic-archive"] #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture),
body.post-type-archive-tnc_col_item #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture),
body.tax-tnc_tax #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, figure, picture) {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}


/* Hide the catalogue page title and top intro only. */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page h1.page-title,
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page h1.page-title,
html body:has(.current_page_item > a[href*="/limerick-photographic-archive/"]) #page h1.page-title,
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page h1.page-title,
body[class*="limerick-photographic-archive"] #page h1.page-title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description,
html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description > p,
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description,
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description > p,
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description,
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page :is(.site-main, main, #main) > .archive-description > p,
body[class*="limerick-photographic-archive"] #page :is(.site-main, main, #main) > .archive-description,
body[class*="limerick-photographic-archive"] #page :is(.site-main, main, #main) > .archive-description > p {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}


/* Card descriptions remain visible. */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page article:has(a.aft-readmore[href*="/limerick-photographic-archive/"]) :is(.entry-summary, .entry-content, .post-excerpt, .archive-excerpt, .aft-post-excerpt, .article-excerpt, .archive-description, .full-item-discription, .full-item-description, p),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page article:has(a.aft-readmore[href*="/limerick-photographic-archive/"]) :is(.entry-summary, .entry-content, .post-excerpt, .archive-excerpt, .aft-post-excerpt, .article-excerpt, .archive-description, .full-item-discription, .full-item-description, p),
body[class*="limerick-photographic-archive"] #page article:has(a.aft-readmore[href*="/limerick-photographic-archive/"]) :is(.entry-summary, .entry-content, .post-excerpt, .archive-excerpt, .aft-post-excerpt, .article-excerpt, .archive-description, .full-item-discription, .full-item-description, p) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin-top: 8px !important;
    padding: 0 !important;
    color: #111111 !important;
    background: transparent !important;
    background-color: transparent !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    pointer-events: auto !important;
}


/* Change archive card button text to VIEW IMAGE. */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"],
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"],
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"],
body[class*="limerick-photographic-archive"] #page a.aft-readmore[href*="/limerick-photographic-archive/"] {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-decoration: none !important;
}

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"]::after,
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"]::after,
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page a.aft-readmore[href*="/limerick-photographic-archive/"]::after,
body[class*="limerick-photographic-archive"] #page a.aft-readmore[href*="/limerick-photographic-archive/"]::after {
    content: "VIEW IMAGE" !important;
    display: inline-block !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — SINGLE RECORD PAGES
   CLEAN CONFLICT-FREE FINAL VERSION
   =========================================================
   Purpose:
   - Single archive record pages use one clean layout.
   - The visible image remains in full colour.
   - The duplicated theme featured image is hidden.
   - Metadata headings are centred and readable.
   - Description text is justified.
   - View Image / document action buttons are hidden.
   - Previous / next navigation has breathing space below it.
   ========================================================= */


/* ---------------------------------------------------------
   1. RECORD PAGE WIDTH AND SIDEBAR REMOVAL
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .content-area,
body.single:has([class*="metadata-type-core_"]) .site-main,
body.single:has([class*="metadata-type-core_"]) article,
body.single:has([class*="metadata-type-core_"]) .entry-header,
body.single:has([class*="metadata-type-core_"]) .entry-content {
    width: 100% !important;
    max-width: 850px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

body.single:has([class*="metadata-type-core_"]) #secondary,
body.single:has([class*="metadata-type-core_"]) #secondary.widget-area,
body.single:has([class*="metadata-type-core_"]) aside.sidebar {
    display: none !important;
}


/* ---------------------------------------------------------
   2. TITLE
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .entry-title,
body.single:has([class*="metadata-type-core_"]) h1.entry-title,
body.single:has([class*="metadata-type-core_"]) .post-title,
body.single:has([class*="metadata-type-core_"]) .entry-header h1 {
    display: block !important;
    width: 100% !important;
    max-width: 850px !important;
    margin: 20px auto 22px !important;
    padding: 0 20px !important;
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 26pt !important;
    font-weight: 800 !important;
    line-height: 1.18 !important;
    text-align: center !important;
}

body.single:has([class*="metadata-type-core_"]) .entry-meta,
body.single:has([class*="metadata-type-core_"]) .posted-on,
body.single:has([class*="metadata-type-core_"]) .byline,
body.single:has([class*="metadata-type-core_"]) time {
    display: none !important;
}


/* ---------------------------------------------------------
   3. ONE IMAGE ONLY, USING THE COLOUR FEATURED IMAGE
   ---------------------------------------------------------
   The grid uses the featured image, which is the colour version.
   The Tainacan document/original image may be black and white, so
   the single record page shows the featured image and hides the
   duplicate document image below it.
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .entry-header .post-thumbnail,
body.single:has([class*="metadata-type-core_"]) .entry-header .featured-image,
body.single:has([class*="metadata-type-core_"]) .entry-header .full-width-image,
body.single:has([class*="metadata-type-core_"]) article > .post-thumbnail,
body.single:has([class*="metadata-type-core_"]) article > .featured-image,
body.single:has([class*="metadata-type-core_"]) article > .full-width-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single:has([class*="metadata-type-core_"]) .entry-header .post-thumbnail img,
body.single:has([class*="metadata-type-core_"]) .entry-header .featured-image img,
body.single:has([class*="metadata-type-core_"]) .entry-header .full-width-image img,
body.single:has([class*="metadata-type-core_"]) article > .post-thumbnail img,
body.single:has([class*="metadata-type-core_"]) article > .featured-image img,
body.single:has([class*="metadata-type-core_"]) article > .full-width-image img,
body.single:has([class*="metadata-type-core_"]) .wp-post-image {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single:has([class*="metadata-type-core_"]) .tainacan-item-document img,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-single img,
body.single:has([class*="metadata-type-core_"]) .tainacan-document img,
body.single:has([class*="metadata-type-core_"]) .entry-content .tainacan-item-document img,
body.single:has([class*="metadata-type-core_"]) .entry-content .tainacan-item-single img,
body.single:has([class*="metadata-type-core_"]) .entry-content .tainacan-document img {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body.single:has([class*="metadata-type-core_"]) figure,
body.single:has([class*="metadata-type-core_"]) picture,
body.single:has([class*="metadata-type-core_"]) .post-thumbnail,
body.single:has([class*="metadata-type-core_"]) .featured-image,
body.single:has([class*="metadata-type-core_"]) .full-width-image,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-single,
body.single:has([class*="metadata-type-core_"]) .tainacan-document,
body.single:has([class*="metadata-type-core_"]) .data-bg,
body.single:has([class*="metadata-type-core_"]) .aft-image,
body.single:has([class*="metadata-type-core_"]) .post-image,
body.single:has([class*="metadata-type-core_"]) .featured-post-image,
body.single:has([class*="metadata-type-core_"]) .read-img {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    text-align: center !important;
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single:has([class*="metadata-type-core_"]) figure::before,
body.single:has([class*="metadata-type-core_"]) figure::after,
body.single:has([class*="metadata-type-core_"]) picture::before,
body.single:has([class*="metadata-type-core_"]) picture::after,
body.single:has([class*="metadata-type-core_"]) .post-thumbnail::before,
body.single:has([class*="metadata-type-core_"]) .post-thumbnail::after,
body.single:has([class*="metadata-type-core_"]) .featured-image::before,
body.single:has([class*="metadata-type-core_"]) .featured-image::after,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document::before,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document::after {
    content: none !important;
    display: none !important;
}


/* ---------------------------------------------------------
   4. REMOVE GENERIC ARCHIVE RECORD HEADING
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .entry-content h2:first-of-type,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-section h2:first-of-type,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-section h2:first-of-type {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    overflow: hidden !important;
}

body.single:has([class*="metadata-type-core_"]) .entry-content h2:first-of-type::after,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-section h2:first-of-type::after,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-section h2:first-of-type::after {
    content: none !important;
    display: none !important;
}


/* ---------------------------------------------------------
   5. METADATA FIELDS
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 12px 0 14px !important;
    border-top: none !important;
    border-right: none !important;
    border-left: none !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.35) !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > h3,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > h4,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > h3,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > h4,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-label,
body.single:has([class*="metadata-type-core_"]) .metadata-label {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 7px !important;
    padding: 0 !important;
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16pt !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > p,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > div,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > p,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > div,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-value,
body.single:has([class*="metadata-type-core_"]) .metadata-value {
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
    text-align: center !important;
}

body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component a,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] a {
    color: #111111 !important;
    text-decoration: underline !important;
    text-decoration-color: #2F7D3B !important;
    text-underline-offset: 3px !important;
}


/* ---------------------------------------------------------
   6. DESCRIPTION FIELD
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 14px 0 16px !important;
    border-top: none !important;
    border-right: none !important;
    border-left: none !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.35) !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
}

body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description > h3,
body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description > h4,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] > h3,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] > h4 {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    color: #2F7D3B !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16pt !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-align: center !important;
}

body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description p,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] p,
body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description .tainacan-metadata-value,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] .tainacan-metadata-value {
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    color: #111111 !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
    text-align: justify !important;
    text-justify: inter-word !important;
    hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: normal !important;
}


/* ---------------------------------------------------------
   7. REMOVE SINGLE RECORD VIEW IMAGE BUTTON
   ---------------------------------------------------------
   The Limerick Photographic Archive item pages should show the
   record image and metadata only. Tainacan / theme document-action
   links such as View Image, Download, document download and
   attachment buttons are permanently hidden from public single
   archive record pages.
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .tainacan-item-document a[href*="download"]:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .tainacan-item-single a[href*="download"]:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) a[href*="download"]:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) a[download]:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .document-download,
body.single:has([class*="metadata-type-core_"]) .document-download a,
body.single:has([class*="metadata-type-core_"]) .attachment-download,
body.single:has([class*="metadata-type-core_"]) .attachment-download a,
body.single:has([class*="metadata-type-core_"]) .tainacan-document-download,
body.single:has([class*="metadata-type-core_"]) .tainacan-document-download a,
body.single:has([class*="metadata-type-core_"]) .tainacan-button-download,
body.single:has([class*="metadata-type-core_"]) a.tainacan-download,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-file-download,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-file-download a,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document-download,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document-download a,
body.single:has([class*="metadata-type-core_"]) .tainacan-single-item-document-download,
body.single:has([class*="metadata-type-core_"]) .tainacan-single-item-document-download a,
body.single:has([class*="metadata-type-core_"]) .tainacan-single-item-attachments,
body.single:has([class*="metadata-type-core_"]) .tainacan-single-item-attachments a:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .tainacan-single-item-collection--document a:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .single-item-collection--document a:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .single-item-document a:not(:has(img)),
body.single:has([class*="metadata-type-core_"]) .item-document a:not(:has(img)) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

body.single:has([class*="metadata-type-core_"]) .tainacan-item-document a[href*="download"]:not(:has(img))::before,
body.single:has([class*="metadata-type-core_"]) .tainacan-item-document a[href*="download"]:not(:has(img))::after,
body.single:has([class*="metadata-type-core_"]) a[href*="download"]:not(:has(img))::before,
body.single:has([class*="metadata-type-core_"]) a[href*="download"]:not(:has(img))::after,
body.single:has([class*="metadata-type-core_"]) a[download]:not(:has(img))::before,
body.single:has([class*="metadata-type-core_"]) a[download]:not(:has(img))::after,
body.single:has([class*="metadata-type-core_"]) .document-download::before,
body.single:has([class*="metadata-type-core_"]) .document-download::after,
body.single:has([class*="metadata-type-core_"]) .attachment-download::before,
body.single:has([class*="metadata-type-core_"]) .attachment-download::after,
body.single:has([class*="metadata-type-core_"]) .tainacan-document-download::before,
body.single:has([class*="metadata-type-core_"]) .tainacan-document-download::after,
body.single:has([class*="metadata-type-core_"]) .tainacan-button-download::before,
body.single:has([class*="metadata-type-core_"]) .tainacan-button-download::after {
    content: none !important;
    display: none !important;
}


/* ---------------------------------------------------------
   8. RECORD AND NAVIGATION SPACING
   --------------------------------------------------------- */

body.single:has([class*="metadata-type-core_"]) .entry-content {
    padding-bottom: 80px !important;
}

body.single:has([class*="metadata-type-core_"]) .entry-content > *:last-child,
body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component:last-of-type,
body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"]:last-of-type {
    margin-bottom: 60px !important;
}

body.single:has([class*="metadata-type-core_"]) .post-navigation,
body.single:has([class*="metadata-type-core_"]) .navigation.post-navigation,
body.single:has([class*="metadata-type-core_"]) .nav-links,
body.single:has([class*="metadata-type-core_"]) .previous-next,
body.single:has([class*="metadata-type-core_"]) .single-post-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 80px !important;
    padding-bottom: 45px !important;
    clear: both !important;
}

body.single:has([class*="metadata-type-core_"]) .post-navigation::after,
body.single:has([class*="metadata-type-core_"]) .navigation.post-navigation::after,
body.single:has([class*="metadata-type-core_"]) .nav-links::after {
    content: "" !important;
    display: block !important;
    clear: both !important;
    width: 100% !important;
    height: 50px !important;
}


/* ---------------------------------------------------------
   9. MOBILE RECORD LAYOUT
   --------------------------------------------------------- */

@media screen and (max-width: 768px) {

    body.single:has([class*="metadata-type-core_"]) .content-area,
    body.single:has([class*="metadata-type-core_"]) .site-main,
    body.single:has([class*="metadata-type-core_"]) article,
    body.single:has([class*="metadata-type-core_"]) .entry-header,
    body.single:has([class*="metadata-type-core_"]) .entry-content {
        max-width: 100% !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    body.single:has([class*="metadata-type-core_"]) .entry-title,
    body.single:has([class*="metadata-type-core_"]) h1.entry-title,
    body.single:has([class*="metadata-type-core_"]) .post-title,
    body.single:has([class*="metadata-type-core_"]) .entry-header h1 {
        font-size: 21pt !important;
        line-height: 1.2 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    body.single:has([class*="metadata-type-core_"]) .entry-content img,
    body.single:has([class*="metadata-type-core_"]) .tainacan-item-document img,
    body.single:has([class*="metadata-type-core_"]) .tainacan-item-single img,
    body.single:has([class*="metadata-type-core_"]) .wp-post-image,
    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"],
    body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] {
        max-width: 100% !important;
    }

    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > h3,
    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > h4,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > h3,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > h4,
    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-label,
    body.single:has([class*="metadata-type-core_"]) .metadata-label,
    body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description > h3,
    body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description > h4 {
        font-size: 14.5pt !important;
    }

    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > p,
    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-component > div,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > p,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-"] > div,
    body.single:has([class*="metadata-type-core_"]) .tainacan-metadata-value,
    body.single:has([class*="metadata-type-core_"]) .metadata-value {
        font-size: 15px !important;
        line-height: 1.6 !important;
        text-align: center !important;
    }

    body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description p,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] p,
    body.single:has([class*="metadata-type-core_"]) .metadata-type-core_description .tainacan-metadata-value,
    body.single:has([class*="metadata-type-core_"]) [class*="metadata-type-core_description"] .tainacan-metadata-value {
        font-size: 15.5px !important;
        line-height: 1.65 !important;
        text-align: left !important;
    }

    body.single:has([class*="metadata-type-core_"]) .post-navigation,
    body.single:has([class*="metadata-type-core_"]) .navigation.post-navigation,
    body.single:has([class*="metadata-type-core_"]) .nav-links {
        margin-bottom: 60px !important;
        padding-bottom: 35px !important;
    }
}


/* =========================================================
   SINGLE IMAGE / POST PAGES — FORCE DISPLAYED IMAGE COLOUR
   =========================================================
   This final safety rule prevents opened image pages from being
   caught by any older black-and-white article-image styling.
   ========================================================= */

body.single .site-content img,
body.single .content-area img,
body.single .site-main img,
body.single .main-content img,
body.single article img,
body.single .entry-header img,
body.single .entry-content img,
body.single .entry-summary img,
body.single .post-thumbnail img,
body.single .featured-image img,
body.single .full-width-image img,
body.single .wp-post-image,
body.single picture img,
body.single figure img,
body.single-post .site-content img,
body.single-post .entry-content img,
body.single-post .wp-post-image,
body.single-tnc_col_item .site-content img,
body.single-tnc_col_item .entry-content img,
body.single-tnc_col_item .wp-post-image,
body.single-tainacan_item .site-content img,
body.single-tainacan_item .entry-content img,
body.single-tainacan_item .wp-post-image {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single .post-thumbnail,
body.single .featured-image,
body.single .full-width-image,
body.single figure,
body.single picture,
body.single .data-bg,
body.single .aft-image,
body.single .post-image,
body.single .featured-post-image,
body.single .read-img,
body.single-tnc_col_item .post-thumbnail,
body.single-tnc_col_item .featured-image,
body.single-tnc_col_item .full-width-image,
body.single-tnc_col_item figure,
body.single-tnc_col_item picture,
body.single-tainacan_item .post-thumbnail,
body.single-tainacan_item .featured-image,
body.single-tainacan_item .full-width-image,
body.single-tainacan_item figure,
body.single-tainacan_item picture {
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}


/* =========================================================
   TAINACAN SINGLE RECORDS — SHOW FEATURED IMAGE, HIDE ORIGINAL
   =========================================================
   Use the same colour image shown in the catalogue grid. The
   Tainacan document image is often the original black-and-white
   file, so it is hidden to prevent a duplicate monochrome image.
   ========================================================= */

body.single:has(.tainacan-item-document) .entry-header .post-thumbnail,
body.single:has(.tainacan-item-document) .entry-header .featured-image,
body.single:has(.tainacan-item-document) .entry-header .full-width-image,
body.single:has(.tainacan-item-single) .entry-header .post-thumbnail,
body.single:has(.tainacan-item-single) .entry-header .featured-image,
body.single:has(.tainacan-item-single) .entry-header .full-width-image,
body.single-tnc_col_item .entry-header .post-thumbnail,
body.single-tnc_col_item .entry-header .featured-image,
body.single-tnc_col_item .entry-header .full-width-image,
body.single-tainacan_item .entry-header .post-thumbnail,
body.single-tainacan_item .entry-header .featured-image,
body.single-tainacan_item .entry-header .full-width-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single:has(.tainacan-item-document) .entry-header .post-thumbnail img,
body.single:has(.tainacan-item-document) .entry-header .featured-image img,
body.single:has(.tainacan-item-document) .entry-header .full-width-image img,
body.single:has(.tainacan-item-single) .entry-header .post-thumbnail img,
body.single:has(.tainacan-item-single) .entry-header .featured-image img,
body.single:has(.tainacan-item-single) .entry-header .full-width-image img,
body.single-tnc_col_item .entry-header .post-thumbnail img,
body.single-tnc_col_item .entry-header .featured-image img,
body.single-tnc_col_item .entry-header .full-width-image img,
body.single-tnc_col_item .wp-post-image,
body.single-tainacan_item .entry-header .post-thumbnail img,
body.single-tainacan_item .entry-header .featured-image img,
body.single-tainacan_item .entry-header .full-width-image img,
body.single-tainacan_item .wp-post-image {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

body.single:has(.tainacan-item-document) .tainacan-item-document img,
body.single:has(.tainacan-item-single) .tainacan-item-single img,
body.single:has(.tainacan-document) .tainacan-document img,
body.single-tnc_col_item .tainacan-item-document img,
body.single-tnc_col_item .tainacan-item-single img,
body.single-tnc_col_item .tainacan-document img,
body.single-tainacan_item .tainacan-item-document img,
body.single-tainacan_item .tainacan-item-single img,
body.single-tainacan_item .tainacan-document img {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}


/* =========================================================
   PHOTOGRAPHIC ARCHIVE SINGLE PAGES — FINAL ONE-IMAGE RULE
   =========================================================
   The record page can output both:
   - the colour featured image used by the grid, and
   - the original Tainacan/document image inside the content.

   On photographic archive record pages, keep the featured image
   and hide the document/content duplicate.
   ========================================================= */

html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .post-thumbnail,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .featured-image,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .full-width-image,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .wp-post-image,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .post-thumbnail,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .featured-image,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .full-width-image,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .wp-post-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .post-thumbnail img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .featured-image img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .full-width-image img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-header .wp-post-image,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .post-thumbnail img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .featured-image img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .full-width-image img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-header .wp-post-image {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    background-blend-mode: normal !important;
}

html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .entry-content img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .tainacan-item-document img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .tainacan-item-single img,
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single .tainacan-document img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .entry-content img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .tainacan-item-document img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .tainacan-item-single img,
body.single:has(a[href*="/limerick-photographic-archive/"]) .tainacan-document img {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}


/* =========================================================
   REMOVE OLD HEADER SEARCH ICON SITE-WIDE
   =========================================================
   Removes the obsolete magnifying-glass trigger:
   <a class="search-icon">...</a>

   This does not affect the footer search form.
   ========================================================= */

a.search-icon,
.search-icon,
.search-icon *,
.search-icon i,
.search-icon .fa,
.search-icon.fa,
[aria-label="Open search"].search-icon,
[title="Search"].search-icon {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}


/* =========================================================
   PREVIOUS / NEXT POST NAVIGATION AS BUTTONS
   =========================================================
   Converts the previous and next links at the bottom of posts
   and archive image records into clean archive-green buttons.
   ========================================================= */

html body.single .post-navigation,
html body.single .navigation.post-navigation,
html body.single .posts-navigation,
html body.single .previous-next,
html body.single .single-post-navigation {
    display: block !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 36px auto 80px !important;
    padding: 0 0 45px !important;
    clear: both !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links,
html body.single .previous-next .nav-links,
html body.single .single-post-navigation .nav-links {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

html body.single .post-navigation,
html body.single .navigation.post-navigation,
html body.single .posts-navigation,
html body.single .previous-next,
html body.single .single-post-navigation,
html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links,
html body.single .previous-next .nav-links,
html body.single .single-post-navigation .nav-links {
    text-align: center !important;
}

html body.single .post-navigation .nav-previous,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-previous,
html body.single .posts-navigation .nav-next,
html body.single .previous-next .nav-previous,
html body.single .previous-next .nav-next,
html body.single .single-post-navigation .nav-previous,
html body.single .single-post-navigation .nav-next {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center !important;
}

html body.single .post-navigation .nav-previous,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-previous,
html body.single .posts-navigation .nav-next,
html body.single .previous-next .nav-previous,
html body.single .previous-next .nav-next,
html body.single .single-post-navigation .nav-previous,
html body.single .single-post-navigation .nav-next {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

html body.single .post-navigation .nav-previous a,
html body.single .post-navigation .nav-next a,
html body.single .navigation.post-navigation .nav-previous a,
html body.single .navigation.post-navigation .nav-next a,
html body.single .posts-navigation .nav-previous a,
html body.single .posts-navigation .nav-next a,
html body.single .previous-next .nav-previous a,
html body.single .previous-next .nav-next a,
html body.single .single-post-navigation .nav-previous a,
html body.single .single-post-navigation .nav-next a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 170px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 11px 20px !important;
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 2px solid #2F7D3B !important;
    border-radius: 4px !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

html body.single .post-navigation .nav-previous a *,
html body.single .post-navigation .nav-next a *,
html body.single .navigation.post-navigation .nav-previous a *,
html body.single .navigation.post-navigation .nav-next a *,
html body.single .posts-navigation .nav-previous a *,
html body.single .posts-navigation .nav-next a *,
html body.single .previous-next .nav-previous a *,
html body.single .previous-next .nav-next a *,
html body.single .single-post-navigation .nav-previous a *,
html body.single .single-post-navigation .nav-next a * {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}

html body.single .post-navigation .nav-previous a:hover,
html body.single .post-navigation .nav-previous a:focus,
html body.single .post-navigation .nav-next a:hover,
html body.single .post-navigation .nav-next a:focus,
html body.single .navigation.post-navigation .nav-previous a:hover,
html body.single .navigation.post-navigation .nav-previous a:focus,
html body.single .navigation.post-navigation .nav-next a:hover,
html body.single .navigation.post-navigation .nav-next a:focus,
html body.single .posts-navigation .nav-previous a:hover,
html body.single .posts-navigation .nav-previous a:focus,
html body.single .posts-navigation .nav-next a:hover,
html body.single .posts-navigation .nav-next a:focus,
html body.single .previous-next .nav-previous a:hover,
html body.single .previous-next .nav-previous a:focus,
html body.single .previous-next .nav-next a:hover,
html body.single .previous-next .nav-next a:focus,
html body.single .single-post-navigation .nav-previous a:hover,
html body.single .single-post-navigation .nav-previous a:focus,
html body.single .single-post-navigation .nav-next a:hover,
html body.single .single-post-navigation .nav-next a:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    border-color: #2F7D3B !important;
    text-decoration: none !important;
    outline: none !important;
}

html body.single .post-navigation .nav-previous a:hover *,
html body.single .post-navigation .nav-previous a:focus *,
html body.single .post-navigation .nav-next a:hover *,
html body.single .post-navigation .nav-next a:focus *,
html body.single .navigation.post-navigation .nav-previous a:hover *,
html body.single .navigation.post-navigation .nav-previous a:focus *,
html body.single .navigation.post-navigation .nav-next a:hover *,
html body.single .navigation.post-navigation .nav-next a:focus *,
html body.single .posts-navigation .nav-previous a:hover *,
html body.single .posts-navigation .nav-previous a:focus *,
html body.single .posts-navigation .nav-next a:hover *,
html body.single .posts-navigation .nav-next a:focus * {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    text-decoration: none !important;
}

@media screen and (max-width: 768px) {
    html body.single .post-navigation .nav-links,
    html body.single .navigation.post-navigation .nav-links,
    html body.single .posts-navigation .nav-links,
    html body.single .previous-next .nav-links,
    html body.single .single-post-navigation .nav-links {
        flex-direction: column !important;
        gap: 12px !important;
    }

    html body.single .post-navigation .nav-previous,
    html body.single .post-navigation .nav-next,
    html body.single .navigation.post-navigation .nav-previous,
    html body.single .navigation.post-navigation .nav-next,
    html body.single .posts-navigation .nav-previous,
    html body.single .posts-navigation .nav-next,
    html body.single .previous-next .nav-previous,
    html body.single .previous-next .nav-next,
    html body.single .single-post-navigation .nav-previous,
    html body.single .single-post-navigation .nav-next,
    html body.single .post-navigation .nav-previous a,
    html body.single .post-navigation .nav-next a,
    html body.single .navigation.post-navigation .nav-previous a,
    html body.single .navigation.post-navigation .nav-next a,
    html body.single .posts-navigation .nav-previous a,
    html body.single .posts-navigation .nav-next a,
    html body.single .previous-next .nav-previous a,
    html body.single .previous-next .nav-next a,
    html body.single .single-post-navigation .nav-previous a,
    html body.single .single-post-navigation .nav-next a {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* =========================================================
   PREVIOUS / NEXT BUTTON LABELS ONLY
   =========================================================
   Removes long post titles from the previous/next buttons and
   leaves simple button labels.
   ========================================================= */

html body.single .post-navigation .nav-previous a,
html body.single .navigation.post-navigation .nav-previous a,
html body.single .posts-navigation .nav-previous a,
html body.single .previous-next .nav-previous a,
html body.single .single-post-navigation .nav-previous a,
html body.single .post-navigation .nav-next a,
html body.single .navigation.post-navigation .nav-next a,
html body.single .posts-navigation .nav-next a,
html body.single .previous-next .nav-next a,
html body.single .single-post-navigation .nav-next a {
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
}

html body.single .post-navigation .nav-previous a *,
html body.single .navigation.post-navigation .nav-previous a *,
html body.single .posts-navigation .nav-previous a *,
html body.single .previous-next .nav-previous a *,
html body.single .single-post-navigation .nav-previous a *,
html body.single .post-navigation .nav-next a *,
html body.single .navigation.post-navigation .nav-next a *,
html body.single .posts-navigation .nav-next a *,
html body.single .previous-next .nav-next a *,
html body.single .single-post-navigation .nav-next a * {
    display: none !important;
    visibility: hidden !important;
}

html body.single .post-navigation .nav-previous a::after,
html body.single .navigation.post-navigation .nav-previous a::after,
html body.single .posts-navigation .nav-previous a::after,
html body.single .previous-next .nav-previous a::after,
html body.single .single-post-navigation .nav-previous a::after {
    content: "Next" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.single .post-navigation .nav-next a::after,
html body.single .navigation.post-navigation .nav-next a::after,
html body.single .posts-navigation .nav-next a::after,
html body.single .previous-next .nav-next a::after,
html body.single .single-post-navigation .nav-next a::after {
    content: "Previous" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.single .post-navigation .nav-previous a:hover::after,
html body.single .post-navigation .nav-previous a:focus::after,
html body.single .navigation.post-navigation .nav-previous a:hover::after,
html body.single .navigation.post-navigation .nav-previous a:focus::after,
html body.single .posts-navigation .nav-previous a:hover::after,
html body.single .posts-navigation .nav-previous a:focus::after,
html body.single .previous-next .nav-previous a:hover::after,
html body.single .previous-next .nav-previous a:focus::after,
html body.single .single-post-navigation .nav-previous a:hover::after,
html body.single .single-post-navigation .nav-previous a:focus::after,
html body.single .post-navigation .nav-next a:hover::after,
html body.single .post-navigation .nav-next a:focus::after,
html body.single .navigation.post-navigation .nav-next a:hover::after,
html body.single .navigation.post-navigation .nav-next a:focus::after,
html body.single .posts-navigation .nav-next a:hover::after,
html body.single .posts-navigation .nav-next a:focus::after,
html body.single .previous-next .nav-next a:hover::after,
html body.single .previous-next .nav-next a:focus::after,
html body.single .single-post-navigation .nav-next a:hover::after,
html body.single .single-post-navigation .nav-next a:focus::after {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
}


/* =========================================================
   FINAL CENTERING FOR PREVIOUS / NEXT BUTTONS
   =========================================================
   Overrides theme float and half-width navigation layouts.
   ========================================================= */

html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links,
html body.single .previous-next .nav-links,
html body.single .single-post-navigation .nav-links {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(170px, max-content)) !important;
    justify-content: center !important;
    justify-items: center !important;
    align-items: center !important;
    column-gap: 18px !important;
    row-gap: 12px !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

html body.single .post-navigation .nav-previous,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-previous,
html body.single .posts-navigation .nav-next,
html body.single .previous-next .nav-previous,
html body.single .previous-next .nav-next,
html body.single .single-post-navigation .nav-previous,
html body.single .single-post-navigation .nav-next {
    display: flex !important;
    justify-content: center !important;
    justify-self: center !important;
    align-items: center !important;
    float: none !important;
    clear: none !important;
    width: max-content !important;
    min-width: 0 !important;
    max-width: max-content !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: center !important;
}

html body.single .post-navigation .nav-previous a,
html body.single .post-navigation .nav-next a,
html body.single .navigation.post-navigation .nav-previous a,
html body.single .navigation.post-navigation .nav-next a,
html body.single .posts-navigation .nav-previous a,
html body.single .posts-navigation .nav-next a,
html body.single .previous-next .nav-previous a,
html body.single .previous-next .nav-next a,
html body.single .single-post-navigation .nav-previous a,
html body.single .single-post-navigation .nav-next a {
    justify-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}


/* =========================================================
   FINAL EXACT CENTER FOR PREVIOUS / NEXT BUTTON ROW
   =========================================================
   Removes invisible theme spacers and centres only the visible
   Previous / Next buttons.
   ========================================================= */

html body.single .post-navigation,
html body.single .navigation.post-navigation,
html body.single .posts-navigation,
html body.single .previous-next,
html body.single .single-post-navigation {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 750px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links,
html body.single .previous-next .nav-links,
html body.single .single-post-navigation .nav-links {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
}

html body.single .post-navigation .nav-links::before,
html body.single .post-navigation .nav-links::after,
html body.single .navigation.post-navigation .nav-links::before,
html body.single .navigation.post-navigation .nav-links::after,
html body.single .posts-navigation .nav-links::before,
html body.single .posts-navigation .nav-links::after,
html body.single .previous-next .nav-links::before,
html body.single .previous-next .nav-links::after,
html body.single .single-post-navigation .nav-links::before,
html body.single .single-post-navigation .nav-links::after {
    content: none !important;
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

html body.single .post-navigation .nav-previous,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-previous,
html body.single .posts-navigation .nav-next,
html body.single .previous-next .nav-previous,
html body.single .previous-next .nav-next,
html body.single .single-post-navigation .nav-previous,
html body.single .single-post-navigation .nav-next {
    display: inline-flex !important;
    float: none !important;
    clear: none !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}


/* =========================================================
   REMOVE ALL OLD FLOATING SIDE NAVIGATION SITE-WIDE
   =========================================================
   The only remaining previous/next navigation should be the
   centred button row. This disables the old left/right floating
   arrow systems for posts and static pages.
   ========================================================= */

html body a.la2-page-arrow,
html body .la2-page-arrow,
html body .la-page-arrow,
html body .la-floating-arrow,
html body .la-floating-navigation,
html body .la-paragraph-arrow,
html body .la-reading-arrow,
html body .la-side-arrow,
html body .la-side-navigation,
html body .floating-arrow,
html body .floating-navigation,
html body .side-arrow,
html body .side-navigation {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

html body.single .post-navigation .nav-previous a,
html body.single .post-navigation .nav-next a,
html body.single .navigation.post-navigation .nav-previous a,
html body.single .navigation.post-navigation .nav-next a,
html body.single .posts-navigation .nav-previous a,
html body.single .posts-navigation .nav-next a,
html body.single .previous-next .nav-previous a,
html body.single .previous-next .nav-next a,
html body.single .single-post-navigation .nav-previous a,
html body.single .single-post-navigation .nav-next a {
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    z-index: auto !important;
    transform: none !important;
    animation: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

html body.single .post-navigation .nav-previous a::before,
html body.single .post-navigation .nav-next a::before,
html body.single .navigation.post-navigation .nav-previous a::before,
html body.single .navigation.post-navigation .nav-next a::before,
html body.single .posts-navigation .nav-previous a::before,
html body.single .posts-navigation .nav-next a::before,
html body.single .previous-next .nav-previous a::before,
html body.single .previous-next .nav-next a::before,
html body.single .single-post-navigation .nav-previous a::before,
html body.single .single-post-navigation .nav-next a::before {
    content: none !important;
    display: none !important;
}


/* =========================================================
   STATIC PAGE PREVIOUS / NEXT NAVIGATION AS BUTTONS
   =========================================================
   If the old static-page navigation snippet is still active, it is
   converted from fixed side arrows into the same centred button row.
   ========================================================= */

html body.page .la-page-navigation {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    animation: none !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 36px auto 80px !important;
    padding: 0 0 45px !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    pointer-events: auto !important;
    text-align: center !important;
}

html body.page .la-page-navigation .nav-links {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center !important;
}

html body.page .la-page-navigation .nav-previous,
html body.page .la-page-navigation .nav-next {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    float: none !important;
    clear: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    pointer-events: auto !important;
    text-align: center !important;
}

html body.page .la-page-navigation .nav-previous a,
html body.page .la-page-navigation .nav-next a {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    animation: none !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 170px !important;
    max-width: max-content !important;
    min-height: 44px !important;
    margin: 0 auto !important;
    padding: 11px 20px !important;
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    border: 2px solid #2F7D3B !important;
    border-radius: 4px !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
    pointer-events: auto !important;
}

html body.page .la-page-navigation .nav-previous a *,
html body.page .la-page-navigation .nav-next a * {
    display: none !important;
    visibility: hidden !important;
}

html body.page .la-page-navigation .nav-previous a::before,
html body.page .la-page-navigation .nav-next a::before {
    content: none !important;
    display: none !important;
}

html body.page .la-page-navigation .nav-previous a::after {
    content: "Next" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.page .la-page-navigation .nav-next a::after {
    content: "Previous" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.page .la-page-navigation .nav-previous a:hover,
html body.page .la-page-navigation .nav-previous a:focus,
html body.page .la-page-navigation .nav-next a:hover,
html body.page .la-page-navigation .nav-next a:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: #2F7D3B !important;
    text-decoration: none !important;
}

html body.page .la-page-navigation .nav-previous a:hover::after,
html body.page .la-page-navigation .nav-previous a:focus::after,
html body.page .la-page-navigation .nav-next a:hover::after,
html body.page .la-page-navigation .nav-next a:focus::after {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
}


/* =========================================================
   HARD RESET — POST PREVIOUS / NEXT MUST NOT FLOAT
   =========================================================
   This is the final post-navigation rule. It overrides old fixed
   arrow systems and forces the two links into a normal centred row.
   ========================================================= */

html body.single-post .post-navigation,
html body.single-post .navigation.post-navigation,
html body.single-post .posts-navigation,
html body.single .post-navigation,
html body.single .navigation.post-navigation,
html body.single .posts-navigation {
    display: block !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 36px auto 80px !important;
    padding: 0 0 45px !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    text-align: center !important;
}

html body.single-post .post-navigation .nav-links,
html body.single-post .navigation.post-navigation .nav-links,
html body.single-post .posts-navigation .nav-links,
html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links {
    display: flex !important;
    position: static !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 18px !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 750px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    text-align: center !important;
}

html body.single-post .post-navigation .nav-links::before,
html body.single-post .post-navigation .nav-links::after,
html body.single-post .navigation.post-navigation .nav-links::before,
html body.single-post .navigation.post-navigation .nav-links::after,
html body.single-post .posts-navigation .nav-links::before,
html body.single-post .posts-navigation .nav-links::after,
html body.single .post-navigation .nav-links::before,
html body.single .post-navigation .nav-links::after,
html body.single .navigation.post-navigation .nav-links::before,
html body.single .navigation.post-navigation .nav-links::after,
html body.single .posts-navigation .nav-links::before,
html body.single .posts-navigation .nav-links::after {
    content: none !important;
    display: none !important;
}

html body.single-post .post-navigation .nav-previous,
html body.single-post .post-navigation .nav-next,
html body.single-post .navigation.post-navigation .nav-previous,
html body.single-post .navigation.post-navigation .nav-next,
html body.single-post .posts-navigation .nav-previous,
html body.single-post .posts-navigation .nav-next,
html body.single .post-navigation .nav-previous,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-previous,
html body.single .posts-navigation .nav-next {
    display: inline-flex !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;
    clear: none !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: visible !important;
    text-align: center !important;
}

html body.single-post .post-navigation .nav-previous a,
html body.single-post .post-navigation .nav-next a,
html body.single-post .navigation.post-navigation .nav-previous a,
html body.single-post .navigation.post-navigation .nav-next a,
html body.single-post .posts-navigation .nav-previous a,
html body.single-post .posts-navigation .nav-next a,
html body.single .post-navigation .nav-previous a,
html body.single .post-navigation .nav-next a,
html body.single .navigation.post-navigation .nav-previous a,
html body.single .navigation.post-navigation .nav-next a,
html body.single .posts-navigation .nav-previous a,
html body.single .posts-navigation .nav-next a {
    display: inline-flex !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    float: none !important;
    clear: none !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 170px !important;
    max-width: max-content !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 11px 20px !important;
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: transparent !important;
    -webkit-text-fill-color: transparent !important;
    border: 2px solid #2F7D3B !important;
    border-radius: 4px !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 0 !important;
    font-weight: 800 !important;
    line-height: 0 !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: hidden !important;
    pointer-events: auto !important;
    animation: none !important;
}

html body.single-post .post-navigation .nav-previous a *,
html body.single-post .post-navigation .nav-next a *,
html body.single-post .navigation.post-navigation .nav-previous a *,
html body.single-post .navigation.post-navigation .nav-next a *,
html body.single-post .posts-navigation .nav-previous a *,
html body.single-post .posts-navigation .nav-next a *,
html body.single .post-navigation .nav-previous a *,
html body.single .post-navigation .nav-next a *,
html body.single .navigation.post-navigation .nav-previous a *,
html body.single .navigation.post-navigation .nav-next a *,
html body.single .posts-navigation .nav-previous a *,
html body.single .posts-navigation .nav-next a * {
    display: none !important;
    visibility: hidden !important;
}

html body.single-post .post-navigation .nav-previous a::before,
html body.single-post .post-navigation .nav-next a::before,
html body.single-post .navigation.post-navigation .nav-previous a::before,
html body.single-post .navigation.post-navigation .nav-next a::before,
html body.single-post .posts-navigation .nav-previous a::before,
html body.single-post .posts-navigation .nav-next a::before,
html body.single .post-navigation .nav-previous a::before,
html body.single .post-navigation .nav-next a::before,
html body.single .navigation.post-navigation .nav-previous a::before,
html body.single .navigation.post-navigation .nav-next a::before,
html body.single .posts-navigation .nav-previous a::before,
html body.single .posts-navigation .nav-next a::before {
    content: none !important;
    display: none !important;
}

html body.single-post .post-navigation .nav-previous a::after,
html body.single-post .navigation.post-navigation .nav-previous a::after,
html body.single-post .posts-navigation .nav-previous a::after,
html body.single .post-navigation .nav-previous a::after,
html body.single .navigation.post-navigation .nav-previous a::after,
html body.single .posts-navigation .nav-previous a::after {
    content: "Next" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.single-post .post-navigation .nav-next a::after,
html body.single-post .navigation.post-navigation .nav-next a::after,
html body.single-post .posts-navigation .nav-next a::after,
html body.single .post-navigation .nav-next a::after,
html body.single .navigation.post-navigation .nav-next a::after,
html body.single .posts-navigation .nav-next a::after {
    content: "Previous" !important;
    display: inline-block !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
}

html body.single-post .post-navigation .nav-previous a:hover,
html body.single-post .post-navigation .nav-next a:hover,
html body.single-post .navigation.post-navigation .nav-previous a:hover,
html body.single-post .navigation.post-navigation .nav-next a:hover,
html body.single-post .posts-navigation .nav-previous a:hover,
html body.single-post .posts-navigation .nav-next a:hover,
html body.single .post-navigation .nav-previous a:hover,
html body.single .post-navigation .nav-next a:hover,
html body.single .navigation.post-navigation .nav-previous a:hover,
html body.single .navigation.post-navigation .nav-next a:hover,
html body.single .posts-navigation .nav-previous a:hover,
html body.single .posts-navigation .nav-next a:hover {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: #2F7D3B !important;
    text-decoration: none !important;
}

html body.single-post .post-navigation .nav-previous a:hover::after,
html body.single-post .post-navigation .nav-next a:hover::after,
html body.single-post .navigation.post-navigation .nav-previous a:hover::after,
html body.single-post .navigation.post-navigation .nav-next a:hover::after,
html body.single-post .posts-navigation .nav-previous a:hover::after,
html body.single-post .posts-navigation .nav-next a:hover::after,
html body.single .post-navigation .nav-previous a:hover::after,
html body.single .post-navigation .nav-next a:hover::after,
html body.single .navigation.post-navigation .nav-previous a:hover::after,
html body.single .navigation.post-navigation .nav-next a:hover::after,
html body.single .posts-navigation .nav-previous a:hover::after,
html body.single .posts-navigation .nav-next a:hover::after {
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
}


/* =========================================================
   PREVIOUS / NEXT BUTTON ROW — WIDE LINES ABOVE AND BELOW
   =========================================================
   Frames the centred navigation buttons with full-width green
   rules while keeping the buttons in their current position.
   ========================================================= */

html body.single-post .post-navigation,
html body.single-post .navigation.post-navigation,
html body.single-post .posts-navigation,
html body.single .post-navigation,
html body.single .navigation.post-navigation,
html body.single .posts-navigation {
    max-width: 750px !important;

    margin-top: 36px !important;
    margin-bottom: 80px !important;

    padding-top: 18px !important;
    padding-right: 0 !important;
    padding-bottom: 18px !important;
    padding-left: 0 !important;

    border-top: 3px double #2F7D3B !important;
    border-bottom: 3px double #2F7D3B !important;

    text-align: center !important;
}

html body.single-post .post-navigation .nav-links,
html body.single-post .navigation.post-navigation .nav-links,
html body.single-post .posts-navigation .nav-links,
html body.single .post-navigation .nav-links,
html body.single .navigation.post-navigation .nav-links,
html body.single .posts-navigation .nav-links {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* =========================================================
   PREVIOUS LEFT / NEXT RIGHT
   =========================================================
   WordPress outputs these links with nav-next pointing to the
   previous record and nav-previous pointing to the next record.
   This keeps the visible button order conventional:
   Previous on the left, Next on the right.
   ========================================================= */

html body.single-post .post-navigation .nav-next,
html body.single-post .navigation.post-navigation .nav-next,
html body.single-post .posts-navigation .nav-next,
html body.single .post-navigation .nav-next,
html body.single .navigation.post-navigation .nav-next,
html body.single .posts-navigation .nav-next,
html body.single .previous-next .nav-next,
html body.single .single-post-navigation .nav-next,
html body.page .la-page-navigation .nav-next {
    order: 1 !important;
}

html body.single-post .post-navigation .nav-previous,
html body.single-post .navigation.post-navigation .nav-previous,
html body.single-post .posts-navigation .nav-previous,
html body.single .post-navigation .nav-previous,
html body.single .navigation.post-navigation .nav-previous,
html body.single .posts-navigation .nav-previous,
html body.single .previous-next .nav-previous,
html body.single .single-post-navigation .nav-previous,
html body.page .la-page-navigation .nav-previous {
    order: 2 !important;
}

/* =========================================================
   FOOTER MENU DROPDOWNS - READY WHEN CHILD ITEMS EXIST
   =========================================================
   CSS can only display footer subcategories when WordPress
   actually outputs them as nested menu items. This block keeps
   the footer ready for About, Policies and Rights submenus once
   those child items are added to the Footer Menu in WordPress.
   ========================================================= */

html body footer#colophon,
html body footer.site-footer,
html body #colophon,
html body footer[role="contentinfo"],
html body .menu-footer-menu-container,
html body #menu-footer-menu,
html body .footer-navigation,
html body nav[aria-label*="footer menu" i] {
    overflow: visible !important;
}

html body .menu-footer-menu-container li,
html body #menu-footer-menu li,
html body .footer-navigation li,
html body nav[aria-label*="footer menu" i] li,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-item {
    position: relative !important;
    overflow: visible !important;
}

html body .menu-footer-menu-container li.menu-item-has-children > a,
html body .menu-footer-menu-container li.page_item_has_children > a,
html body #menu-footer-menu li.menu-item-has-children > a,
html body #menu-footer-menu li.page_item_has_children > a,
html body .footer-navigation li.menu-item-has-children > a,
html body .footer-navigation li.page_item_has_children > a,
html body nav[aria-label*="footer menu" i] li.menu-item-has-children > a,
html body nav[aria-label*="footer menu" i] li.page_item_has_children > a,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-submenu > .wp-block-navigation-item__content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
}

html body .menu-footer-menu-container li.menu-item-has-children > a::after,
html body .menu-footer-menu-container li.page_item_has_children > a::after,
html body #menu-footer-menu li.menu-item-has-children > a::after,
html body #menu-footer-menu li.page_item_has_children > a::after,
html body .footer-navigation li.menu-item-has-children > a::after,
html body .footer-navigation li.page_item_has_children > a::after,
html body nav[aria-label*="footer menu" i] li.menu-item-has-children > a::after,
html body nav[aria-label*="footer menu" i] li.page_item_has_children > a::after,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-submenu > .wp-block-navigation-item__content::after {
    content: "" !important;
    display: inline-block !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 0 2px 0 !important;
    padding: 0 !important;

    border-left: 4px solid transparent !important;
    border-right: 4px solid transparent !important;
    border-bottom: 5px solid #2F7D3B !important;
    border-top: 0 !important;

    background: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
}

html body .menu-footer-menu-container ul.sub-menu,
html body .menu-footer-menu-container ul.children,
html body #menu-footer-menu ul.sub-menu,
html body #menu-footer-menu ul.children,
html body .footer-navigation ul.sub-menu,
html body .footer-navigation ul.children,
html body nav[aria-label*="footer menu" i] ul.sub-menu,
html body nav[aria-label*="footer menu" i] ul.children,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__submenu-container {
    display: block !important;
    position: absolute !important;

    right: auto !important;
    bottom: 100% !important;
    left: 0 !important;
    top: auto !important;

    z-index: 1000000 !important;

    width: max-content !important;
    min-width: 100% !important;
    max-width: min(320px, 90vw) !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    border: 2px solid #2F7D3B !important;
    border-bottom: 0 !important;
    box-shadow: 0 -6px 16px rgba(0, 0, 0, 0.18) !important;

    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;

    transform: translateY(8px) !important;
    transition:
        opacity 0.18s ease,
        visibility 0.18s ease,
        transform 0.18s ease !important;
}

html body .menu-footer-menu-container li:hover > ul.sub-menu,
html body .menu-footer-menu-container li:focus-within > ul.sub-menu,
html body .menu-footer-menu-container li:hover > ul.children,
html body .menu-footer-menu-container li:focus-within > ul.children,
html body #menu-footer-menu li:hover > ul.sub-menu,
html body #menu-footer-menu li:focus-within > ul.sub-menu,
html body #menu-footer-menu li:hover > ul.children,
html body #menu-footer-menu li:focus-within > ul.children,
html body .footer-navigation li:hover > ul.sub-menu,
html body .footer-navigation li:focus-within > ul.sub-menu,
html body .footer-navigation li:hover > ul.children,
html body .footer-navigation li:focus-within > ul.children,
html body nav[aria-label*="footer menu" i] li:hover > ul.sub-menu,
html body nav[aria-label*="footer menu" i] li:focus-within > ul.sub-menu,
html body nav[aria-label*="footer menu" i] li:hover > ul.children,
html body nav[aria-label*="footer menu" i] li:focus-within > ul.children,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-container,
html body nav[aria-label*="footer menu" i] .wp-block-navigation-submenu:focus-within > .wp-block-navigation__submenu-container {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}

html body .menu-footer-menu-container ul.sub-menu li,
html body .menu-footer-menu-container ul.children li,
html body #menu-footer-menu ul.sub-menu li,
html body #menu-footer-menu ul.children li,
html body .footer-navigation ul.sub-menu li,
html body .footer-navigation ul.children li,
html body nav[aria-label*="footer menu" i] ul.sub-menu li,
html body nav[aria-label*="footer menu" i] ul.children li,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__submenu-container .wp-block-navigation-item {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;

    border-right: 0 !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.25) !important;
}

html body .menu-footer-menu-container ul.sub-menu a,
html body .menu-footer-menu-container ul.children a,
html body #menu-footer-menu ul.sub-menu a,
html body #menu-footer-menu ul.children a,
html body .footer-navigation ul.sub-menu a,
html body .footer-navigation ul.children a,
html body nav[aria-label*="footer menu" i] ul.sub-menu a,
html body nav[aria-label*="footer menu" i] ul.children a,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    min-width: 180px !important;
    height: auto !important;
    min-height: 42px !important;

    padding: 9px 14px !important;

    color: #111111 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;

    font-size: 14px !important;
    line-height: 1.25 !important;
    text-align: left !important;
    white-space: nowrap !important;
}

html body .menu-footer-menu-container ul.sub-menu a:hover,
html body .menu-footer-menu-container ul.sub-menu a:focus,
html body .menu-footer-menu-container ul.children a:hover,
html body .menu-footer-menu-container ul.children a:focus,
html body #menu-footer-menu ul.sub-menu a:hover,
html body #menu-footer-menu ul.sub-menu a:focus,
html body #menu-footer-menu ul.children a:hover,
html body #menu-footer-menu ul.children a:focus,
html body .footer-navigation ul.sub-menu a:hover,
html body .footer-navigation ul.sub-menu a:focus,
html body .footer-navigation ul.children a:hover,
html body .footer-navigation ul.children a:focus,
html body nav[aria-label*="footer menu" i] ul.sub-menu a:hover,
html body nav[aria-label*="footer menu" i] ul.sub-menu a:focus,
html body nav[aria-label*="footer menu" i] ul.children a:hover,
html body nav[aria-label*="footer menu" i] ul.children a:focus,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus {
    color: #ffffff !important;
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    text-decoration: none !important;
}


/* =========================================================
   FIXED FOOTER MENU - TWO ROW LAYOUT
   =========================================================
   Displays the footer menu as two calm rows instead of one
   crowded horizontal strip. The current twelve-item footer works
   as a balanced 6-over-6 layout.
   ========================================================= */

:root {
    --la-footer-menu-row-height: 42px;
    --la-footer-black-strip-height: 22px;
    --la-footer-menu-two-row-height: calc(
        var(--la-footer-menu-row-height) * 2
    );
    --la-fixed-footer-total-height: calc(
        var(--la-footer-menu-two-row-height) +
        var(--la-footer-black-strip-height) +
        6px
    );
}

html body footer#colophon,
html body footer.site-footer,
html body #colophon,
html body footer[role="contentinfo"] {
    padding-bottom: var(--la-footer-black-strip-height) !important;
    overflow: visible !important;
}

html body footer.site-footer .menu-footer-menu-container,
html body #colophon .menu-footer-menu-container,
html body footer.site-footer nav:has(> #menu-footer-menu),
html body #colophon nav:has(> #menu-footer-menu),
html body footer.site-footer #footer-navigation,
html body #colophon #footer-navigation,
html body footer.site-footer #site-footer-menu,
html body #colophon #site-footer-menu,
html body footer.site-footer .footer-navigation,
html body #colophon .footer-navigation,
html body footer.site-footer nav[aria-label*="footer menu" i],
html body #colophon nav[aria-label*="footer menu" i] {
    width: 100% !important;
    max-width: 750px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    overflow: visible !important;
}

html body .menu-footer-menu-container > ul.menu,
html body ul#menu-footer-menu,
html body #footer-navigation > ul,
html body #site-footer-menu > ul,
html body .footer-navigation > ul,
html body nav[aria-label*="footer menu" i] > ul,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: stretch !important;
    align-content: stretch !important;
    gap: 0 !important;

    width: 100% !important;
    max-width: 750px !important;
    min-height: var(--la-footer-menu-two-row-height) !important;
    height: var(--la-footer-menu-two-row-height) !important;

    margin: 0 auto !important;
    padding: 0 !important;

    overflow-x: visible !important;
    overflow-y: visible !important;
    scrollbar-width: none !important;
}

html body .menu-footer-menu-container > ul.menu::-webkit-scrollbar,
html body ul#menu-footer-menu::-webkit-scrollbar,
html body #footer-navigation > ul::-webkit-scrollbar,
html body #site-footer-menu > ul::-webkit-scrollbar,
html body .footer-navigation > ul::-webkit-scrollbar,
html body nav[aria-label*="footer menu" i] > ul::-webkit-scrollbar {
    display: none !important;
}

html body .menu-footer-menu-container > ul.menu > li,
html body ul#menu-footer-menu > li,
html body #footer-navigation > ul > li,
html body #site-footer-menu > ul > li,
html body .footer-navigation > ul > li,
html body nav[aria-label*="footer menu" i] > ul > li,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item {
    display: flex !important;
    flex: 0 0 16.666667% !important;
    width: 16.666667% !important;
    max-width: 16.666667% !important;
    min-width: 0 !important;
    height: var(--la-footer-menu-row-height) !important;

    border-right: 1px solid rgba(47, 125, 59, 0.25) !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.25) !important;

    box-sizing: border-box !important;
}

html body .menu-footer-menu-container > ul.menu > li:nth-child(n+7),
html body ul#menu-footer-menu > li:nth-child(n+7),
html body #footer-navigation > ul > li:nth-child(n+7),
html body #site-footer-menu > ul > li:nth-child(n+7),
html body .footer-navigation > ul > li:nth-child(n+7),
html body nav[aria-label*="footer menu" i] > ul > li:nth-child(n+7),
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item:nth-child(n+7) {
    border-bottom: 0 !important;
}

html body .menu-footer-menu-container > ul.menu > li:nth-child(6),
html body ul#menu-footer-menu > li:nth-child(6),
html body #footer-navigation > ul > li:nth-child(6),
html body #site-footer-menu > ul > li:nth-child(6),
html body .footer-navigation > ul > li:nth-child(6),
html body nav[aria-label*="footer menu" i] > ul > li:nth-child(6),
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item:nth-child(6),
html body .menu-footer-menu-container > ul.menu > li:last-child,
html body ul#menu-footer-menu > li:last-child,
html body #footer-navigation > ul > li:last-child,
html body #site-footer-menu > ul > li:last-child,
html body .footer-navigation > ul > li:last-child,
html body nav[aria-label*="footer menu" i] > ul > li:last-child,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item:last-child {
    border-right: 0 !important;
}

html body .menu-footer-menu-container > ul.menu > li > a,
html body ul#menu-footer-menu > li > a,
html body #footer-navigation > ul > li > a,
html body #site-footer-menu > ul > li > a,
html body .footer-navigation > ul > li > a,
html body nav[aria-label*="footer menu" i] > ul > li > a,
html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-width: 0 !important;
    height: var(--la-footer-menu-row-height) !important;
    min-height: var(--la-footer-menu-row-height) !important;

    margin: 0 !important;
    padding: 0 7px !important;

    font-size: 11.5px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;

    box-sizing: border-box !important;
}

html body,
html body.home,
html body.blog,
html body.page,
html body.single,
html body.archive,
html body.search,
html body.error404,
html body.la-fixed-site-header {
    padding-bottom: var(--la-fixed-footer-total-height) !important;
}

html,
body {
    scroll-padding-bottom: var(--la-fixed-footer-total-height) !important;
}

@media screen and (max-width: 768px) {

    :root {
        --la-footer-menu-row-height: 39px;
        --la-footer-black-strip-height: 18px;
        --la-footer-menu-two-row-height: calc(
            var(--la-footer-menu-row-height) * 2
        );
        --la-fixed-footer-total-height: calc(
            var(--la-footer-menu-two-row-height) +
            var(--la-footer-black-strip-height) +
            6px
        );
    }

    html body .menu-footer-menu-container > ul.menu > li > a,
    html body ul#menu-footer-menu > li > a,
    html body #footer-navigation > ul > li > a,
    html body #site-footer-menu > ul > li > a,
    html body .footer-navigation > ul > li > a,
    html body nav[aria-label*="footer menu" i] > ul > li > a,
    html body nav[aria-label*="footer menu" i] .wp-block-navigation__container > .wp-block-navigation-item > .wp-block-navigation-item__content {
        padding-left: 5px !important;
        padding-right: 5px !important;
        font-size: 10.5px !important;
        line-height: 1.05 !important;
    }
}


/* =========================================================
   HOMEPAGE RECENT POSTS - RESTORE FULL PREVIEW TEXT
   =========================================================
   The homepage is now using Recent Posts rather than the older
   full-content homepage setup. This restores the visible preview
   area beneath the image, title and author, and removes visual
   truncation/clamping from the first paragraph or excerpt.
   ========================================================= */

html body.home .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description,
    .read-details,
    .post-content,
    .article-content,
    .content-wrap,
    .content-wrapper,
    .entry-wrapper
),
html body.front-page .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description,
    .read-details,
    .post-content,
    .article-content,
    .content-wrap,
    .content-wrapper,
    .entry-wrapper
),
html body.home.blog .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description,
    .read-details,
    .post-content,
    .article-content,
    .content-wrap,
    .content-wrapper,
    .entry-wrapper
) {
    display: block !important;
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 8px auto 14px !important;
    padding: 0 !important;

    color: #111111 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;

    font-size: 16px !important;
    line-height: 1.65 !important;
    font-weight: 400 !important;

    text-align: justify !important;
    text-justify: inter-word !important;

    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

html body.home .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description
) p,
html body.front-page .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description
) p,
html body.home.blog .site-main article :is(
    .entry-summary,
    .entry-content,
    .post-excerpt,
    .aft-post-excerpt,
    .article-excerpt,
    .archive-excerpt,
    .post-description,
    .full-item-discription,
    .full-item-description
) p {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #111111 !important;

    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: inherit !important;

    text-align: justify !important;
    text-justify: inter-word !important;

    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;

    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    -webkit-box-orient: initial !important;
}

html body.home .site-main article .entry-content > *:not(p:first-of-type),
html body.front-page .site-main article .entry-content > *:not(p:first-of-type),
html body.home.blog .site-main article .entry-content > *:not(p:first-of-type) {
    display: none !important;
}
/* =========================================================
   MASTHEAD BANNER SNIPPET COMPATIBILITY
   =========================================================
   This exact selector matches the PHP snippet and keeps the
   full-width banner locked to 150px. It also overrides older
   CoverNews/header rules in this CSS file that previously forced
   the masthead to 50px, 115px, 155px or 190px.
   ========================================================= */

html body #masthead .masthead-banner.af-header-image.data-bg,
html body .site-header .masthead-banner.af-header-image.data-bg,
body .masthead-banner.af-header-image.data-bg {
    display: block !important;

    width: 100vw !important;
    max-width: 100vw !important;

    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;

    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

    padding: 0 !important;

    background-size: 100% 100% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #masthead .masthead-banner.af-header-image.data-bg > .container,
html body #masthead .masthead-banner.af-header-image.data-bg .row,
html body #masthead .masthead-banner.af-header-image.data-bg .col-md-4,
html body #masthead .masthead-banner.af-header-image.data-bg .col-md-8,
html body #masthead .masthead-banner.af-header-image.data-bg .site-branding,
html body #masthead .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body #masthead .masthead-banner.af-header-image.data-bg .promotion-section,
html body .site-header .masthead-banner.af-header-image.data-bg > .container,
html body .site-header .masthead-banner.af-header-image.data-bg .row,
html body .site-header .masthead-banner.af-header-image.data-bg .col-md-4,
html body .site-header .masthead-banner.af-header-image.data-bg .col-md-8,
html body .site-header .masthead-banner.af-header-image.data-bg .site-branding,
html body .site-header .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body .site-header .masthead-banner.af-header-image.data-bg .promotion-section,
body .masthead-banner.af-header-image.data-bg > .container,
body .masthead-banner.af-header-image.data-bg .row,
body .masthead-banner.af-header-image.data-bg .col-md-4,
body .masthead-banner.af-header-image.data-bg .col-md-8,
body .masthead-banner.af-header-image.data-bg .site-branding,
body .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
body .masthead-banner.af-header-image.data-bg .promotion-section {
    height: 150px !important;
    min-height: 150px !important;
    max-height: 150px !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #masthead .masthead-banner.af-header-image.data-bg .site-title,
html body #masthead .masthead-banner.af-header-image.data-bg .site-description,
html body #masthead .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body .site-header .masthead-banner.af-header-image.data-bg .site-title,
html body .site-header .masthead-banner.af-header-image.data-bg .site-description,
html body .site-header .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
body .masthead-banner.af-header-image.data-bg .site-title,
body .masthead-banner.af-header-image.data-bg .site-description,
body .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper {
    display: none !important;
}
.la-homepage-logo-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 22px 0 16px 0 !important;
    text-align: center !important;
    background: #ffffff !important;
    clear: both !important;
    box-sizing: border-box !important;
    border-bottom: 3px double #2F7D3B !important;
}

.la-homepage-logo-wrapper img {
    display: inline-block !important;
    width: 180px !important;
    max-width: 80% !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
}


/* =========================================================
   FINAL DEVICE-SAFE OVERRIDES
   =========================================================
   Keep this section at the very end of the custom CSS.
   It protects the approved 1200 x 150 masthead, the homepage
   logo, recent-post layouts, menus and media across desktop,
   tablet and phone screens.
   ========================================================= */

:root {
    --la-masthead-height: 150px;
    --la-green: #2F7D3B;
    --la-black: #111111;
    --la-white: #ffffff;
}

html,
body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
}

body,
#page,
.site {
    background: #ffffff !important;
}

img,
picture,
video,
canvas,
iframe,
embed,
object {
    max-width: 100% !important;
}

img,
picture,
video,
canvas {
    height: auto !important;
}

iframe,
embed,
object {
    width: 100% !important;
}


/* Approved masthead banner: 1200 x 150 display area. */

html body #masthead .masthead-banner.af-header-image.data-bg,
html body .site-header .masthead-banner.af-header-image.data-bg,
html body .masthead-banner.af-header-image.data-bg,
body .masthead-banner.af-header-image.data-bg {
    display: block !important;
    position: relative !important;

    width: 100vw !important;
    max-width: 100vw !important;

    height: var(--la-masthead-height) !important;
    min-height: var(--la-masthead-height) !important;
    max-height: var(--la-masthead-height) !important;

    margin-top: 0 !important;
    margin-right: calc(50% - 50vw) !important;
    margin-bottom: 0 !important;
    margin-left: calc(50% - 50vw) !important;

    padding: 0 !important;

    background-size: 100% 100% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;

    border: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #masthead .masthead-banner.af-header-image.data-bg > .container,
html body #masthead .masthead-banner.af-header-image.data-bg .row,
html body #masthead .masthead-banner.af-header-image.data-bg [class*="col-"],
html body #masthead .masthead-banner.af-header-image.data-bg .site-branding,
html body #masthead .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body #masthead .masthead-banner.af-header-image.data-bg .promotion-section,
html body .site-header .masthead-banner.af-header-image.data-bg > .container,
html body .site-header .masthead-banner.af-header-image.data-bg .row,
html body .site-header .masthead-banner.af-header-image.data-bg [class*="col-"],
html body .site-header .masthead-banner.af-header-image.data-bg .site-branding,
html body .site-header .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body .site-header .masthead-banner.af-header-image.data-bg .promotion-section,
body .masthead-banner.af-header-image.data-bg > .container,
body .masthead-banner.af-header-image.data-bg .row,
body .masthead-banner.af-header-image.data-bg [class*="col-"],
body .masthead-banner.af-header-image.data-bg .site-branding,
body .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
body .masthead-banner.af-header-image.data-bg .promotion-section {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    height: var(--la-masthead-height) !important;
    min-height: var(--la-masthead-height) !important;
    max-height: var(--la-masthead-height) !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
}

html body #masthead .masthead-banner.af-header-image.data-bg .site-title,
html body #masthead .masthead-banner.af-header-image.data-bg .site-description,
html body #masthead .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
html body .site-header .masthead-banner.af-header-image.data-bg .site-title,
html body .site-header .masthead-banner.af-header-image.data-bg .site-description,
html body .site-header .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper,
body .masthead-banner.af-header-image.data-bg .site-title,
body .masthead-banner.af-header-image.data-bg .site-description,
body .masthead-banner.af-header-image.data-bg .banner-promotions-wrapper {
    display: none !important;
}


/* Homepage logo inserted above Recent Posts. */

html body .la-homepage-logo-wrapper {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto !important;
    padding: 22px 0 16px 0 !important;

    text-align: center !important;

    background: #ffffff !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 3px double #2F7D3B !important;
    border-left: 0 !important;

    clear: both !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}

html body .la-homepage-logo-wrapper img {
    display: inline-block !important;

    width: 180px !important;
    max-width: min(80vw, 180px) !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 0 !important;

    border-radius: 50% !important;
    border: 0 !important;
    box-shadow: none !important;

    opacity: 1 !important;
    visibility: visible !important;
}


/* Navigation and recent-post pages: keep widths stable. */

html body .main-navigation,
html body #site-navigation,
html body .site-content,
html body .content-area,
html body .site-main,
html body .main-content,
html body .content-wrapper {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html body .main-navigation ul,
html body .main-navigation li {
    box-sizing: border-box !important;
}

html body.home .site-main article,
html body.front-page .site-main article,
html body.home.blog .site-main article,
html body.archive .site-main article,
html body.category .site-main article,
html body.tag .site-main article,
html body.search .site-main article {
    max-width: 100% !important;
    overflow: visible !important;
    box-sizing: border-box !important;
}


/* Tablet */

@media screen and (max-width: 1024px) {
    html body .la-homepage-logo-wrapper {
        padding-top: 20px !important;
        padding-bottom: 15px !important;
    }

    html body .la-homepage-logo-wrapper img {
        width: 165px !important;
        max-width: min(76vw, 165px) !important;
    }
}


/* Phone */

@media screen and (max-width: 768px) {
    :root {
        --la-masthead-height: 150px;
    }

    html body #masthead .masthead-banner.af-header-image.data-bg,
    html body .site-header .masthead-banner.af-header-image.data-bg,
    html body .masthead-banner.af-header-image.data-bg,
    body .masthead-banner.af-header-image.data-bg {
        height: var(--la-masthead-height) !important;
        min-height: var(--la-masthead-height) !important;
        max-height: var(--la-masthead-height) !important;

        background-size: 100% 100% !important;
        background-position: center center !important;
    }

    html body .la-homepage-logo-wrapper {
        padding-top: 18px !important;
        padding-bottom: 14px !important;
    }

    html body .la-homepage-logo-wrapper img {
        width: 150px !important;
        max-width: min(72vw, 150px) !important;
    }

    html body .main-navigation,
    html body #site-navigation {
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }

    html body .main-navigation ul,
    html body .main-navigation li,
    html body .main-navigation a {
        max-width: 100% !important;
        white-space: normal !important;
        box-sizing: border-box !important;
    }
}


/* Small phone */

@media screen and (max-width: 480px) {
    html body .la-homepage-logo-wrapper {
        padding-top: 16px !important;
        padding-bottom: 12px !important;
    }

    html body .la-homepage-logo-wrapper img {
        width: 135px !important;
        max-width: min(68vw, 135px) !important;
    }
}


/* =========================================================
   FINAL FIX — REMOVE OLD HOMEPAGE ARTICLE COUNTER BOX
   =========================================================
   The former homepage published-article counter can leave an
   empty green box on tablet/mobile when the counter text or
   shortcode is no longer active. This removes the old counter
   container completely across all devices.
   ========================================================= */

html body.home .article-count,
html body.front-page .article-count,
html body.blog .article-count,
html body.home.blog .article-count,
html body.page-id-76725 .article-count,
html body .site-main .article-count,
html body .article-count {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    position: absolute !important;
    left: -99999px !important;
    top: auto !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    pointer-events: none !important;
    box-sizing: border-box !important;
}

html body.home .article-count::before,
html body.home .article-count::after,
html body.front-page .article-count::before,
html body.front-page .article-count::after,
html body.blog .article-count::before,
html body.blog .article-count::after,
html body.home.blog .article-count::before,
html body.home.blog .article-count::after,
html body.page-id-76725 .article-count::before,
html body.page-id-76725 .article-count::after,
html body .site-main .article-count::before,
html body .site-main .article-count::after,
html body .article-count::before,
html body .article-count::after {
    content: none !important;
    display: none !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

@media screen and (max-width: 1024px) {
    html body.home .article-count,
    html body.front-page .article-count,
    html body.blog .article-count,
    html body.home.blog .article-count,
    html body.page-id-76725 .article-count,
    html body .site-main .article-count,
    html body .article-count {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;

        width: 0 !important;
        height: 0 !important;
        min-height: 0 !important;
        max-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        overflow: hidden !important;
    }
}

/* =========================================================
   FINAL MOBILE MENU DEFAULT ICON RESTORE
   =========================================================
   The custom green / labelled mobile menu button has been removed.
   CoverNews now supplies its own default mobile menu icon.
   This section deliberately avoids styling .toggle-menu or .ham,
   so the theme's native hamburger icon can appear normally.
   ========================================================= */

@media screen and (max-width: 768px) {

    html body .main-navigation,
    html body #site-navigation {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
    }
}

/* =========================================================
   FINAL IPHONE MOBILE MENU ICON RESTORE
   =========================================================
   Restores a clean standard hamburger icon for the CoverNews
   mobile menu trigger. This replaces the former empty green
   box and does not use a text label.
   ========================================================= */

@media screen and (max-width: 768px) {

    html body .toggle-menu,
    html body .main-navigation .toggle-menu,
    html body #site-navigation .toggle-menu,
    html body .menu-toggle,
    html body button.menu-toggle,
    html body .navbar-toggle,
    html body .navigation-toggle {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        align-items: center !important;
        justify-content: center !important;

        width: auto !important;
        min-width: 48px !important;
        max-width: none !important;

        height: auto !important;
        min-height: 48px !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #111111 !important;

        border: 0 !important;
        box-shadow: none !important;

        position: relative !important;
        z-index: 100000 !important;

        overflow: visible !important;
        pointer-events: auto !important;
        cursor: pointer !important;
    }

    html body .toggle-menu > a,
    html body .toggle-menu > button,
    html body .main-navigation .toggle-menu > a,
    html body .main-navigation .toggle-menu > button,
    html body #site-navigation .toggle-menu > a,
    html body #site-navigation .toggle-menu > button,
    html body .menu-toggle,
    html body button.menu-toggle,
    html body .navbar-toggle,
    html body .navigation-toggle {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;

        align-items: center !important;
        justify-content: center !important;

        width: 48px !important;
        min-width: 48px !important;
        max-width: 48px !important;

        height: 48px !important;
        min-height: 48px !important;
        max-height: 48px !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #ffffff !important;
        background-color: #ffffff !important;
        color: #111111 !important;

        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;

        font-size: 0 !important;
        line-height: 1 !important;
        text-indent: 0 !important;
        text-decoration: none !important;
        white-space: nowrap !important;

        position: relative !important;
        overflow: visible !important;
        pointer-events: auto !important;
        cursor: pointer !important;
    }

    html body .toggle-menu > a::before,
    html body .toggle-menu > button::before,
    html body .main-navigation .toggle-menu > a::before,
    html body .main-navigation .toggle-menu > button::before,
    html body #site-navigation .toggle-menu > a::before,
    html body #site-navigation .toggle-menu > button::before,
    html body .menu-toggle::before,
    html body button.menu-toggle::before,
    html body .navbar-toggle::before,
    html body .navigation-toggle::before {
        content: "☰" !important;

        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;

        width: auto !important;
        height: auto !important;

        margin: 0 !important;
        padding: 0 !important;

        background: transparent !important;
        background-color: transparent !important;
        color: #111111 !important;

        border: 0 !important;
        box-shadow: none !important;

        font-family: Arial, Helvetica, sans-serif !important;
        font-size: 30px !important;
        font-weight: 700 !important;
        line-height: 1 !important;
        text-indent: 0 !important;
        text-align: center !important;
    }

    html body .toggle-menu > a[aria-expanded="true"]::before,
    html body .toggle-menu > button[aria-expanded="true"]::before,
    html body .main-navigation .toggle-menu > a[aria-expanded="true"]::before,
    html body .main-navigation .toggle-menu > button[aria-expanded="true"]::before,
    html body #site-navigation .toggle-menu > a[aria-expanded="true"]::before,
    html body #site-navigation .toggle-menu > button[aria-expanded="true"]::before,
    html body .menu-toggle[aria-expanded="true"]::before,
    html body button.menu-toggle[aria-expanded="true"]::before,
    html body .navbar-toggle[aria-expanded="true"]::before,
    html body .navigation-toggle[aria-expanded="true"]::before {
        content: "×" !important;
        font-size: 34px !important;
        font-weight: 400 !important;
    }

    html body .toggle-menu > a svg,
    html body .toggle-menu > a i,
    html body .toggle-menu > a span,
    html body .toggle-menu > button svg,
    html body .toggle-menu > button i,
    html body .toggle-menu > button span,
    html body .menu-toggle svg,
    html body .menu-toggle i,
    html body .menu-toggle span,
    html body button.menu-toggle svg,
    html body button.menu-toggle i,
    html body button.menu-toggle span,
    html body .navbar-toggle svg,
    html body .navbar-toggle i,
    html body .navbar-toggle span,
    html body .navigation-toggle svg,
    html body .navigation-toggle i,
    html body .navigation-toggle span {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }
}

/* =========================================================
   FINAL READ ARTICLE BUTTON — SMALLER CURVED STYLE WITH REDUCED TEXT
   =========================================================
   Makes Read Article / Read More buttons smaller, neater and
   rounded across homepage, archive, category, tag and search pages.
   Version 7 reduces the button text size further.
   This block must remain near the end of the stylesheet.
   ========================================================= */

html body .site-main article p.aft-readmore-wrapper,
html body .site-main article .aft-readmore-wrapper,
html body .site-main .post-description p.aft-readmore-wrapper,
html body .site-main .full-item-discription p.aft-readmore-wrapper,
html body .site-main article .read-more-wrapper,
html body .site-main article .read-more-section {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 12px auto 0 !important;
    padding: 0 !important;

    text-align: center !important;
    text-align-last: center !important;
    text-justify: auto !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    float: none !important;
    clear: both !important;
}

html body .site-main article p.aft-readmore-wrapper > a,
html body .site-main article .aft-readmore-wrapper > a,
html body .site-main article a.aft-readmore,
html body .site-main article a.more-link,
html body .site-main article a.read-more,
html body .site-main article a.read-more-link,
html body .site-main article a.readmore,
html body .site-main article a.read-article,
html body .site-main article a.article-read-more,
html body .site-main article a.post-read-more,
html body .site-main article a.btn-read-more,
html body .site-main .post-description p.aft-readmore-wrapper > a,
html body .site-main .full-item-discription p.aft-readmore-wrapper > a,
html body .site-main .post-description a.aft-readmore,
html body .site-main .full-item-discription a.aft-readmore {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    min-height: 27px !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 4px 11px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 999px !important;
    box-shadow: 0 2px 7px rgba(47, 125, 59, 0.16) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 10pt !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
    letter-spacing: 0.1px !important;
    text-transform: none !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;

    transition:
        background-color 0.18s ease,
        color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease !important;
}

html body .site-main article p.aft-readmore-wrapper > a:hover,
html body .site-main article p.aft-readmore-wrapper > a:focus,
html body .site-main article .aft-readmore-wrapper > a:hover,
html body .site-main article .aft-readmore-wrapper > a:focus,
html body .site-main article a.aft-readmore:hover,
html body .site-main article a.aft-readmore:focus,
html body .site-main article a.more-link:hover,
html body .site-main article a.more-link:focus,
html body .site-main article a.read-more:hover,
html body .site-main article a.read-more:focus,
html body .site-main article a.read-more-link:hover,
html body .site-main article a.read-more-link:focus,
html body .site-main article a.readmore:hover,
html body .site-main article a.readmore:focus,
html body .site-main article a.read-article:hover,
html body .site-main article a.read-article:focus,
html body .site-main article a.article-read-more:hover,
html body .site-main article a.article-read-more:focus,
html body .site-main article a.post-read-more:hover,
html body .site-main article a.post-read-more:focus,
html body .site-main article a.btn-read-more:hover,
html body .site-main article a.btn-read-more:focus,
html body .site-main .post-description a.aft-readmore:hover,
html body .site-main .post-description a.aft-readmore:focus,
html body .site-main .full-item-discription a.aft-readmore:hover,
html body .site-main .full-item-discription a.aft-readmore:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    border-color: #2F7D3B !important;

    box-shadow: 0 3px 9px rgba(47, 125, 59, 0.24) !important;
    transform: translateY(-1px) !important;

    text-decoration: none !important;
}

html body .site-main article p.aft-readmore-wrapper > a:visited,
html body .site-main article .aft-readmore-wrapper > a:visited,
html body .site-main article a.aft-readmore:visited,
html body .site-main article a.more-link:visited,
html body .site-main article a.read-more:visited,
html body .site-main article a.read-more-link:visited,
html body .site-main article a.readmore:visited,
html body .site-main article a.read-article:visited,
html body .site-main article a.article-read-more:visited,
html body .site-main article a.post-read-more:visited,
html body .site-main article a.btn-read-more:visited {
    color: #111111 !important;
}

@media screen and (max-width: 768px) {

    html body .site-main article p.aft-readmore-wrapper,
    html body .site-main article .aft-readmore-wrapper,
    html body .site-main .post-description p.aft-readmore-wrapper,
    html body .site-main .full-item-discription p.aft-readmore-wrapper,
    html body .site-main article .read-more-wrapper,
    html body .site-main article .read-more-section {
        margin-top: 10px !important;
    }

    html body .site-main article p.aft-readmore-wrapper > a,
    html body .site-main article .aft-readmore-wrapper > a,
    html body .site-main article a.aft-readmore,
    html body .site-main article a.more-link,
    html body .site-main article a.read-more,
    html body .site-main article a.read-more-link,
    html body .site-main article a.readmore,
    html body .site-main article a.read-article,
    html body .site-main article a.article-read-more,
    html body .site-main article a.post-read-more,
    html body .site-main article a.btn-read-more,
    html body .site-main .post-description a.aft-readmore,
    html body .site-main .full-item-discription a.aft-readmore {
        min-height: 26px !important;
        padding: 4px 10px !important;
        font-size: 9.75pt !important;
        line-height: 1.05 !important;
        border-radius: 999px !important;
    }
}

@media screen and (max-width: 480px) {

    html body .site-main article p.aft-readmore-wrapper > a,
    html body .site-main article .aft-readmore-wrapper > a,
    html body .site-main article a.aft-readmore,
    html body .site-main article a.more-link,
    html body .site-main article a.read-more,
    html body .site-main article a.read-more-link,
    html body .site-main article a.readmore,
    html body .site-main article a.read-article,
    html body .site-main article a.article-read-more,
    html body .site-main article a.post-read-more,
    html body .site-main article a.btn-read-more,
    html body .site-main .post-description a.aft-readmore,
    html body .site-main .full-item-discription a.aft-readmore {
        min-height: 25px !important;
        padding: 4px 9px !important;
        font-size: 9.25pt !important;
    }
}

/* =========================================================
   SUPER FINAL READ ARTICLE BUTTON — TINY CURVED OVERRIDE
   =========================================================
   Purpose:
   - Overrides older 22px Read Article rules.
   - Targets CoverNews wrappers, nested links, spans and generated text.
   - Keeps the button rounded, neat and centred.
   - Hides the extra screen-reader text visually while keeping it available
     to assistive technology.
   ========================================================= */

html body #page .site-main article p.aft-readmore-wrapper,
html body #page .site-main article .aft-readmore-wrapper,
html body #page .site-main .post-description p.aft-readmore-wrapper,
html body #page .site-main .full-item-discription p.aft-readmore-wrapper,
html body #page .site-main article .read-more-wrapper,
html body #page .site-main article .read-more-section,
html body #page .site-main article .read-more-btn {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 10px auto 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;

    text-align: center !important;
    text-align-last: center !important;
    line-height: 1 !important;

    float: none !important;
    clear: both !important;
    box-sizing: border-box !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a,
html body #page .site-main article p.aft-readmore-wrapper a,
html body #page .site-main article .aft-readmore-wrapper > a,
html body #page .site-main article .aft-readmore-wrapper a,
html body #page .site-main article a.aft-readmore,
html body #page .site-main article .aft-readmore,
html body #page .site-main article a.more-link,
html body #page .site-main article .more-link,
html body #page .site-main article a.read-more,
html body #page .site-main article .read-more,
html body #page .site-main article a.read-more-link,
html body #page .site-main article .read-more-link,
html body #page .site-main article a.readmore,
html body #page .site-main article .readmore,
html body #page .site-main article a.read-article,
html body #page .site-main article .read-article,
html body #page .site-main article a.article-read-more,
html body #page .site-main article .article-read-more,
html body #page .site-main article a.post-read-more,
html body #page .site-main article .post-read-more,
html body #page .site-main article a.btn-read-more,
html body #page .site-main article .btn-read-more,
html body #page .site-main .post-description p.aft-readmore-wrapper > a,
html body #page .site-main .post-description p.aft-readmore-wrapper a,
html body #page .site-main .post-description a.aft-readmore,
html body #page .site-main .post-description .aft-readmore,
html body #page .site-main .full-item-discription p.aft-readmore-wrapper > a,
html body #page .site-main .full-item-discription p.aft-readmore-wrapper a,
html body #page .site-main .full-item-discription a.aft-readmore,
html body #page .site-main .full-item-discription .aft-readmore {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;

    min-height: 21px !important;
    height: auto !important;

    margin: 0 auto !important;
    padding: 3px 8px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 1.5px solid #2F7D3B !important;
    border-radius: 999px !important;
    box-shadow: 0 1px 5px rgba(47, 125, 59, 0.14) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;

    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a *,
html body #page .site-main article p.aft-readmore-wrapper a *,
html body #page .site-main article .aft-readmore-wrapper > a *,
html body #page .site-main article .aft-readmore-wrapper a *,
html body #page .site-main article a.aft-readmore *,
html body #page .site-main article .aft-readmore *,
html body #page .site-main article a.more-link *,
html body #page .site-main article .more-link *,
html body #page .site-main article a.read-more *,
html body #page .site-main article .read-more *,
html body #page .site-main article a.read-more-link *,
html body #page .site-main article .read-more-link *,
html body #page .site-main article a.readmore *,
html body #page .site-main article .readmore *,
html body #page .site-main article a.read-article *,
html body #page .site-main article .read-article *,
html body #page .site-main article a.article-read-more *,
html body #page .site-main article .article-read-more *,
html body #page .site-main article a.post-read-more *,
html body #page .site-main article .post-read-more *,
html body #page .site-main article a.btn-read-more *,
html body #page .site-main article .btn-read-more *,
html body #page .site-main .post-description a.aft-readmore *,
html body #page .site-main .post-description .aft-readmore *,
html body #page .site-main .full-item-discription a.aft-readmore *,
html body #page .site-main .full-item-discription .aft-readmore * {
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a::before,
html body #page .site-main article p.aft-readmore-wrapper > a::after,
html body #page .site-main article p.aft-readmore-wrapper a::before,
html body #page .site-main article p.aft-readmore-wrapper a::after,
html body #page .site-main article .aft-readmore-wrapper > a::before,
html body #page .site-main article .aft-readmore-wrapper > a::after,
html body #page .site-main article .aft-readmore-wrapper a::before,
html body #page .site-main article .aft-readmore-wrapper a::after,
html body #page .site-main article a.aft-readmore::before,
html body #page .site-main article a.aft-readmore::after,
html body #page .site-main article a.more-link::before,
html body #page .site-main article a.more-link::after,
html body #page .site-main article a.read-more::before,
html body #page .site-main article a.read-more::after,
html body #page .site-main article a.read-more-link::before,
html body #page .site-main article a.read-more-link::after,
html body #page .site-main article a.readmore::before,
html body #page .site-main article a.readmore::after,
html body #page .site-main article a.read-article::before,
html body #page .site-main article a.read-article::after {
    font-size: 10px !important;
    line-height: 1 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a:hover,
html body #page .site-main article p.aft-readmore-wrapper > a:focus,
html body #page .site-main article p.aft-readmore-wrapper a:hover,
html body #page .site-main article p.aft-readmore-wrapper a:focus,
html body #page .site-main article .aft-readmore-wrapper > a:hover,
html body #page .site-main article .aft-readmore-wrapper > a:focus,
html body #page .site-main article .aft-readmore-wrapper a:hover,
html body #page .site-main article .aft-readmore-wrapper a:focus,
html body #page .site-main article a.aft-readmore:hover,
html body #page .site-main article a.aft-readmore:focus,
html body #page .site-main article a.more-link:hover,
html body #page .site-main article a.more-link:focus,
html body #page .site-main article a.read-more:hover,
html body #page .site-main article a.read-more:focus,
html body #page .site-main article a.read-more-link:hover,
html body #page .site-main article a.read-more-link:focus,
html body #page .site-main article a.readmore:hover,
html body #page .site-main article a.readmore:focus,
html body #page .site-main article a.read-article:hover,
html body #page .site-main article a.read-article:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 2px 6px rgba(47, 125, 59, 0.22) !important;
    text-decoration: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper .screen-reader-text,
html body #page .site-main article .aft-readmore-wrapper .screen-reader-text,
html body #page .site-main article a.aft-readmore .screen-reader-text,
html body #page .site-main article a.more-link .screen-reader-text,
html body #page .site-main article a.read-more .screen-reader-text,
html body #page .site-main article a.read-more-link .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media screen and (max-width: 768px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 20px !important;
        padding: 3px 7px !important;
        font-size: 9px !important;
        line-height: 1 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 9px !important;
        line-height: 1 !important;
    }
}

@media screen and (max-width: 480px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 19px !important;
        padding: 3px 6px !important;
        font-size: 8.5px !important;
        line-height: 1 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 8.5px !important;
        line-height: 1 !important;
    }
}


/* =========================================================
   FINAL OVERRIDE — READ ARTICLE BUTTON BALANCED SIZE
   =========================================================
   Corrects the previous tiny version. Keeps the curved pill
   style but restores comfortable legibility across devices.
   ========================================================= */

html body #page .site-main article p.aft-readmore-wrapper,
html body #page .site-main article .aft-readmore-wrapper {
    display: block !important;
    width: 100% !important;
    margin: 8px 0 0 0 !important;
    padding: 0 !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a,
html body #page .site-main article p.aft-readmore-wrapper a,
html body #page .site-main article .aft-readmore-wrapper > a,
html body #page .site-main article .aft-readmore-wrapper a,
html body #page .site-main article a.aft-readmore,
html body #page .site-main article .aft-readmore,
html body #page .site-main article a.more-link,
html body #page .site-main article .more-link,
html body #page .site-main article a.read-more,
html body #page .site-main article .read-more,
html body #page .site-main article a.read-more-link,
html body #page .site-main article .read-more-link,
html body #page .site-main article a.readmore,
html body #page .site-main article .readmore,
html body #page .site-main article a.read-article,
html body #page .site-main article .read-article,
html body #page .site-main article a.article-read-more,
html body #page .site-main article .article-read-more,
html body #page .site-main article a.post-read-more,
html body #page .site-main article .post-read-more,
html body #page .site-main article a.btn-read-more,
html body #page .site-main article .btn-read-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    min-height: 24px !important;

    margin: 0 auto !important;
    padding: 5px 12px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 1.5px solid #2F7D3B !important;
    border-radius: 999px !important;
    box-shadow: 0 1px 5px rgba(47, 125, 59, 0.14) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.05 !important;
    letter-spacing: 0.1px !important;
    text-transform: none !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;

    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a *,
html body #page .site-main article p.aft-readmore-wrapper a *,
html body #page .site-main article .aft-readmore-wrapper > a *,
html body #page .site-main article .aft-readmore-wrapper a *,
html body #page .site-main article a.aft-readmore *,
html body #page .site-main article .aft-readmore *,
html body #page .site-main article a.more-link *,
html body #page .site-main article .more-link *,
html body #page .site-main article a.read-more *,
html body #page .site-main article .read-more *,
html body #page .site-main article a.read-more-link *,
html body #page .site-main article .read-more-link *,
html body #page .site-main article a.readmore *,
html body #page .site-main article .readmore *,
html body #page .site-main article a.read-article *,
html body #page .site-main article .read-article *,
html body #page .site-main article a.article-read-more *,
html body #page .site-main article .article-read-more *,
html body #page .site-main article a.post-read-more *,
html body #page .site-main article .post-read-more *,
html body #page .site-main article a.btn-read-more *,
html body #page .site-main article .btn-read-more * {
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.05 !important;
    letter-spacing: 0.1px !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a::before,
html body #page .site-main article p.aft-readmore-wrapper > a::after,
html body #page .site-main article p.aft-readmore-wrapper a::before,
html body #page .site-main article p.aft-readmore-wrapper a::after,
html body #page .site-main article .aft-readmore-wrapper > a::before,
html body #page .site-main article .aft-readmore-wrapper > a::after,
html body #page .site-main article .aft-readmore-wrapper a::before,
html body #page .site-main article .aft-readmore-wrapper a::after,
html body #page .site-main article a.aft-readmore::before,
html body #page .site-main article a.aft-readmore::after,
html body #page .site-main article a.more-link::before,
html body #page .site-main article a.more-link::after,
html body #page .site-main article a.read-more::before,
html body #page .site-main article a.read-more::after,
html body #page .site-main article a.read-more-link::before,
html body #page .site-main article a.read-more-link::after,
html body #page .site-main article a.readmore::before,
html body #page .site-main article a.readmore::after,
html body #page .site-main article a.read-article::before,
html body #page .site-main article a.read-article::after {
    font-size: 12px !important;
    line-height: 1.05 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a:hover,
html body #page .site-main article p.aft-readmore-wrapper > a:focus,
html body #page .site-main article p.aft-readmore-wrapper a:hover,
html body #page .site-main article p.aft-readmore-wrapper a:focus,
html body #page .site-main article .aft-readmore-wrapper > a:hover,
html body #page .site-main article .aft-readmore-wrapper > a:focus,
html body #page .site-main article .aft-readmore-wrapper a:hover,
html body #page .site-main article .aft-readmore-wrapper a:focus,
html body #page .site-main article a.aft-readmore:hover,
html body #page .site-main article a.aft-readmore:focus,
html body #page .site-main article a.more-link:hover,
html body #page .site-main article a.more-link:focus,
html body #page .site-main article a.read-more:hover,
html body #page .site-main article a.read-more:focus,
html body #page .site-main article a.read-more-link:hover,
html body #page .site-main article a.read-more-link:focus,
html body #page .site-main article a.readmore:hover,
html body #page .site-main article a.readmore:focus,
html body #page .site-main article a.read-article:hover,
html body #page .site-main article a.read-article:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 2px 6px rgba(47, 125, 59, 0.22) !important;
    text-decoration: none !important;
}

@media screen and (max-width: 768px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 23px !important;
        padding: 5px 11px !important;
        font-size: 11.5px !important;
        line-height: 1.05 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 11.5px !important;
        line-height: 1.05 !important;
    }
}

@media screen and (max-width: 480px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 22px !important;
        padding: 4px 10px !important;
        font-size: 11px !important;
        line-height: 1.05 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 11px !important;
        line-height: 1.05 !important;
    }
}


/* =========================================================
   FINAL OVERRIDE — READ ARTICLE BUTTON 16PT ALL DEVICES
   =========================================================
   Keeps the approved curved pill shape, but restores the
   Read Article wording to a consistent 16pt size on desktop,
   tablet and phone.
   ========================================================= */

html body #page .site-main article p.aft-readmore-wrapper,
html body #page .site-main article .aft-readmore-wrapper {
    display: block !important;
    width: 100% !important;
    margin: 10px 0 0 0 !important;
    padding: 0 !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a,
html body #page .site-main article p.aft-readmore-wrapper a,
html body #page .site-main article .aft-readmore-wrapper > a,
html body #page .site-main article .aft-readmore-wrapper a,
html body #page .site-main article a.aft-readmore,
html body #page .site-main article .aft-readmore,
html body #page .site-main article a.more-link,
html body #page .site-main article .more-link,
html body #page .site-main article a.read-more,
html body #page .site-main article .read-more,
html body #page .site-main article a.read-more-link,
html body #page .site-main article .read-more-link,
html body #page .site-main article a.readmore,
html body #page .site-main article .readmore,
html body #page .site-main article a.read-article,
html body #page .site-main article .read-article,
html body #page .site-main article a.article-read-more,
html body #page .site-main article .article-read-more,
html body #page .site-main article a.post-read-more,
html body #page .site-main article .post-read-more,
html body #page .site-main article a.btn-read-more,
html body #page .site-main article .btn-read-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    min-height: 34px !important;

    margin: 0 auto !important;
    padding: 6px 16px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 1.5px solid #2F7D3B !important;
    border-radius: 999px !important;
    box-shadow: 0 1px 5px rgba(47, 125, 59, 0.14) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16pt !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.05 !important;
    letter-spacing: 0.1px !important;
    text-transform: none !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;

    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a *,
html body #page .site-main article p.aft-readmore-wrapper a *,
html body #page .site-main article .aft-readmore-wrapper > a *,
html body #page .site-main article .aft-readmore-wrapper a *,
html body #page .site-main article a.aft-readmore *,
html body #page .site-main article .aft-readmore *,
html body #page .site-main article a.more-link *,
html body #page .site-main article .more-link *,
html body #page .site-main article a.read-more *,
html body #page .site-main article .read-more *,
html body #page .site-main article a.read-more-link *,
html body #page .site-main article .read-more-link *,
html body #page .site-main article a.readmore *,
html body #page .site-main article .readmore *,
html body #page .site-main article a.read-article *,
html body #page .site-main article .read-article *,
html body #page .site-main article a.article-read-more *,
html body #page .site-main article .article-read-more *,
html body #page .site-main article a.post-read-more *,
html body #page .site-main article .post-read-more *,
html body #page .site-main article a.btn-read-more *,
html body #page .site-main article .btn-read-more * {
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16pt !important;
    font-weight: 700 !important;
    font-style: normal !important;
    line-height: 1.05 !important;
    letter-spacing: 0.1px !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a::before,
html body #page .site-main article p.aft-readmore-wrapper > a::after,
html body #page .site-main article p.aft-readmore-wrapper a::before,
html body #page .site-main article p.aft-readmore-wrapper a::after,
html body #page .site-main article .aft-readmore-wrapper > a::before,
html body #page .site-main article .aft-readmore-wrapper > a::after,
html body #page .site-main article .aft-readmore-wrapper a::before,
html body #page .site-main article .aft-readmore-wrapper a::after,
html body #page .site-main article a.aft-readmore::before,
html body #page .site-main article a.aft-readmore::after,
html body #page .site-main article a.more-link::before,
html body #page .site-main article a.more-link::after,
html body #page .site-main article a.read-more::before,
html body #page .site-main article a.read-more::after,
html body #page .site-main article a.read-more-link::before,
html body #page .site-main article a.read-more-link::after,
html body #page .site-main article a.readmore::before,
html body #page .site-main article a.readmore::after,
html body #page .site-main article a.read-article::before,
html body #page .site-main article a.read-article::after {
    font-size: 16pt !important;
    line-height: 1.05 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html body #page .site-main article p.aft-readmore-wrapper > a:hover,
html body #page .site-main article p.aft-readmore-wrapper > a:focus,
html body #page .site-main article p.aft-readmore-wrapper a:hover,
html body #page .site-main article p.aft-readmore-wrapper a:focus,
html body #page .site-main article .aft-readmore-wrapper > a:hover,
html body #page .site-main article .aft-readmore-wrapper > a:focus,
html body #page .site-main article .aft-readmore-wrapper a:hover,
html body #page .site-main article .aft-readmore-wrapper a:focus,
html body #page .site-main article a.aft-readmore:hover,
html body #page .site-main article a.aft-readmore:focus,
html body #page .site-main article a.more-link:hover,
html body #page .site-main article a.more-link:focus,
html body #page .site-main article a.read-more:hover,
html body #page .site-main article a.read-more:focus,
html body #page .site-main article a.read-more-link:hover,
html body #page .site-main article a.read-more-link:focus,
html body #page .site-main article a.readmore:hover,
html body #page .site-main article a.readmore:focus,
html body #page .site-main article a.read-article:hover,
html body #page .site-main article a.read-article:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 2px 6px rgba(47, 125, 59, 0.22) !important;
    text-decoration: none !important;
}

@media screen and (max-width: 768px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 34px !important;
        padding: 6px 16px !important;
        font-size: 16pt !important;
        line-height: 1.05 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 16pt !important;
        line-height: 1.05 !important;
    }
}

@media screen and (max-width: 480px) {
    html body #page .site-main article p.aft-readmore-wrapper > a,
    html body #page .site-main article p.aft-readmore-wrapper a,
    html body #page .site-main article .aft-readmore-wrapper > a,
    html body #page .site-main article .aft-readmore-wrapper a,
    html body #page .site-main article a.aft-readmore,
    html body #page .site-main article .aft-readmore,
    html body #page .site-main article a.more-link,
    html body #page .site-main article .more-link,
    html body #page .site-main article a.read-more,
    html body #page .site-main article .read-more,
    html body #page .site-main article a.read-more-link,
    html body #page .site-main article .read-more-link,
    html body #page .site-main article a.readmore,
    html body #page .site-main article .readmore,
    html body #page .site-main article a.read-article,
    html body #page .site-main article .read-article {
        min-height: 34px !important;
        padding: 6px 16px !important;
        font-size: 16pt !important;
        line-height: 1.05 !important;
    }

    html body #page .site-main article p.aft-readmore-wrapper > a *,
    html body #page .site-main article p.aft-readmore-wrapper a *,
    html body #page .site-main article .aft-readmore-wrapper > a *,
    html body #page .site-main article .aft-readmore-wrapper a *,
    html body #page .site-main article a.aft-readmore *,
    html body #page .site-main article .aft-readmore *,
    html body #page .site-main article a.more-link *,
    html body #page .site-main article .more-link *,
    html body #page .site-main article a.read-more *,
    html body #page .site-main article .read-more *,
    html body #page .site-main article a.read-more-link *,
    html body #page .site-main article .read-more-link * {
        font-size: 16pt !important;
        line-height: 1.05 !important;
    }
}

/* =========================================================
   FINAL READ ARTICLE OVERRIDE — 16PX ACROSS ALL DEVICES
   =========================================================
   16pt is almost the same visual size as the old 22px button.
   This final override uses 16px instead, keeps the curved pill
   shape, and targets both CoverNews and WordPress block outputs.
   ========================================================= */

html body #page .site-main .wp-block-read-more,
html body #page .site-main .wp-block-read-more:link,
html body #page .site-main .wp-block-read-more:visited,
html body #page .site-main article .wp-block-read-more,
html body #page .site-main article .wp-block-read-more:link,
html body #page .site-main article .wp-block-read-more:visited,
html body #page .site-main p.aft-readmore-wrapper > a,
html body #page .site-main p.aft-readmore-wrapper a,
html body #page .site-main .aft-readmore-wrapper > a,
html body #page .site-main .aft-readmore-wrapper a,
html body #page .site-main a.aft-readmore,
html body #page .site-main .aft-readmore,
html body #page .site-main a.more-link,
html body #page .site-main .more-link,
html body #page .site-main a.read-more,
html body #page .site-main .read-more,
html body #page .site-main a.read-more-link,
html body #page .site-main .read-more-link,
html body #page .site-main a.readmore,
html body #page .site-main .readmore,
html body #page .site-main a.read-article,
html body #page .site-main .read-article,
html body #page .site-main a.article-read-more,
html body #page .site-main .article-read-more,
html body #page .site-main a.post-read-more,
html body #page .site-main .post-read-more,
html body #page .site-main a.btn-read-more,
html body #page .site-main .btn-read-more,
html body.home #page .site-main .wp-block-read-more,
html body.home #page .site-main p.aft-readmore-wrapper > a,
html body.home #page .site-main .aft-readmore-wrapper a,
html body.home #page .site-main a.aft-readmore,
html body.home #page .site-main a.more-link,
html body.home #page .site-main a.read-more,
html body.blog #page .site-main .wp-block-read-more,
html body.blog #page .site-main p.aft-readmore-wrapper > a,
html body.blog #page .site-main .aft-readmore-wrapper a,
html body.blog #page .site-main a.aft-readmore,
html body.blog #page .site-main a.more-link,
html body.blog #page .site-main a.read-more {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: max-content !important;
    min-height: 30px !important;
    height: auto !important;

    margin-left: auto !important;
    margin-right: auto !important;
    padding: 6px 14px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 1.5px solid #2F7D3B !important;
    border-radius: 999px !important;
    box-shadow: 0 1px 5px rgba(47, 125, 59, 0.14) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.1px !important;
    text-transform: none !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;

    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;

    float: none !important;
    clear: none !important;
    box-sizing: border-box !important;
}

html body #page .site-main .wp-block-read-more *,
html body #page .site-main article .wp-block-read-more *,
html body #page .site-main p.aft-readmore-wrapper > a *,
html body #page .site-main p.aft-readmore-wrapper a *,
html body #page .site-main .aft-readmore-wrapper > a *,
html body #page .site-main .aft-readmore-wrapper a *,
html body #page .site-main a.aft-readmore *,
html body #page .site-main .aft-readmore *,
html body #page .site-main a.more-link *,
html body #page .site-main .more-link *,
html body #page .site-main a.read-more *,
html body #page .site-main .read-more *,
html body #page .site-main a.read-more-link *,
html body #page .site-main .read-more-link *,
html body #page .site-main a.readmore *,
html body #page .site-main .readmore *,
html body #page .site-main a.read-article *,
html body #page .site-main .read-article * {
    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0.1px !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
    text-transform: none !important;
    text-decoration: none !important;
}

html body #page .site-main .wp-block-read-more::before,
html body #page .site-main .wp-block-read-more::after,
html body #page .site-main article .wp-block-read-more::before,
html body #page .site-main article .wp-block-read-more::after,
html body #page .site-main p.aft-readmore-wrapper > a::before,
html body #page .site-main p.aft-readmore-wrapper > a::after,
html body #page .site-main p.aft-readmore-wrapper a::before,
html body #page .site-main p.aft-readmore-wrapper a::after,
html body #page .site-main .aft-readmore-wrapper > a::before,
html body #page .site-main .aft-readmore-wrapper > a::after,
html body #page .site-main .aft-readmore-wrapper a::before,
html body #page .site-main .aft-readmore-wrapper a::after,
html body #page .site-main a.aft-readmore::before,
html body #page .site-main a.aft-readmore::after,
html body #page .site-main a.more-link::before,
html body #page .site-main a.more-link::after,
html body #page .site-main a.read-more::before,
html body #page .site-main a.read-more::after,
html body #page .site-main a.read-more-link::before,
html body #page .site-main a.read-more-link::after,
html body #page .site-main a.readmore::before,
html body #page .site-main a.readmore::after,
html body #page .site-main a.read-article::before,
html body #page .site-main a.read-article::after {
    font-size: 16px !important;
    line-height: 1.1 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

body:has(a[aria-current="page"][href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after,
body:has(.current-menu-item > a[href*="/latest-articles/"]) .wp-block-latest-posts__post-title::after,
html body #page .wp-block-latest-posts__post-title::after {
    min-height: 30px !important;
    padding: 6px 14px !important;
    border: 1.5px solid #2F7D3B !important;
    border-radius: 999px !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

html body #page .site-main .wp-block-read-more:hover,
html body #page .site-main .wp-block-read-more:focus,
html body #page .site-main article .wp-block-read-more:hover,
html body #page .site-main article .wp-block-read-more:focus,
html body #page .site-main p.aft-readmore-wrapper > a:hover,
html body #page .site-main p.aft-readmore-wrapper > a:focus,
html body #page .site-main p.aft-readmore-wrapper a:hover,
html body #page .site-main p.aft-readmore-wrapper a:focus,
html body #page .site-main .aft-readmore-wrapper > a:hover,
html body #page .site-main .aft-readmore-wrapper > a:focus,
html body #page .site-main .aft-readmore-wrapper a:hover,
html body #page .site-main .aft-readmore-wrapper a:focus,
html body #page .site-main a.aft-readmore:hover,
html body #page .site-main a.aft-readmore:focus,
html body #page .site-main a.more-link:hover,
html body #page .site-main a.more-link:focus,
html body #page .site-main a.read-more:hover,
html body #page .site-main a.read-more:focus,
html body #page .site-main a.read-more-link:hover,
html body #page .site-main a.read-more-link:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 2px 6px rgba(47, 125, 59, 0.22) !important;
    text-decoration: none !important;
}

html body #page .site-main .wp-block-read-more .screen-reader-text,
html body #page .site-main p.aft-readmore-wrapper .screen-reader-text,
html body #page .site-main .aft-readmore-wrapper .screen-reader-text,
html body #page .site-main a.aft-readmore .screen-reader-text,
html body #page .site-main a.more-link .screen-reader-text,
html body #page .site-main a.read-more .screen-reader-text,
html body #page .site-main a.read-more-link .screen-reader-text {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

@media screen and (max-width: 1024px) {
    html body #page .site-main .wp-block-read-more,
    html body #page .site-main article .wp-block-read-more,
    html body #page .site-main p.aft-readmore-wrapper > a,
    html body #page .site-main p.aft-readmore-wrapper a,
    html body #page .site-main .aft-readmore-wrapper a,
    html body #page .site-main a.aft-readmore,
    html body #page .site-main a.more-link,
    html body #page .site-main a.read-more,
    html body #page .site-main a.read-more-link,
    html body #page .site-main a.readmore,
    html body #page .site-main a.read-article {
        min-height: 30px !important;
        padding: 6px 14px !important;
        font-size: 16px !important;
        line-height: 1.1 !important;
    }
}

@media screen and (max-width: 768px) {
    html body #page .site-main .wp-block-read-more,
    html body #page .site-main article .wp-block-read-more,
    html body #page .site-main p.aft-readmore-wrapper > a,
    html body #page .site-main p.aft-readmore-wrapper a,
    html body #page .site-main .aft-readmore-wrapper a,
    html body #page .site-main a.aft-readmore,
    html body #page .site-main a.more-link,
    html body #page .site-main a.read-more,
    html body #page .site-main a.read-more-link,
    html body #page .site-main a.readmore,
    html body #page .site-main a.read-article {
        min-height: 30px !important;
        padding: 6px 14px !important;
        font-size: 16px !important;
        line-height: 1.1 !important;
    }
}

@media screen and (max-width: 480px) {
    html body #page .site-main .wp-block-read-more,
    html body #page .site-main article .wp-block-read-more,
    html body #page .site-main p.aft-readmore-wrapper > a,
    html body #page .site-main p.aft-readmore-wrapper a,
    html body #page .site-main .aft-readmore-wrapper a,
    html body #page .site-main a.aft-readmore,
    html body #page .site-main a.more-link,
    html body #page .site-main a.read-more,
    html body #page .site-main a.read-more-link,
    html body #page .site-main a.readmore,
    html body #page .site-main a.read-article {
        min-height: 30px !important;
        padding: 6px 14px !important;
        font-size: 16px !important;
        line-height: 1.1 !important;
    }
}


/* =========================================================
   FINAL OVERRIDE — CIRCULAR PAGE NAVIGATION BUTTONS
   =========================================================
   Keeps the Read Article button unchanged and improves only
   pagination / page-number navigation controls.
   ========================================================= */

html body #page .pagination,
html body #page .navigation.pagination,
html body #page .wp-block-query-pagination,
html body #page .wp-block-query-pagination-numbers,
html body #page .site-main .pagination,
html body #page .site-main .navigation.pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 28px auto 30px auto !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    text-align: center !important;
}

html body #page .pagination .nav-links,
html body #page .navigation.pagination .nav-links,
html body #page .site-main .pagination .nav-links,
html body #page .site-main .navigation.pagination .nav-links {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

html body #page .pagination .page-numbers,
html body #page .pagination a.page-numbers,
html body #page .pagination span.page-numbers,
html body #page .navigation.pagination .page-numbers,
html body #page .navigation.pagination a.page-numbers,
html body #page .navigation.pagination span.page-numbers,
html body #page .site-main .pagination .page-numbers,
html body #page .site-main .pagination a.page-numbers,
html body #page .site-main .pagination span.page-numbers,
html body #page .wp-block-query-pagination .page-numbers,
html body #page .wp-block-query-pagination a.page-numbers,
html body #page .wp-block-query-pagination span.page-numbers,
html body #page .wp-block-query-pagination-numbers .page-numbers,
html body #page .wp-block-query-pagination-numbers a,
html body #page .wp-block-query-pagination-next,
html body #page .wp-block-query-pagination-previous {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;

    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 50% !important;

    box-shadow: 0 2px 7px rgba(47, 125, 59, 0.16) !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-align-last: center !important;
    text-decoration: none !important;

    overflow: hidden !important;
    box-sizing: border-box !important;
    vertical-align: middle !important;

    transition:
        background-color 0.18s ease,
        color 0.18s ease,
        border-color 0.18s ease,
        box-shadow 0.18s ease,
        transform 0.18s ease !important;
}

html body #page .pagination .page-numbers.current,
html body #page .navigation.pagination .page-numbers.current,
html body #page .site-main .pagination .page-numbers.current,
html body #page .wp-block-query-pagination .page-numbers.current,
html body #page .wp-block-query-pagination-numbers .current {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 3px 9px rgba(47, 125, 59, 0.24) !important;
}

html body #page .pagination a.page-numbers:hover,
html body #page .pagination a.page-numbers:focus,
html body #page .navigation.pagination a.page-numbers:hover,
html body #page .navigation.pagination a.page-numbers:focus,
html body #page .site-main .pagination a.page-numbers:hover,
html body #page .site-main .pagination a.page-numbers:focus,
html body #page .wp-block-query-pagination a.page-numbers:hover,
html body #page .wp-block-query-pagination a.page-numbers:focus,
html body #page .wp-block-query-pagination-numbers a:hover,
html body #page .wp-block-query-pagination-numbers a:focus,
html body #page .wp-block-query-pagination-next:hover,
html body #page .wp-block-query-pagination-next:focus,
html body #page .wp-block-query-pagination-previous:hover,
html body #page .wp-block-query-pagination-previous:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
    box-shadow: 0 4px 10px rgba(47, 125, 59, 0.28) !important;
    text-decoration: none !important;
    transform: translateY(-1px) !important;
    outline: none !important;
}

html body #page .pagination .page-numbers.dots,
html body #page .navigation.pagination .page-numbers.dots,
html body #page .site-main .pagination .page-numbers.dots,
html body #page .wp-block-query-pagination .page-numbers.dots {
    width: auto !important;
    min-width: 18px !important;
    max-width: none !important;

    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;

    background: transparent !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Make text-based Previous / Next pagination appear as clean circular arrows. */
html body #page .pagination .prev.page-numbers,
html body #page .pagination .next.page-numbers,
html body #page .navigation.pagination .prev.page-numbers,
html body #page .navigation.pagination .next.page-numbers,
html body #page .site-main .pagination .prev.page-numbers,
html body #page .site-main .pagination .next.page-numbers,
html body #page .wp-block-query-pagination-previous,
html body #page .wp-block-query-pagination-next {
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0 !important;
}

html body #page .pagination .prev.page-numbers::before,
html body #page .navigation.pagination .prev.page-numbers::before,
html body #page .site-main .pagination .prev.page-numbers::before,
html body #page .wp-block-query-pagination-previous::before {
    content: "‹" !important;
    display: inline-block !important;
    font-family: Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

html body #page .pagination .next.page-numbers::before,
html body #page .navigation.pagination .next.page-numbers::before,
html body #page .site-main .pagination .next.page-numbers::before,
html body #page .wp-block-query-pagination-next::before {
    content: "›" !important;
    display: inline-block !important;
    font-family: Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;
}

@media screen and (max-width: 768px) {
    html body #page .pagination,
    html body #page .navigation.pagination,
    html body #page .wp-block-query-pagination,
    html body #page .wp-block-query-pagination-numbers,
    html body #page .site-main .pagination,
    html body #page .site-main .navigation.pagination,
    html body #page .pagination .nav-links,
    html body #page .navigation.pagination .nav-links {
        gap: 7px !important;
        margin-top: 22px !important;
        margin-bottom: 24px !important;
    }

    html body #page .pagination .page-numbers,
    html body #page .pagination a.page-numbers,
    html body #page .pagination span.page-numbers,
    html body #page .navigation.pagination .page-numbers,
    html body #page .navigation.pagination a.page-numbers,
    html body #page .navigation.pagination span.page-numbers,
    html body #page .site-main .pagination .page-numbers,
    html body #page .site-main .pagination a.page-numbers,
    html body #page .site-main .pagination span.page-numbers,
    html body #page .wp-block-query-pagination .page-numbers,
    html body #page .wp-block-query-pagination a.page-numbers,
    html body #page .wp-block-query-pagination span.page-numbers,
    html body #page .wp-block-query-pagination-numbers .page-numbers,
    html body #page .wp-block-query-pagination-numbers a,
    html body #page .wp-block-query-pagination-next,
    html body #page .wp-block-query-pagination-previous {
        width: 38px !important;
        min-width: 38px !important;
        max-width: 38px !important;
        height: 38px !important;
        min-height: 38px !important;
        max-height: 38px !important;
        font-size: 13px !important;
    }

    html body #page .pagination .prev.page-numbers::before,
    html body #page .pagination .next.page-numbers::before,
    html body #page .navigation.pagination .prev.page-numbers::before,
    html body #page .navigation.pagination .next.page-numbers::before,
    html body #page .site-main .pagination .prev.page-numbers::before,
    html body #page .site-main .pagination .next.page-numbers::before,
    html body #page .wp-block-query-pagination-previous::before,
    html body #page .wp-block-query-pagination-next::before {
        font-size: 22px !important;
    }
}

@media screen and (max-width: 480px) {
    html body #page .pagination,
    html body #page .navigation.pagination,
    html body #page .wp-block-query-pagination,
    html body #page .wp-block-query-pagination-numbers,
    html body #page .site-main .pagination,
    html body #page .site-main .navigation.pagination,
    html body #page .pagination .nav-links,
    html body #page .navigation.pagination .nav-links {
        gap: 6px !important;
    }

    html body #page .pagination .page-numbers,
    html body #page .pagination a.page-numbers,
    html body #page .pagination span.page-numbers,
    html body #page .navigation.pagination .page-numbers,
    html body #page .navigation.pagination a.page-numbers,
    html body #page .navigation.pagination span.page-numbers,
    html body #page .site-main .pagination .page-numbers,
    html body #page .site-main .pagination a.page-numbers,
    html body #page .site-main .pagination span.page-numbers,
    html body #page .wp-block-query-pagination .page-numbers,
    html body #page .wp-block-query-pagination a.page-numbers,
    html body #page .wp-block-query-pagination span.page-numbers,
    html body #page .wp-block-query-pagination-numbers .page-numbers,
    html body #page .wp-block-query-pagination-numbers a,
    html body #page .wp-block-query-pagination-next,
    html body #page .wp-block-query-pagination-previous {
        width: 36px !important;
        min-width: 36px !important;
        max-width: 36px !important;
        height: 36px !important;
        min-height: 36px !important;
        max-height: 36px !important;
        font-size: 12.5px !important;
    }
}

/* =========================================================
   SITEWIDE CONTENT LINKS AS BUTTONS — CONFLICT-SAFE FINAL
   =========================================================
   Purpose:
   - Turns normal content links into neat archive-style buttons.
   - Keeps menus, submenus, header links, logo links, image links,
     title links, archive-card buttons, pagination and existing
     WordPress/theme buttons unchanged.
   - This block is intentionally placed near the end of the CSS so
     it overrides the earlier general Site links rule without
     disturbing navigation or specialist archive layouts.
   ========================================================= */

html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .navigation.pagination a,
    .nav-links a,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    max-width: 100% !important;
    min-height: 38px !important;

    margin: 4px 3px !important;
    padding: 8px 16px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #111111 !important;
    -webkit-text-fill-color: #111111 !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 999px !important;

    box-shadow: none !important;

    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-decoration-color: transparent !important;
    text-transform: none !important;

    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;

    vertical-align: middle !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        box-shadow 0.2s ease !important;
}

html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .navigation.pagination a,
    .nav-links a,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)):hover,
html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .navigation.pagination a,
    .nav-links a,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)):focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;

    text-decoration: none !important;
    text-decoration-color: transparent !important;

    box-shadow: 0 2px 8px rgba(47, 125, 59, 0.22) !important;
}

html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .navigation.pagination a,
    .nav-links a,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)):focus-visible {
    outline: 3px solid #2F7D3B !important;
    outline-offset: 3px !important;
}

/* Image links must stay clean and must never become visible buttons. */

html body #page a:has(img),
html body #page .wp-block-image a,
html body #page .wp-block-gallery a,
html body #page .gallery a,
html body #page figure a,
html body #page .post-thumbnail a,
html body #page .featured-image a,
html body #page .full-width-image a,
html body #page .read-img a {
    display: inline !important;

    width: auto !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    background-color: transparent !important;
    color: inherit !important;
    -webkit-text-fill-color: inherit !important;

    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;

    text-decoration: none !important;
}

@media screen and (max-width: 480px) {

    html body #page :where(
        .entry-content,
        .entry-summary,
        .comment-content,
        .wp-block-post-content,
        .textwidget,
        .widget:not(.widget_nav_menu),
        .site-footer .widget:not(.widget_nav_menu),
        .footer-widgets .widget:not(.widget_nav_menu)
    ) a:not(:where(
        nav a,
        .main-navigation a,
        #site-navigation a,
        .site-navigation a,
        .wp-block-navigation a,
        .menu a,
        .sub-menu a,
        .children a,
        .primary-menu a,
        .top-navigation a,
        .secondary-navigation a,
        .footer-navigation a,
        .widget_nav_menu a,
        .site-header a,
        #masthead a,
        .masthead a,
        .header-main a,
        .site-branding a,
        .custom-logo-link,
        #wpadminbar a,
        .entry-title a,
        .page-title a,
        .archive-title a,
        .search-title a,
        .post-title a,
        h1 a,
        h2 a,
        h3 a,
        h4 a,
        h5 a,
        h6 a,
        .post-thumbnail a,
        .featured-image a,
        .full-width-image a,
        .read-img a,
        .wp-block-image a,
        .wp-block-gallery a,
        .gallery a,
        figure a,
        a:has(img),
        .button,
        .wp-element-button,
        .wp-block-button__link,
        .read-more,
        .more-link,
        .aft-readmore,
        .page-numbers,
        .pagination a,
        .navigation.pagination a,
        .nav-links a,
        .post-navigation a,
        .posts-navigation a,
        .comment-navigation a,
        .tags-links a,
        .post-tags a,
        .entry-tags a,
        .tag-links a,
        .aft-post-tags a,
        .breadcrumbs a,
        .breadcrumb a,
        .ez-toc-container a,
        .toc a,
        .screen-reader-text,
        .skip-link,
        .social-navigation a,
        .aft-social-navigation a,
        .wp-social-link a,
        .wp-block-social-links a
    )) {
        min-height: 36px !important;
        padding: 7px 13px !important;
        margin: 4px 2px !important;
    }
}

/* =========================================================
   FINAL GLOBAL BUTTON COLOUR SYSTEM — LIMERICK ARCHIVES
   =========================================================
   Normal button state:
   - White background
   - Theme green text
   - Theme green border

   Hover / focus state:
   - Theme green background
   - White text
   - Theme green border

   Menus, submenus, header navigation, logo links and image links
   remain protected.
   ========================================================= */

html body #page :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .read-more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .pagination span,
    .navigation.pagination a,
    .navigation.pagination span,
    .wp-block-query-pagination a,
    .wp-block-query-pagination-next,
    .wp-block-query-pagination-previous,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .download-link,
    .download-button,
    a[class*="button"],
    a[class*="btn"]
):not(:where(
    nav *,
    .main-navigation *,
    #site-navigation *,
    .site-navigation *,
    .wp-block-navigation *,
    .menu *,
    .sub-menu *,
    .children *,
    .primary-menu *,
    .top-navigation *,
    .secondary-navigation *,
    .footer-navigation *,
    .widget_nav_menu *,
    .site-header *,
    #masthead *,
    .masthead *,
    .header-main *,
    .site-branding *,
    #wpadminbar *,
    .custom-logo-link,
    .menu-toggle,
    .toggle-menu *,
    .dropdown-toggle,
    .sub-menu-toggle,
    .submenu-toggle,
    .social-navigation *,
    .aft-social-navigation *,
    .wp-social-link *,
    .wp-block-social-links *
)) {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border-color: #2F7D3B !important;

    text-decoration: none !important;
    text-decoration-color: transparent !important;

    box-shadow: none !important;
}

html body #page :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .read-more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .pagination span,
    .navigation.pagination a,
    .navigation.pagination span,
    .wp-block-query-pagination a,
    .wp-block-query-pagination-next,
    .wp-block-query-pagination-previous,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .download-link,
    .download-button,
    a[class*="button"],
    a[class*="btn"]
):not(:where(
    nav *,
    .main-navigation *,
    #site-navigation *,
    .site-navigation *,
    .wp-block-navigation *,
    .menu *,
    .sub-menu *,
    .children *,
    .primary-menu *,
    .top-navigation *,
    .secondary-navigation *,
    .footer-navigation *,
    .widget_nav_menu *,
    .site-header *,
    #masthead *,
    .masthead *,
    .header-main *,
    .site-branding *,
    #wpadminbar *,
    .custom-logo-link,
    .menu-toggle,
    .toggle-menu *,
    .dropdown-toggle,
    .sub-menu-toggle,
    .submenu-toggle,
    .social-navigation *,
    .aft-social-navigation *,
    .wp-social-link *,
    .wp-block-social-links *
)):hover,
html body #page :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .read-more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .pagination span,
    .navigation.pagination a,
    .navigation.pagination span,
    .wp-block-query-pagination a,
    .wp-block-query-pagination-next,
    .wp-block-query-pagination-previous,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .download-link,
    .download-button,
    a[class*="button"],
    a[class*="btn"]
):not(:where(
    nav *,
    .main-navigation *,
    #site-navigation *,
    .site-navigation *,
    .wp-block-navigation *,
    .menu *,
    .sub-menu *,
    .children *,
    .primary-menu *,
    .top-navigation *,
    .secondary-navigation *,
    .footer-navigation *,
    .widget_nav_menu *,
    .site-header *,
    #masthead *,
    .masthead *,
    .header-main *,
    .site-branding *,
    #wpadminbar *,
    .custom-logo-link,
    .menu-toggle,
    .toggle-menu *,
    .dropdown-toggle,
    .sub-menu-toggle,
    .submenu-toggle,
    .social-navigation *,
    .aft-social-navigation *,
    .wp-social-link *,
    .wp-block-social-links *
)):focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;

    text-decoration: none !important;
    text-decoration-color: transparent !important;

    box-shadow: 0 2px 8px rgba(47, 125, 59, 0.22) !important;
}

html body #page :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .read-more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .pagination span,
    .navigation.pagination a,
    .navigation.pagination span,
    .wp-block-query-pagination a,
    .wp-block-query-pagination-next,
    .wp-block-query-pagination-previous,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .download-link,
    .download-button,
    a[class*="button"],
    a[class*="btn"]
):not(:where(
    nav *,
    .main-navigation *,
    #site-navigation *,
    .site-navigation *,
    .wp-block-navigation *,
    .menu *,
    .sub-menu *,
    .children *,
    .primary-menu *,
    .top-navigation *,
    .secondary-navigation *,
    .footer-navigation *,
    .widget_nav_menu *,
    .site-header *,
    #masthead *,
    .masthead *,
    .header-main *,
    .site-branding *,
    #wpadminbar *,
    .custom-logo-link,
    .menu-toggle,
    .toggle-menu *,
    .dropdown-toggle,
    .sub-menu-toggle,
    .submenu-toggle,
    .social-navigation *,
    .aft-social-navigation *,
    .wp-social-link *,
    .wp-block-social-links *
)):hover :where(svg, .icon, .fa, .fas, .far, .fab),
html body #page :where(
    button,
    input[type="button"],
    input[type="reset"],
    input[type="submit"],
    .button,
    .wp-element-button,
    .wp-block-button__link,
    .read-more,
    .more-link,
    .read-more-link,
    .aft-readmore,
    .page-numbers,
    .pagination a,
    .pagination span,
    .navigation.pagination a,
    .navigation.pagination span,
    .wp-block-query-pagination a,
    .wp-block-query-pagination-next,
    .wp-block-query-pagination-previous,
    .post-navigation a,
    .posts-navigation a,
    .comment-navigation a,
    .tags-links a,
    .post-tags a,
    .entry-tags a,
    .tag-links a,
    .aft-post-tags a,
    .download-link,
    .download-button,
    a[class*="button"],
    a[class*="btn"]
):not(:where(
    nav *,
    .main-navigation *,
    #site-navigation *,
    .site-navigation *,
    .wp-block-navigation *,
    .menu *,
    .sub-menu *,
    .children *,
    .primary-menu *,
    .top-navigation *,
    .secondary-navigation *,
    .footer-navigation *,
    .widget_nav_menu *,
    .site-header *,
    #masthead *,
    .masthead *,
    .header-main *,
    .site-branding *,
    #wpadminbar *,
    .custom-logo-link,
    .menu-toggle,
    .toggle-menu *,
    .dropdown-toggle,
    .sub-menu-toggle,
    .submenu-toggle,
    .social-navigation *,
    .aft-social-navigation *,
    .wp-social-link *,
    .wp-block-social-links *
)):focus :where(svg, .icon, .fa, .fas, .far, .fab) {
    color: #ffffff !important;
    fill: #ffffff !important;
}

/* Normal content links converted into buttons must use the same colour system. */

html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)) {
    background: #ffffff !important;
    background-color: #ffffff !important;
    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;
    border-color: #2F7D3B !important;
}

html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)):hover,
html body #page :where(
    .entry-content,
    .entry-summary,
    .comment-content,
    .wp-block-post-content,
    .textwidget,
    .widget:not(.widget_nav_menu),
    .site-footer .widget:not(.widget_nav_menu),
    .footer-widgets .widget:not(.widget_nav_menu)
) a:not(:where(
    nav a,
    .main-navigation a,
    #site-navigation a,
    .site-navigation a,
    .wp-block-navigation a,
    .menu a,
    .sub-menu a,
    .children a,
    .primary-menu a,
    .top-navigation a,
    .secondary-navigation a,
    .footer-navigation a,
    .widget_nav_menu a,
    .site-header a,
    #masthead a,
    .masthead a,
    .header-main a,
    .site-branding a,
    .custom-logo-link,
    #wpadminbar a,
    .entry-title a,
    .page-title a,
    .archive-title a,
    .search-title a,
    .post-title a,
    h1 a,
    h2 a,
    h3 a,
    h4 a,
    h5 a,
    h6 a,
    .post-thumbnail a,
    .featured-image a,
    .full-width-image a,
    .read-img a,
    .wp-block-image a,
    .wp-block-gallery a,
    .gallery a,
    figure a,
    a:has(img),
    .breadcrumbs a,
    .breadcrumb a,
    .ez-toc-container a,
    .toc a,
    .screen-reader-text,
    .skip-link,
    .social-navigation a,
    .aft-social-navigation a,
    .wp-social-link a,
    .wp-block-social-links a
)):focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: #2F7D3B !important;
}

/* =========================================================
   LIMERICK ARCHIVES SITEWIDE BUTTON ROW — PHP SNIPPET ACTIVE
   =========================================================
   This block styles the row generated by the active Code Snippets
   PHP snippet named:
   Limerick Archives Sitewide Button Row

   The PHP snippet creates:
   <nav class="la-sitewide-archive-buttons"> ... </nav>

   Normal state:
   - white background
   - theme green text
   - theme green border

   Hover / focus state:
   - theme green background
   - white text
   - theme green border

   Menus, submenus, header links, logo links and image links remain
   protected elsewhere in this stylesheet.
   ========================================================= */

html body .la-sitewide-archive-buttons {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 28px auto 18px auto !important;
    padding: 0 12px !important;

    background: transparent !important;
    background-color: transparent !important;

    text-align: center !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

html body .la-sitewide-archive-buttons a,
html body .la-sitewide-archive-buttons a:link,
html body .la-sitewide-archive-buttons a:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 132px !important;

    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;

    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;

    margin: 0 !important;
    padding: 0 8px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 5px !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    vertical-align: middle !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease !important;
}

html body .la-sitewide-archive-buttons a:hover,
html body .la-sitewide-archive-buttons a:focus,
html body .la-sitewide-archive-buttons a:focus-visible {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;

    text-decoration: none !important;
    text-decoration-color: transparent !important;

    box-shadow: none !important;
}

html body .la-sitewide-archive-buttons a:focus-visible {
    outline: 3px solid #2F7D3B !important;
    outline-offset: 3px !important;
}

/* Keep the five-button row usable on smaller screens. */

@media screen and (max-width: 760px) {

    html body .la-sitewide-archive-buttons {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 7px !important;
        margin-top: 24px !important;
        margin-bottom: 16px !important;
    }

    html body .la-sitewide-archive-buttons a,
    html body .la-sitewide-archive-buttons a:link,
    html body .la-sitewide-archive-buttons a:visited {
        flex-basis: 132px !important;
        width: 132px !important;
        min-width: 132px !important;
        max-width: 132px !important;
        height: 34px !important;
        min-height: 34px !important;
        max-height: 34px !important;
        font-size: 12px !important;
    }
}

@media screen and (max-width: 360px) {

    html body .la-sitewide-archive-buttons a,
    html body .la-sitewide-archive-buttons a:link,
    html body .la-sitewide-archive-buttons a:visited {
        flex-basis: 126px !important;
        width: 126px !important;
        min-width: 126px !important;
        max-width: 126px !important;
        font-size: 11.5px !important;
    }
}

/* =========================================================
   LEGACY DECADE-PAGE BUTTON ROW — FALLBACK ONLY
   =========================================================
   Some decade pages may still contain the older manually inserted
   bottom row inside the page content. This fallback keeps that row
   visually identical to the PHP-generated sitewide row until those
   manual rows are removed from the page editor.
   ========================================================= */

html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 24px auto 0 auto !important;
    padding: 0 !important;

    text-align: center !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;

    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a,
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 132px !important;

    width: 132px !important;
    min-width: 132px !important;
    max-width: 132px !important;

    height: 34px !important;
    min-height: 34px !important;
    max-height: 34px !important;

    margin: 0 !important;
    padding: 0 8px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 5px !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a:hover,
html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a:focus,
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a:hover,
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;
    text-decoration: none !important;
}

@media screen and (max-width: 760px) {

    html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
    html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) {
        flex-wrap: wrap !important;
        justify-content: center !important;
    }
}


/* =========================================================
   FINAL FIX — HIDE OLD MANUAL DECADE-PAGE BUTTON ROW
   =========================================================
   The PHP snippet creates the sitewide archive button row at
   the true bottom of the page. Some decade pages still contain
   an older manual row inside the page content. This block hides
   only that old in-page row and leaves the PHP row visible.
   ========================================================= */

/* Hide likely wrapper elements for the old manual row. */
html body.page .entry-content .decade-years-page p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
html body.page .entry-content .decade-years-page p:has(a[href*="/browse-by-decade/"]):has(a[href*="/search-the-archive/"]),
html body.page .entry-content .decade-years-page div:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
html body.page .entry-content .decade-years-page div:has(a[href*="/browse-by-decade/"]):has(a[href*="/search-the-archive/"]),
html body.page .entry-content .decade-years-page nav:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
html body.page .entry-content .decade-years-page nav:has(a[href*="/browse-by-decade/"]):has(a[href*="/search-the-archive/"]),
html body.page .entry-content .decade-years-page .wp-block-buttons:has(a[href*="/browse-by-decade/"]),
html body.page .entry-content .decade-years-page .wp-block-group:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Fallback: if the old row has no reliable wrapper, hide its individual links. */
html body.page .entry-content .decade-years-page a[href*="/browse-by-decade/"],
html body.page .entry-content .decade-years-page a[href*="/latest-articles/"],
html body.page .entry-content .decade-years-page a[href*="/search-the-archive/"],
html body.page .entry-content .decade-years-page a[href*="/1900s"],
html body.page .entry-content .decade-years-page a[href*="/1910s"],
html body.page .entry-content .decade-years-page a[href*="/1920s"],
html body.page .entry-content .decade-years-page a[href*="/1930s"],
html body.page .entry-content .decade-years-page a[href*="/1940s"],
html body.page .entry-content .decade-years-page a[href*="/1950s"],
html body.page .entry-content .decade-years-page a[href*="/1960s"],
html body.page .entry-content .decade-years-page a[href*="/1970s"],
html body.page .entry-content .decade-years-page a[href*="/1980s"],
html body.page .entry-content .decade-years-page a[href*="/1990s"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Reconfirm the PHP-generated row remains visible and styled. */
html body .la-sitewide-archive-buttons,
html body nav.la-sitewide-archive-buttons {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

html body .la-sitewide-archive-buttons a,
html body .la-sitewide-archive-buttons a:link,
html body .la-sitewide-archive-buttons a:visited {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}
/* =========================================================
   LIMERICK ARCHIVES — FINAL 2026 CLEAN OVERRIDES
   =========================================================
   Purpose:
   - Supports the sitewide green masthead generated by the active
     “Limerick Archives Hard Masthead Banner” snippet.
   - Keeps the typography large, elegant and consistent on all pages,
     including the Limerick Photographic Archive / Images pages.
   - Removes old Download / Add To Your Own Collection styling conflicts.
   - Keeps View Image as the only visible photographic archive image action.

   Active snippets expected:
   - Limerick Archives Hard Masthead Banner
   - Limerick Archives Server Side Image Viewer
   ========================================================= */

/* Sitewide hard masthead container. */
html body #la-hard-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    position: relative !important;
    z-index: 2147483000 !important;
}

/* Green masthead panel. */
html body #la-hard-header #la-hard-masthead-banner {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 148px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: linear-gradient(180deg, #348944 0%, #2F7D3B 48%, #286F34 100%) !important;
    color: #ffffff !important;

    border-bottom: 3px double #2F7D3B !important;

    text-align: center !important;
    position: relative !important;
    z-index: 2147483001 !important;
    overflow: hidden !important;
}

html body #la-hard-header #la-hard-masthead-banner a,
html body #la-hard-header #la-hard-masthead-banner a:link,
html body #la-hard-header #la-hard-masthead-banner a:visited,
html body #la-hard-header #la-hard-masthead-banner a:hover,
html body #la-hard-header #la-hard-masthead-banner a:focus {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 148px !important;

    margin: 0 !important;
    padding: 18px 24px !important;

    background: transparent !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: clamp(48px, 6vw, 82px) !important;
    font-weight: 700 !important;
    line-height: 0.98 !important;
    letter-spacing: 0.9px !important;

    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.22) !important;
}

html body #la-hard-header #la-hard-masthead-banner span {
    display: block !important;
}

html body #la-hard-header #la-hard-masthead-banner small {
    display: block !important;

    margin-top: 12px !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: clamp(16px, 1.8vw, 24px) !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.75px !important;

    text-align: center !important;
    text-transform: none !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.14) !important;
}

/* Keep the moved menu directly below the green masthead. */
html body #la-hard-header .main-navigation,
html body #la-hard-header #site-navigation {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    position: relative !important;
    z-index: 2147483002 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
}

/* When the hard masthead snippet is active, retire the old CoverNews masthead. */
html body.la-hard-masthead-active,
html body.la-hard-masthead-active.la-fixed-site-header,
html body.la-hard-masthead-active.scrollup-sticky-header,
html body.la-hard-masthead-active.aft-sticky-header,
html body.la-hard-masthead-active[style*="padding-top"] {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

html body.la-hard-masthead-active #page,
html body.la-hard-masthead-active .site,
html body.la-hard-masthead-active .site-content,
html body.la-hard-masthead-active #content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

html body.la-hard-masthead-active .header-layout-1,
html body.la-hard-masthead-active #masthead,
html body.la-hard-masthead-active header.site-header,
html body.la-hard-masthead-active .site-header {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Photographic Archive action cleanup: hide old download/collection controls only on item pages. */
html:has(link[rel="canonical"][href*="/limerick-photographic-archive/"]) body.single #page :where(
    .tainacan-document-download,
    .tainacan-download,
    .tainacan-button-download,
    .document-download,
    .attachment-download,
    .simplefavorite-button,
    .simplefavorites-button,
    .favorite-button,
    .favourite-button,
    .collection-button,
    .collections-button,
    .add-to-collection,
    .add-to-collection-button,
    .user-collection-button,
    button[class*="favorite"],
    button[class*="favourite"],
    button[class*="collection"],
    a[class*="favorite"],
    a[class*="favourite"],
    a[class*="collection"]
),
body.single-tnc_col_item #page :where(
    .tainacan-document-download,
    .tainacan-download,
    .tainacan-button-download,
    .document-download,
    .attachment-download,
    .simplefavorite-button,
    .simplefavorites-button,
    .favorite-button,
    .favourite-button,
    .collection-button,
    .collections-button,
    .add-to-collection,
    .add-to-collection-button,
    .user-collection-button,
    button[class*="favorite"],
    button[class*="favourite"],
    button[class*="collection"],
    a[class*="favorite"],
    a[class*="favourite"],
    a[class*="collection"]
),
body.single-tainacan_item #page :where(
    .tainacan-document-download,
    .tainacan-download,
    .tainacan-button-download,
    .document-download,
    .attachment-download,
    .simplefavorite-button,
    .simplefavorites-button,
    .favorite-button,
    .favourite-button,
    .collection-button,
    .collections-button,
    .add-to-collection,
    .add-to-collection-button,
    .user-collection-button,
    button[class*="favorite"],
    button[class*="favourite"],
    button[class*="collection"],
    a[class*="favorite"],
    a[class*="favourite"],
    a[class*="collection"]
) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Style the server-side View Image link consistently. */
html body #page a[href*="la_image_viewer"],
html body #content a[href*="la_image_viewer"],
html body .site-content a[href*="la_image_viewer"] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: auto !important;
    min-width: 150px !important;
    min-height: 42px !important;

    margin: 10px auto 20px !important;
    padding: 10px 18px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 6px !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 13pt !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;

    text-align: center !important;
    text-decoration: none !important;

    box-shadow: none !important;
    cursor: pointer !important;
}

html body #page a[href*="la_image_viewer"]:hover,
html body #page a[href*="la_image_viewer"]:focus,
html body #content a[href*="la_image_viewer"]:hover,
html body #content a[href*="la_image_viewer"]:focus,
html body .site-content a[href*="la_image_viewer"]:hover,
html body .site-content a[href*="la_image_viewer"]:focus {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;
    text-decoration: none !important;
}

@media screen and (max-width: 1024px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 126px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        font-size: clamp(44px, 6vw, 64px) !important;
        padding: 16px 20px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: clamp(15px, 1.8vw, 20px) !important;
        margin-top: 9px !important;
    }
}

@media screen and (max-width: 768px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 104px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        font-size: clamp(34px, 9vw, 46px) !important;
        padding: 12px 16px !important;
        line-height: 1.02 !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: 14px !important;
        margin-top: 7px !important;
        letter-spacing: 0.45px !important;
    }
}

@media screen and (max-width: 480px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 94px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        font-size: 34px !important;
        padding: 10px 14px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: 13px !important;
    }
}
/* =========================================================
   PERFECT CSS — FINAL DEVICE AND BUTTON ROW OVERRIDES
   =========================================================
   Purpose:
   - Keeps the sitewide archive button row on one line across
     tablets and narrow customizer previews.
   - Preserves the true footer menu separately.
   - Reinforces the raised green masthead lettering produced by
     the active “Limerick Archives Hard Masthead Banner” snippet.
   - Leaves smaller phones usable without breaking page width.
   ========================================================= */

/* Reconfirm the hard green masthead behaves cleanly on every page. */
html body #la-hard-header,
html body.la-hard-masthead-active #la-hard-header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
    position: relative !important;
    z-index: 2147483000 !important;
}

html body #la-hard-header #la-hard-masthead-banner,
html body.la-hard-masthead-active #la-hard-header #la-hard-masthead-banner {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 140px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #2F7D3B !important;
    color: #ffffff !important;

    text-align: center !important;
    position: relative !important;
    z-index: 2147483001 !important;
}

html body #la-hard-header #la-hard-masthead-banner a,
html body.la-hard-masthead-active #la-hard-header #la-hard-masthead-banner a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    min-height: 140px !important;
    padding: 18px 20px !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    text-align: center !important;
    text-decoration: none !important;
}

html body #la-hard-header #la-hard-masthead-banner strong,
html body.la-hard-masthead-active #la-hard-header #la-hard-masthead-banner strong {
    display: block !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 64px !important;
    font-weight: 700 !important;
    line-height: 1.02 !important;
    letter-spacing: 0.9px !important;

    text-align: center !important;
    transform: translateY(-1px) !important;

    text-shadow:
        0 1px 0 rgba(255, 255, 255, 0.24),
        0 2px 0 rgba(20, 80, 34, 0.55),
        0 4px 4px rgba(0, 0, 0, 0.24),
        0 8px 14px rgba(0, 0, 0, 0.18) !important;

    filter: drop-shadow(0 2px 1px rgba(0, 0, 0, 0.16)) !important;
}

html body #la-hard-header #la-hard-masthead-banner small,
html body.la-hard-masthead-active #la-hard-header #la-hard-masthead-banner small {
    display: block !important;
    margin-top: 10px !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: 0.7px !important;

    text-shadow: none !important;
    filter: none !important;
}

/* Keep the sitewide bottom archive button row on one line. */
html body .la-sitewide-archive-buttons,
html body nav.la-sitewide-archive-buttons {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;

    gap: 6px !important;

    margin: 18px auto !important;
    padding: 0 8px !important;

    overflow-x: hidden !important;
    overflow-y: hidden !important;

    background: transparent !important;
    background-color: transparent !important;
    box-sizing: border-box !important;
}

html body .la-sitewide-archive-buttons a,
html body .la-sitewide-archive-buttons a:link,
html body .la-sitewide-archive-buttons a:visited {
    flex: 1 1 0 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;

    margin: 0 !important;
    padding: 0 4px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    color: #2F7D3B !important;
    -webkit-text-fill-color: #2F7D3B !important;

    border: 2px solid #2F7D3B !important;
    border-radius: 5px !important;

    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 10px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;

    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}

html body .la-sitewide-archive-buttons a:hover,
html body .la-sitewide-archive-buttons a:focus,
html body .la-sitewide-archive-buttons a:focus-visible {
    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;

    border-color: #2F7D3B !important;
    text-decoration: none !important;
}

/* Legacy in-page bottom row fallback, if any old manual row still appears. */
html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]),
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;

    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;

    overflow-x: hidden !important;
    overflow-y: hidden !important;
}

html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a,
html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    font-size: 10px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

@media screen and (min-width: 700px) {
    html body .la-sitewide-archive-buttons a,
    html body .la-sitewide-archive-buttons a:link,
    html body .la-sitewide-archive-buttons a:visited,
    html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a,
    html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a {
        font-size: 11px !important;
        height: 34px !important;
        min-height: 34px !important;
        max-height: 34px !important;
        padding: 0 6px !important;
    }
}

@media screen and (max-width: 1024px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 122px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        padding: 16px 18px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner strong {
        font-size: 52px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: 17px !important;
    }
}

@media screen and (max-width: 768px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 100px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        padding: 14px 16px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner strong {
        font-size: 40px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: 14px !important;
        margin-top: 6px !important;
    }
}

@media screen and (max-width: 430px) {
    html body .la-sitewide-archive-buttons,
    html body nav.la-sitewide-archive-buttons {
        gap: 4px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    html body .la-sitewide-archive-buttons a,
    html body .la-sitewide-archive-buttons a:link,
    html body .la-sitewide-archive-buttons a:visited,
    html body.page .entry-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a,
    html body.page .wp-block-post-content p:has(a[href*="/browse-by-decade/"]):has(a[href*="/latest-articles/"]) a {
        font-size: 8.5px !important;
        height: 30px !important;
        min-height: 30px !important;
        max-height: 30px !important;
        padding: 0 2px !important;
        letter-spacing: -0.1px !important;
    }
}

@media screen and (max-width: 480px) {
    html body #la-hard-header #la-hard-masthead-banner,
    html body #la-hard-header #la-hard-masthead-banner a {
        min-height: 88px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner a {
        padding: 10px 14px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner strong {
        font-size: 32px !important;
    }

    html body #la-hard-header #la-hard-masthead-banner small {
        font-size: 13px !important;
    }
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — FINAL NO-CROP THUMBNAILS
   =========================================================
   Purpose:
   - The public photographic archive grid must show the whole
     uploaded image, not a cropped homepage-style slice.
   - This replaces the old 300 / 157 object-fit: cover treatment
     for this archive only.
   - If any image still crops after this CSS, that specific record
     is being served from an already-cropped thumbnail file and the
     image source must be corrected in PHP.
   ========================================================= */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header),
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header),
body[class*="limerick-photographic-archive"] #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header),
body.post-type-archive-tnc_col_item #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header),
body.tax-tnc_tax #page :is(.post-thumbnail, .featured-image, .full-width-image, .read-img, .read-bg-img, .data-bg, .data-bg-hover, .aft-image, .post-image, .featured-post-image, .archive-image, figure, picture, .limerick-archive-direct-thumbnail, .limerick-archive-card-header) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: visible !important;
    background-color: #ffffff !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
    box-shadow: none !important;
    border: 0 !important;
}

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body[class*="limerick-photographic-archive"] #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.post-type-archive-tnc_col_item #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.tax-tnc_tax #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body[class*="limerick-photographic-archive"] img.limerick-archive-direct-featured-image,
body.post-type-archive-tnc_col_item img.limerick-archive-direct-featured-image,
body.tax-tnc_tax img.limerick-archive-direct-featured-image {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 320px !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
    object-position: center center !important;
    margin: 0 auto 14px auto !important;
    padding: 0 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — SMALL GREEN IMAGE FRAME
   =========================================================
   Adds a narrow Limerick Archives green frame around the public
   photographic archive thumbnails while preserving the full-image
   no-crop treatment.
   ========================================================= */

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body[class*="limerick-photographic-archive"] #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.post-type-archive-tnc_col_item #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body.tax-tnc_tax #page img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
body[class*="limerick-photographic-archive"] img.limerick-archive-direct-featured-image,
body.post-type-archive-tnc_col_item img.limerick-archive-direct-featured-image,
body.tax-tnc_tax img.limerick-archive-direct-featured-image {
    padding: 4px !important;
    border: 2px solid #2F7D3B !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

html body:has(a[aria-current="page"][href*="/limerick-photographic-archive/"]) #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg),
html body:has(.current-menu-item > a[href*="/limerick-photographic-archive/"]) #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg),
html body:has(.site-main a.aft-readmore[href*="/limerick-photographic-archive/"]) #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg),
body[class*="limerick-photographic-archive"] #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg),
body.post-type-archive-tnc_col_item #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg),
body.tax-tnc_tax #page :is(.data-bg, .read-img.data-bg, .aft-image.data-bg, .post-image.data-bg, .featured-post-image.data-bg) {
    padding: 4px !important;
    border: 2px solid #2F7D3B !important;
    background-origin: content-box !important;
    background-clip: content-box !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — REMOVE VIEW IMAGE BOX/LINK
   =========================================================
   Removes the public “View Image” action generated by links
   containing the la_image_viewer parameter.

   This targets the exact link pattern used on archive item pages:
   ?la_image_viewer=...
   ========================================================= */

body.single a[href*="la_image_viewer"],
body.page a[href*="la_image_viewer"],
body[class*="limerick-photographic-archive"] a[href*="la_image_viewer"],
body.post-type-archive-tnc_col_item a[href*="la_image_viewer"],
body.tax-tnc_tax a[href*="la_image_viewer"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Remove the surrounding button/box when it contains only the View Image link. */

body.single p:has(> a[href*="la_image_viewer"]:only-child),
body.single div:has(> a[href*="la_image_viewer"]:only-child),
body.single li:has(> a[href*="la_image_viewer"]:only-child),
body.single span:has(> a[href*="la_image_viewer"]:only-child),
body.single .button:has(a[href*="la_image_viewer"]),
body.single .wp-block-button:has(a[href*="la_image_viewer"]),
body.single .wp-block-buttons:has(a[href*="la_image_viewer"]),
body.single .limerick-archive-view-image:has(a[href*="la_image_viewer"]),
body.single .limerick-archive-image-action:has(a[href*="la_image_viewer"]),
body.single .limerick-archive-actions:has(a[href*="la_image_viewer"]),
body.page p:has(> a[href*="la_image_viewer"]:only-child),
body.page div:has(> a[href*="la_image_viewer"]:only-child),
body.page li:has(> a[href*="la_image_viewer"]:only-child),
body.page span:has(> a[href*="la_image_viewer"]:only-child),
body.page .button:has(a[href*="la_image_viewer"]),
body.page .wp-block-button:has(a[href*="la_image_viewer"]),
body.page .wp-block-buttons:has(a[href*="la_image_viewer"]),
body.page .limerick-archive-view-image:has(a[href*="la_image_viewer"]),
body.page .limerick-archive-image-action:has(a[href*="la_image_viewer"]),
body.page .limerick-archive-actions:has(a[href*="la_image_viewer"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — SINGLE RECORD IMAGE GREEN FRAME
   =========================================================
   Adds the same small Limerick Archives green frame used on the
   archive grid to the main image on individual archive record pages.

   This is placed at the very end so it overrides the earlier single
   record rules that deliberately removed image borders.
   ========================================================= */

body.single:has([class*="metadata-type-core_"]) .entry-header .post-thumbnail img,
body.single:has([class*="metadata-type-core_"]) .entry-header .featured-image img,
body.single:has([class*="metadata-type-core_"]) .entry-header .full-width-image img,
body.single:has([class*="metadata-type-core_"]) article > .post-thumbnail img,
body.single:has([class*="metadata-type-core_"]) article > .featured-image img,
body.single:has([class*="metadata-type-core_"]) article > .full-width-image img,
body.single:has([class*="metadata-type-core_"]) img.wp-post-image {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;
    height: auto !important;

    margin: 0 auto 22px auto !important;
    padding: 4px !important;

    border: 2px solid #2F7D3B !important;
    outline: 0 !important;
    box-shadow: none !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-sizing: border-box !important;

    -webkit-filter: none !important;
    filter: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

body.single:has([class*="metadata-type-core_"]) .entry-header .post-thumbnail,
body.single:has([class*="metadata-type-core_"]) .entry-header .featured-image,
body.single:has([class*="metadata-type-core_"]) .entry-header .full-width-image,
body.single:has([class*="metadata-type-core_"]) article > .post-thumbnail,
body.single:has([class*="metadata-type-core_"]) article > .featured-image,
body.single:has([class*="metadata-type-core_"]) article > .full-width-image {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    text-align: center !important;
}

/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — SINGLE RECORD IMAGE FRAME
   =========================================================
   Strong final override for individual image archive post pages.
   Uses the hidden la_image_viewer link as a reliable page marker
   and frames the actual image served from /tainacan-items/.
   ========================================================= */

body:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"],
body:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"],
body[class*="single"] img[src*="/tainacan-items/"],
body[class*="single"] img[srcset*="/tainacan-items/"] {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;

    height: auto !important;
    max-height: none !important;

    margin: 0 auto 22px auto !important;
    padding: 5px !important;

    background-color: #ffffff !important;

    border: 2px solid #2F7D3B !important;
    outline: 0 !important;
    box-shadow: none !important;

    object-fit: contain !important;
    object-position: center center !important;

    -webkit-filter: none !important;
    filter: none !important;

    opacity: 1 !important;
    visibility: visible !important;
    mix-blend-mode: normal !important;
}

body:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"]),
body:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"]),
body[class*="single"] a:has(> img[src*="/tainacan-items/"]),
body[class*="single"] a:has(> img[srcset*="/tainacan-items/"]) {
    display: block !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    background: transparent !important;
    text-decoration: none !important;
    border: 0 !important;
    box-shadow: none !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — DEFINITIVE SINGLE IMAGE FRAME
   =========================================================
   Uses the remaining hidden la_image_viewer link as the page marker,
   but does NOT hide the Tainacan document/image container. This keeps
   the View Image button gone while allowing the main record image to
   receive the same green frame as the archive grid.
   ========================================================= */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .entry-content,
    .site-main,
    article,
    .tainacan-item-document,
    .tainacan-document,
    .tainacan-item-single,
    .tainacan-item-single-page,
    .tainacan-single-item
) img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .entry-content,
    .site-main,
    article,
    .tainacan-item-document,
    .tainacan-document,
    .tainacan-item-single,
    .tainacan-item-single-page,
    .tainacan-single-item
) img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;

    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin: 0 auto 24px auto !important;
    padding: 5px !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    border: 2px solid #2F7D3B !important;
    outline: 0 !important;
    box-shadow: none !important;

    object-fit: contain !important;
    object-position: center center !important;

    box-sizing: border-box !important;
    -webkit-filter: none !important;
    filter: none !important;
    mix-blend-mode: normal !important;
}

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-item-document,
    .tainacan-document,
    .tainacan-item-single,
    .tainacan-item-single-page,
    .tainacan-single-item,
    figure,
    picture,
    a:has(> img)
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-item-document,
    .tainacan-document,
    .tainacan-item-single,
    .tainacan-item-single-page,
    .tainacan-single-item,
    figure,
    picture,
    a:has(> img)
) {
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — REDUCE IMAGE TO TITLE GAP
   =========================================================
   Tightens the space between the framed archive image and the
   title heading on individual image archive record pages.

   Target gap: approximately 5px.
   ========================================================= */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) .entry-content img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) .entry-content img:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-top: 0 !important;
    margin-bottom: 5px !important;
}

html body.single:has(a[href*="la_image_viewer"]) .entry-title,
html body.single:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.single:has(a[href*="la_image_viewer"]) article .entry-title,
html body.single:has(a[href*="la_image_viewer"]) .page-title,
html body.single:has(a[href*="la_image_viewer"]) h1,
html body.page:has(a[href*="la_image_viewer"]) .entry-title,
html body.page:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.page:has(a[href*="la_image_viewer"]) article .entry-title,
html body.page:has(a[href*="la_image_viewer"]) .page-title,
html body.page:has(a[href*="la_image_viewer"]) h1 {
    margin-top: 5px !important;
    padding-top: 0 !important;
}

/* Also tighten common wrappers between the archive image and heading. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .entry-header,
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-document,
    figure,
    picture,
    a:has(> img)
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .entry-header,
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-document,
    figure,
    picture,
    a:has(> img)
) {
    margin-bottom: 5px !important;
    padding-bottom: 0 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — TIGHTEN IMAGE TO METADATA GAP
   =========================================================
   Reduces the large blank area beneath the main image on
   individual image archive record pages.

   This targets the space before the metadata field labelled
   “Title”, not the page title above the image.
   ========================================================= */

html body.single:has(a[href*="la_image_viewer"]) .entry-content,
html body.single:has(a[href*="la_image_viewer"]) article,
html body.single:has(a[href*="la_image_viewer"]) .site-main,
html body.page:has(a[href*="la_image_viewer"]) .entry-content,
html body.page:has(a[href*="la_image_viewer"]) article,
html body.page:has(a[href*="la_image_viewer"]) .site-main {
    padding-top: 0 !important;
}

/* Main archive image itself */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    display: block !important;
    margin-top: 0 !important;
    margin-bottom: 5px !important;
}

/* Containers around the main image must not reserve a tall empty space. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .metadata-section,
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    figure,
    picture,
    a:has(> img[src*="/tainacan-items/"])
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .metadata-section,
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    figure,
    picture,
    a:has(> img[src*="/tainacan-items/"])
) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;

    margin-top: 0 !important;
    margin-bottom: 5px !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    overflow: visible !important;
}

/* Tighten the metadata block that follows the image. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .entry-content > div,
    .entry-content > section
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .entry-content > div,
    .entry-content > section
) {
    margin-top: 5px !important;
    padding-top: 0 !important;
}

/* Tighten the first visible metadata label/value pair. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata
) > *:first-child,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata
) > *:first-child {
    margin-top: 5px !important;
    padding-top: 0 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — COLLAPSE REMOVED VIEW IMAGE GAP
   =========================================================
   The View Image link is already hidden. This collapses the
   empty parent wrapper that was still reserving vertical space
   between the framed image and the metadata Title field.
   ========================================================= */

/* Hide and fully collapse the View Image link itself. */

html body.single a[href*="la_image_viewer"],
html body.page a[href*="la_image_viewer"],
html body.single a[href*="la_image_viewer"]:link,
html body.page a[href*="la_image_viewer"]:link,
html body.single a[href*="la_image_viewer"]:visited,
html body.page a[href*="la_image_viewer"]:visited,
html body.single a[href*="la_image_viewer"]:hover,
html body.page a[href*="la_image_viewer"]:hover,
html body.single a[href*="la_image_viewer"]:focus,
html body.page a[href*="la_image_viewer"]:focus {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    pointer-events: none !important;
}

/* Collapse the immediate box/wrapper that held the removed View Image button. */

html body.single :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]),
html body.page :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
    clear: none !important;
}

/* Remove spacing from common Tainacan document/action containers
   only when they directly contain the removed View Image link. */

html body.single :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions,
    .metadata-value
):has(a[href*="la_image_viewer"]),
html body.page :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions,
    .metadata-value
):has(a[href*="la_image_viewer"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    overflow: hidden !important;
}

/* Pull the metadata block up after the collapsed View Image area. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata
) {
    margin-top: 5px !important;
    padding-top: 0 !important;
}

/* Keep the framed main image close to what follows it. */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-bottom: 5px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — DIVIDER LINE BELOW IMAGE
   =========================================================
   Adds a small theme-green divider line in the space below the
   framed main image and above the metadata Title field on
   individual image archive record pages.
   ========================================================= */

/* Create one neat line after the main archive image/link area. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"]),
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"]),
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"]),
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"]) {
    display: block !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    text-align: center !important;
}

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 6px auto 5px auto !important;
    padding: 0 !important;

    border-top: 1px solid #2F7D3B !important;

    background: transparent !important;
}

/* Fallback: if the image is not inside a normal image link,
   add the line to the immediate image wrapper instead. */

html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 6px auto 5px auto !important;
    padding: 0 !important;

    border-top: 1px solid #2F7D3B !important;

    background: transparent !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — STRONG DIVIDER LINES ABOVE AND BELOW IMAGE
   =========================================================
   Makes the existing divider below the main archive image
   slightly stronger and adds a matching divider above the image.
   ========================================================= */

/* Main image link/wrapper: create space for upper and lower dividers. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"]),
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"]),
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"]),
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"]) {
    display: block !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    text-align: center !important;
}

/* New matching divider above the image. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 0 auto 6px auto !important;
    padding: 0 !important;

    border-top: 2px solid #2F7D3B !important;

    background: transparent !important;
}

/* Stronger divider below the image. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 6px auto 5px auto !important;
    padding: 0 !important;

    border-top: 2px solid #2F7D3B !important;

    background: transparent !important;
}

/* Fallback for image wrappers that are not ordinary links. */

html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 0 auto 6px auto !important;
    padding: 0 !important;

    border-top: 2px solid #2F7D3B !important;

    background: transparent !important;
}

html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    height: 0 !important;

    margin: 6px auto 5px auto !important;
    padding: 0 !important;

    border-top: 2px solid #2F7D3B !important;

    background: transparent !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — COMPACT SINGLE RECORD PAGE
   =========================================================
   Reduces vertical spacing across all main elements on individual
   image archive record pages:
   - page title
   - top divider line
   - framed image
   - lower divider line
   - Title / Description / Archive Reference metadata
   - lower information area

   The site header/menu are not affected.
   ========================================================= */

/* Compact the main page column only. */

html body.single:has(a[href*="la_image_viewer"]) .site-main,
html body.single:has(a[href*="la_image_viewer"]) article,
html body.single:has(a[href*="la_image_viewer"]) .entry-header,
html body.single:has(a[href*="la_image_viewer"]) .entry-content,
html body.page:has(a[href*="la_image_viewer"]) .site-main,
html body.page:has(a[href*="la_image_viewer"]) article,
html body.page:has(a[href*="la_image_viewer"]) .entry-header,
html body.page:has(a[href*="la_image_viewer"]) .entry-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Compact the record page title above the image. */

html body.single:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.single:has(a[href*="la_image_viewer"]) .entry-title,
html body.single:has(a[href*="la_image_viewer"]) .page-title,
html body.page:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.page:has(a[href*="la_image_viewer"]) .entry-title,
html body.page:has(a[href*="la_image_viewer"]) .page-title {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.15 !important;
}

/* Compact image wrappers and prevent the old View Image area returning space. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Keep the main framed image close to the lines above and below. */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Strong, compact divider above the image. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 auto 5px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Strong, compact divider below the image. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 5px auto 5px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Fully collapse the removed View Image link and its wrappers. */

html body.single a[href*="la_image_viewer"],
html body.page a[href*="la_image_viewer"],
html body.single :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]),
html body.page :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]),
html body.single :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions
):has(a[href*="la_image_viewer"]),
html body.page :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions
):has(a[href*="la_image_viewer"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Compact all metadata groups and rows. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound
) {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
    padding-top: 0 !important;
    padding-bottom: 6px !important;
}

/* Compact labels, values and normal text inside the metadata area. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value,
    dt,
    dd,
    h2,
    h3,
    h4,
    h5,
    strong,
    p
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value,
    dt,
    dd,
    h2,
    h3,
    h4,
    h5,
    strong,
    p
) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.35 !important;
}

/* Compact green separator lines used in the metadata area. */

html body.single:has(a[href*="la_image_viewer"]) hr,
html body.page:has(a[href*="la_image_viewer"]) hr,
html body.single:has(a[href*="la_image_viewer"]) .metadata hr,
html body.page:has(a[href*="la_image_viewer"]) .metadata hr {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}

/* Compact archive reference and lower information panel. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
) {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

/* Compact any generic direct children in the record content column. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content > *,
html body.page:has(a[href*="la_image_viewer"]) .entry-content > * {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — ULTRA COMPACT SINGLE RECORD PAGE
   =========================================================
   Reduces the spacing on individual image archive pages to
   roughly 25% of the previous compact version.

   Keeps:
   - green image frame
   - divider line above image
   - divider line below image
   - hidden View Image box
   - no-crop image display
   ========================================================= */

/* Remove excess vertical spacing from the main record column. */

html body.single:has(a[href*="la_image_viewer"]) .site-main,
html body.single:has(a[href*="la_image_viewer"]) article,
html body.single:has(a[href*="la_image_viewer"]) .entry-header,
html body.single:has(a[href*="la_image_viewer"]) .entry-content,
html body.page:has(a[href*="la_image_viewer"]) .site-main,
html body.page:has(a[href*="la_image_viewer"]) article,
html body.page:has(a[href*="la_image_viewer"]) .entry-header,
html body.page:has(a[href*="la_image_viewer"]) .entry-content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Page title above image: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.single:has(a[href*="la_image_viewer"]) .entry-title,
html body.single:has(a[href*="la_image_viewer"]) .page-title,
html body.page:has(a[href*="la_image_viewer"]) h1.entry-title,
html body.page:has(a[href*="la_image_viewer"]) .entry-title,
html body.page:has(a[href*="la_image_viewer"]) .page-title {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.12 !important;
}

/* Image wrappers: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Main archive image: no extra margin. */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Divider above image: stronger line, minimal spacing. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 auto 2px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Divider below image: stronger line, minimal spacing. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 2px auto 2px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Keep the removed View Image box fully collapsed. */

html body.single a[href*="la_image_viewer"],
html body.page a[href*="la_image_viewer"],
html body.single :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]),
html body.page :is(p, div, section, figure, aside, li, span):has(> a[href*="la_image_viewer"]),
html body.single :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions
):has(a[href*="la_image_viewer"]),
html body.page :is(
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    .wp-block-button,
    .wp-block-buttons,
    .button,
    .buttons,
    .actions,
    .item-actions
):has(a[href*="la_image_viewer"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Metadata groups and rows: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata,
    .metadata-container,
    .single-item-collection--metadata,
    .single-item-collection-metadata,
    .item-metadata,
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound
) {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
    padding-bottom: 2px !important;
}

/* Labels, values, paragraphs and headings: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value,
    dt,
    dd,
    h2,
    h3,
    h4,
    h5,
    strong,
    p
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value,
    dt,
    dd,
    h2,
    h3,
    h4,
    h5,
    strong,
    p
) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.22 !important;
}

/* Green metadata separator lines: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) hr,
html body.page:has(a[href*="la_image_viewer"]) hr,
html body.single:has(a[href*="la_image_viewer"]) .metadata hr,
html body.page:has(a[href*="la_image_viewer"]) .metadata hr {
    margin-top: 1px !important;
    margin-bottom: 1px !important;
}

/* Archive reference and lower information panel: quarter-spacing. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
) {
    margin-top: 1px !important;
    margin-bottom: 1px !important;
    padding-top: 1px !important;
    padding-bottom: 1px !important;
}

/* Direct children in the content column: very tight. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content > *,
html body.page:has(a[href*="la_image_viewer"]) .entry-content > * {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — EXTRA TIGHT SINGLE RECORD PAGE
   =========================================================
   Stronger final override for individual image archive pages.

   Purpose:
   - Remove remaining wide gaps between page elements.
   - Keep the green frame around the image.
   - Keep green divider lines above and below the image.
   - Keep the removed View Image area fully collapsed.
   ========================================================= */

/* Force the single archive record content column into a tight vertical rhythm. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .site-main,
    article,
    .entry-header,
    .entry-content,
    .post,
    .hentry,
    .tainacan-single-post,
    .tainacan-item-single,
    .tainacan-item,
    .tainacan-content,
    .tainacan-single-item,
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata-container,
    .metadata,
    .item-metadata
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .site-main,
    article,
    .entry-header,
    .entry-content,
    .post,
    .hentry,
    .tainacan-single-post,
    .tainacan-item-single,
    .tainacan-item,
    .tainacan-content,
    .tainacan-single-item,
    .tainacan-metadata-section,
    .tainacan-metadata-sections,
    .tainacan-single-item-metadata,
    .tainacan-item-metadata,
    .metadata-list,
    .metadata-container,
    .metadata,
    .item-metadata
) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove remaining spacing from direct children inside the archive record area. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content > *,
html body.single:has(a[href*="la_image_viewer"]) article > *,
html body.single:has(a[href*="la_image_viewer"]) .site-main > *,
html body.page:has(a[href*="la_image_viewer"]) .entry-content > *,
html body.page:has(a[href*="la_image_viewer"]) article > *,
html body.page:has(a[href*="la_image_viewer"]) .site-main > * {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Page title: very tight above image. */

html body.single:has(a[href*="la_image_viewer"]) :is(h1.entry-title, .entry-title, .page-title),
html body.page:has(a[href*="la_image_viewer"]) :is(h1.entry-title, .entry-title, .page-title) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.05 !important;
}

/* Image wrappers: no vertical gap. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .post-thumbnail,
    .featured-image,
    .full-width-image,
    .tainacan-item-document,
    .tainacan-item-documents,
    .tainacan-document,
    .tainacan-document-item,
    .tainacan-single-item-document,
    .tainacan-single-item-collection-document,
    .single-item-collection--document,
    .single-item-collection-document,
    .item-document,
    .item-documents,
    .document-section,
    .document-wrapper,
    .document-content,
    figure,
    picture,
    a:has(> img)
) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Keep image itself tight but framed. */

html body.single:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.single:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[src*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley),
html body.page:has(a[href*="la_image_viewer"]) img[srcset*="/tainacan-items/"]:not(.custom-logo):not(.avatar):not(.emoji):not(.wp-smiley) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 4px !important;
    border: 2px solid #2F7D3B !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
}

/* Divider above image: no wasted space. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 0 auto 1px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Divider below image: no wasted space. */

html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    height: 0 !important;
    margin: 1px auto 1px auto !important;
    padding: 0 !important;
    border-top: 2px solid #2F7D3B !important;
    background: transparent !important;
}

/* Metadata rows and labels: extremely tight. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound,
    .tainacan-metadata,
    .tainacan-metadata-item,
    .tainacan-metadata-section > *,
    .tainacan-item-metadata > *,
    .metadata-list > *,
    .metadata-container > *,
    .metadata > *,
    .item-metadata > *
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-item,
    .metadata-row,
    .metadata-field,
    .metadata-type-core_title,
    .metadata-type-text,
    .metadata-type-textarea,
    .metadata-type-compound,
    .tainacan-metadata,
    .tainacan-metadata-item,
    .tainacan-metadata-section > *,
    .tainacan-item-metadata > *,
    .metadata-list > *,
    .metadata-container > *,
    .metadata > *,
    .item-metadata > *
) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 1px !important;
}

/* Text inside metadata: minimal spacing. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    h2,
    h3,
    h4,
    h5,
    p,
    dt,
    dd,
    strong,
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    h2,
    h3,
    h4,
    h5,
    p,
    dt,
    dd,
    strong,
    .metadata-label,
    .tainacan-metadata-label,
    .metadata-value,
    .tainacan-metadata-value,
    .label,
    .value
) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.12 !important;
}

/* Metadata separator rules: almost no vertical space. */

html body.single:has(a[href*="la_image_viewer"]) :is(hr, .metadata hr, .tainacan-metadata hr),
html body.page:has(a[href*="la_image_viewer"]) :is(hr, .metadata hr, .tainacan-metadata hr) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Lower archive-reference/info areas: compact. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .archive-reference,
    .limerick-archive-reference,
    .metadata-type-archive_reference,
    .metadata-type-archive-reference,
    .collapse,
    .accordion,
    .accordion-item,
    .accordion-header,
    .accordion-body,
    details,
    summary
) {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 1px !important;
    padding-bottom: 1px !important;
}

/* Last resort: remove leftover vertical rhythm from descendants inside content. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content * {
    max-height: none;
}

html body.single:has(a[href*="la_image_viewer"]) .entry-content :not(img):not(a):not(svg):not(path),
html body.page:has(a[href*="la_image_viewer"]) .entry-content :not(img):not(a):not(svg):not(path) {
    margin-block-start: 0 !important;
    margin-block-end: 1px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — PRECISE TAINACAN COMPACT OVERRIDE
   =========================================================
   This targets the exact Tainacan HTML structure on single
   image archive record pages.

   Exact structure handled:
   - #tainacan-default-document-section
   - .tainacan-media-component
   - .swiper-slide-content
   - section[id^="metadata-section-"]
   - .metadata-section__metadata-list
   - metadata-type-* field blocks

   Result:
   - Document / Metadata / Attachments section headings removed
   - hidden View Image area collapsed
   - metadata sections made compact
   - duplicate section spacing removed
   ========================================================= */

/* Main Tainacan content wrapper */

html body.single .entry-content,
html body.page .entry-content {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Hide broad Tainacan section headings that create unnecessary vertical space. */

html body.single #tainacan-default-document-section > h2,
html body.page #tainacan-default-document-section > h2,
html body.single section[id^="metadata-section-"] > h2,
html body.page section[id^="metadata-section-"] > h2,
html body.single #tainacan-default-attachments-section,
html body.page #tainacan-default-attachments-section,
html body.single .post-item-metadata.entry-meta,
html body.page .post-item-metadata.entry-meta {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

/* Compact the document/image section exactly. */

html body.single #tainacan-default-document-section,
html body.page #tainacan-default-document-section,
html body.single .tainacan-media-component,
html body.page .tainacan-media-component,
html body.single .tainacan-media-component__swiper-main,
html body.page .tainacan-media-component__swiper-main,
html body.single .tainacan-media-items,
html body.page .tainacan-media-items,
html body.single .tainacan-media-item,
html body.page .tainacan-media-item,
html body.single .swiper-slide-content,
html body.page .swiper-slide-content {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
}

/* Fully remove the old View Image link and its hidden full-content duplicate. */

html body.single a[href*="la_image_viewer"],
html body.page a[href*="la_image_viewer"],
html body.single .media-full-content,
html body.page .media-full-content,
html body.single .tainacan-item-file-download,
html body.page .tainacan-item-file-download,
html body.single .swiper-slide-metadata,
html body.page .swiper-slide-metadata {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* Collapse the exact wrapper that held View Image. */

html body.single .swiper-slide-content:has(a[href*="la_image_viewer"]),
html body.page .swiper-slide-content:has(a[href*="la_image_viewer"]) {
    margin-bottom: 2px !important;
    padding-bottom: 0 !important;
}

/* Compact every metadata section. */

html body.single section[id^="metadata-section-"],
html body.page section[id^="metadata-section-"],
html body.single section[class*="metadata-section-slug-"],
html body.page section[class*="metadata-section-slug-"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;

    margin-top: 0 !important;
    margin-bottom: 3px !important;

    padding-top: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 3px !important;
    padding-left: 0 !important;

    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.45) !important;
    border-left: 0 !important;
}

/* Compact the metadata list wrappers. */

html body.single .metadata-section__metadata-list,
html body.page .metadata-section__metadata-list {
    margin: 0 !important;
    padding: 0 !important;
}

/* Compact each actual metadata field block. */

html body.single .metadata-section__metadata-list > div,
html body.page .metadata-section__metadata-list > div,
html body.single div[class^="metadata-type-"],
html body.page div[class^="metadata-type-"],
html body.single div[class*=" metadata-type-"],
html body.page div[class*=" metadata-type-"] {
    margin-top: 0 !important;
    margin-bottom: 2px !important;
    padding-top: 0 !important;
    padding-bottom: 1px !important;
}

/* Metadata labels: Title, Description, Archive Reference, Display Date, etc. */

html body.single .metadata-section__metadata-list h3,
html body.page .metadata-section__metadata-list h3,
html body.single div[class^="metadata-type-"] > h3,
html body.page div[class^="metadata-type-"] > h3,
html body.single div[class*=" metadata-type-"] > h3,
html body.page div[class*=" metadata-type-"] > h3 {
    margin-top: 0 !important;
    margin-bottom: 1px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    color: #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 10.5pt !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;

    text-align: center !important;
}

/* Metadata values. */

html body.single .metadata-section__metadata-list p,
html body.page .metadata-section__metadata-list p,
html body.single div[class^="metadata-type-"] > p,
html body.page div[class^="metadata-type-"] > p,
html body.single div[class*=" metadata-type-"] > p,
html body.page div[class*=" metadata-type-"] > p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    color: #111111 !important;

    font-size: 10pt !important;
    line-height: 1.18 !important;

    text-align: center !important;
}

/* Let the long Description remain readable while still compact. */

html body.single .metadata-type-core_description > p,
html body.page .metadata-type-core_description > p {
    line-height: 1.22 !important;
    text-align: justify !important;
    text-justify: inter-word !important;
}

/* Compact taxonomy pills / linked values. */

html body.single .metadata-section__metadata-list p a,
html body.page .metadata-section__metadata-list p a {
    display: inline-block !important;

    margin-top: 1px !important;
    margin-bottom: 0 !important;

    padding: 2px 8px !important;

    line-height: 1.1 !important;
}

/* Compact post navigation below the record. */

html body.single .post-navigation,
html body.page .post-navigation,
html body.single .nav-links,
html body.page .nav-links {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

html body.single .nav-links a,
html body.page .nav-links a {
    min-height: 0 !important;
    margin: 0 !important;
    padding: 4px 8px !important;
    line-height: 1.1 !important;
}

/* Compact the lower Information accordion/button area. */

html body.single details,
html body.page details,
html body.single summary,
html body.page summary,
html body.single .accordion,
html body.page .accordion,
html body.single .accordion-item,
html body.page .accordion-item,
html body.single .accordion-header,
html body.page .accordion-header,
html body.single .accordion-body,
html body.page .accordion-body,
html body.single .collapse,
html body.page .collapse {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — TWO-COLUMN METADATA BLOCK
   =========================================================
   Displays the ten lower archive metadata fields in two columns:
   - Archive Reference
   - Display Date
   - Sort Year
   - Date Certainty
   - Subject
   - People Shown
   - Photographer
   - Source Collection
   - Rights / Credit
   - Image Status

   The main image, page title, Title and Description remain full-width.
   ========================================================= */

/* Turn the single archive record content into a controlled grid. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content,
html body.page:has(a[href*="la_image_viewer"]) .entry-content {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 22px !important;
    row-gap: 4px !important;
    align-items: start !important;
}

/* Keep the image/document section full-width. */

html body.single:has(a[href*="la_image_viewer"]) #tainacan-default-document-section,
html body.page:has(a[href*="la_image_viewer"]) #tainacan-default-document-section,
html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-default_section,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-default_section,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-default_section,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-default_section,
html body.single:has(a[href*="la_image_viewer"]) #tainacan-default-attachments-section,
html body.page:has(a[href*="la_image_viewer"]) #tainacan-default-attachments-section,
html body.single:has(a[href*="la_image_viewer"]) .post-item-metadata.entry-meta,
html body.page:has(a[href*="la_image_viewer"]) .post-item-metadata.entry-meta,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    grid-column: 1 / -1 !important;
}

/* The ten lower metadata fields become the two-column block. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) {
    grid-column: auto !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 3px 0 4px 0 !important;

    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(47, 125, 59, 0.45) !important;
    border-left: 0 !important;

    text-align: center !important;
}

/* Keep labels and values compact inside the two-column fields. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) .metadata-section__metadata-list,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) .metadata-section__metadata-list {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove repeated internal field-block spacing inside each two-column item. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) .metadata-section__metadata-list > div,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) .metadata-section__metadata-list > div {
    margin: 0 !important;
    padding: 0 !important;
}

/* Two-column metadata labels. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) h3,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) h3 {
    margin: 0 0 1px 0 !important;
    padding: 0 !important;

    color: #2F7D3B !important;

    font-family: Garamond, "EB Garamond", Georgia, serif !important;
    font-size: 10.5pt !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;

    text-align: center !important;
}

/* Two-column metadata values. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) p,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) p {
    margin: 0 !important;
    padding: 0 !important;

    color: #111111 !important;

    font-size: 9.5pt !important;
    line-height: 1.12 !important;

    text-align: center !important;
}

/* Keep taxonomy pill links compact inside the two-column block. */

html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy p a,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy p a {
    display: inline-block !important;
    margin: 0 !important;
    padding: 2px 8px !important;
    line-height: 1.05 !important;
}

/* Source Collection can be long, so allow clean wrapping. */

html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-source-collection p,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-source-collection p {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

/* Phone view: return to one column for readability. */

@media screen and (max-width: 650px) {
    html body.single:has(a[href*="la_image_viewer"]) .entry-content,
    html body.page:has(a[href*="la_image_viewer"]) .entry-content {
        grid-template-columns: 1fr !important;
        column-gap: 0 !important;
    }

    html body.single:has(a[href*="la_image_viewer"]) :is(
        .metadata-section-slug-archive-reference,
        .metadata-section-slug-display-date,
        .metadata-section-slug-sort-year,
        .metadata-section-slug-date-certainty,
        .metadata-section-slug-location-taxonomy,
        .metadata-section-slug-people-shown,
        .metadata-section-slug-photographer,
        .metadata-section-slug-source-collection,
        .metadata-section-slug-rights-credit,
        .metadata-section-slug-image-status
    ),
    html body.page:has(a[href*="la_image_viewer"]) :is(
        .metadata-section-slug-archive-reference,
        .metadata-section-slug-display-date,
        .metadata-section-slug-sort-year,
        .metadata-section-slug-date-certainty,
        .metadata-section-slug-location-taxonomy,
        .metadata-section-slug-people-shown,
        .metadata-section-slug-photographer,
        .metadata-section-slug-source-collection,
        .metadata-section-slug-rights-credit,
        .metadata-section-slug-image-status
    ) {
        grid-column: 1 / -1 !important;
    }
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — CLEAN TWO-COLUMN METADATA
   =========================================================
   Final clean-up for the lower two-column metadata block on
   individual image archive record pages.

   Changes:
   - Removes all horizontal divider lines around the ten lower fields.
   - Removes the green pill/button effect from Subject.
   - Keeps the two-column layout aligned.
   - Leaves the main image frame and image divider lines unchanged.
   ========================================================= */

/* Remove all dividing lines/borders around the lower two-column metadata fields. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) {
    border: 0 !important;
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;

    outline: 0 !important;
    box-shadow: none !important;

    margin-top: 0 !important;
    margin-bottom: 2px !important;

    padding-top: 1px !important;
    padding-bottom: 1px !important;

    background: transparent !important;
    background-color: transparent !important;
}

/* Remove any inner borders/lines inside those fields. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) *,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) * {
    border-top: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;

    outline: 0 !important;
    box-shadow: none !important;
}

/* Hide any rule elements that may still appear inside the two-column block. */

html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) hr,
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) hr {
    display: none !important;
}

/* Make Subject taxonomy value true plain text, not a pill, link or button. */

html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy a,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy a,
html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a[data-linkto="term"],
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a[data-linkto="term"],
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy a[data-linkto="term"],
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy a[data-linkto="term"],
html body.single:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"],
html body.page:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"] {
    all: unset !important;

    display: inline !important;

    color: #111111 !important;

    font-family: inherit !important;
    font-size: 9.5pt !important;
    font-weight: 400 !important;
    line-height: 1.12 !important;

    text-align: center !important;
    text-decoration: none !important;

    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;

    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    margin: 0 !important;
    padding: 0 !important;

    cursor: default !important;
    pointer-events: none !important;
}

/* Remove pseudo-elements that can create pill/button decoration. */

html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a::before,
html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a::after,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a::before,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy a::after,
html body.single:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"]::before,
html body.single:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"]::after,
html body.page:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"]::before,
html body.page:has(a[href*="la_image_viewer"]) a[data-linkto="term"][href*="/subjects/"]::after {
    content: none !important;
    display: none !important;
}

/* Keep Subject row text aligned with the rest of the grid. */

html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy p,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-location-taxonomy p,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy p,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-location-taxonomy p {
    margin: 0 !important;
    padding: 0 !important;

    color: #111111 !important;

    font-size: 9.5pt !important;
    line-height: 1.12 !important;

    text-align: center !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Keep the two-column rows clean and visually even after removing lines. */

html body.single:has(a[href*="la_image_viewer"]) .entry-content,
html body.page:has(a[href*="la_image_viewer"]) .entry-content {
    row-gap: 2px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — PREVIOUS / NEXT BUTTON SPACING
   =========================================================
   Adds clear breathing space between the green divider line and
   the Previous / Next navigation buttons on individual image
   archive record pages.
   ========================================================= */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    clear: both !important;

    width: 100% !important;
    max-width: 100% !important;

    margin-top: 10px !important;
    margin-bottom: 8px !important;

    padding-top: 10px !important;
    padding-bottom: 0 !important;

    border-top: 1px solid #2F7D3B !important;
}

/* Keep the buttons below the line, not touching it. */

html body.single:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-links,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-links {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;

    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;

    border: 0 !important;
}

/* Previous / Next buttons remain neat and aligned. */

html body.single:has(#tainacan-default-document-section) .post-navigation .nav-previous,
html body.single:has(#tainacan-default-document-section) .post-navigation .nav-next,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-previous,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-next,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-previous,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-next,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-previous,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-next {
    margin: 0 !important;
    padding: 0 !important;
}

html body.single:has(#tainacan-default-document-section) .post-navigation a,
html body.page:has(#tainacan-default-document-section) .post-navigation a,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation a,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 95px !important;
    min-height: 28px !important;

    margin: 0 !important;
    padding: 6px 14px !important;

    line-height: 1.1 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — REMOVE LINES AROUND METADATA GRID
   =========================================================
   Removes the green horizontal lines immediately above and below
   the two-column metadata elements grid on individual archive
   image pages.

   Keeps:
   - green image frame
   - green divider line above main image
   - green divider line below main image
   - two-column metadata layout
   - plain-text Subject
   ========================================================= */

/* Remove the line between Description and the two-column metadata grid. */

html body.single:has(#tainacan-default-document-section) .metadata-section-slug-default_section,
html body.page:has(#tainacan-default-document-section) .metadata-section-slug-default_section,
html body.single:has(#tainacan-default-document-section) #metadata-section-default_section,
html body.page:has(#tainacan-default-document-section) #metadata-section-default_section,
html body.single:has(a[href*="la_image_viewer"]) .metadata-section-slug-default_section,
html body.page:has(a[href*="la_image_viewer"]) .metadata-section-slug-default_section,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-default_section,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-default_section {
    border-bottom: 0 !important;
    box-shadow: none !important;
}

/* Remove any top/bottom borders from the two-column metadata fields themselves. */

html body.single:has(#tainacan-default-document-section) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
),
html body.page:has(#tainacan-default-document-section) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
),
html body.single:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .metadata-section-slug-archive-reference,
    .metadata-section-slug-display-date,
    .metadata-section-slug-sort-year,
    .metadata-section-slug-date-certainty,
    .metadata-section-slug-location-taxonomy,
    .metadata-section-slug-people-shown,
    .metadata-section-slug-photographer,
    .metadata-section-slug-source-collection,
    .metadata-section-slug-rights-credit,
    .metadata-section-slug-image-status
) {
    border-top: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

/* Remove the line below the two-column metadata grid and above Previous / Next. */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    border-top: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;

    margin-top: 8px !important;
    padding-top: 0 !important;
}

/* Remove stray HR lines inside or around the metadata grid. */

html body.single:has(#tainacan-default-document-section) .entry-content hr,
html body.page:has(#tainacan-default-document-section) .entry-content hr,
html body.single:has(a[href*="la_image_viewer"]) .entry-content hr,
html body.page:has(a[href*="la_image_viewer"]) .entry-content hr {
    display: none !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — LARGER TITLE / DESCRIPTION LABELS
   =========================================================
   Makes only the metadata labels “Title” and “Description”
   slightly larger and bolder on individual image archive pages.
   ========================================================= */

html body.single:has(#tainacan-default-document-section) .metadata-type-core_title > h3,
html body.single:has(#tainacan-default-document-section) .metadata-type-core_description > h3,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_title > h3,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_description > h3,
html body.single:has(a[href*="la_image_viewer"]) .metadata-type-core_title > h3,
html body.single:has(a[href*="la_image_viewer"]) .metadata-type-core_description > h3,
html body.page:has(a[href*="la_image_viewer"]) .metadata-type-core_title > h3,
html body.page:has(a[href*="la_image_viewer"]) .metadata-type-core_description > h3 {
    font-size: 12.5pt !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;

    margin-top: 2px !important;
    margin-bottom: 2px !important;

    color: #2F7D3B !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — SPACER BETWEEN IMAGE FRAME AND DIVIDER LINES
   =========================================================
   Adds a narrow white breathing space between the framed image
   and the green divider lines above and below it.

   This keeps the line distinct from the image frame.
   ========================================================= */

/* Line above image: add space below the line before the image frame. */

html body.single:has(#tainacan-default-document-section) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(#tainacan-default-document-section) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(#tainacan-default-document-section) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(#tainacan-default-document-section) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::before {
    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 7px !important;
    margin-left: auto !important;

    border-top: 2px solid #2F7D3B !important;
}

/* Line below image: add space above the line after the image frame. */

html body.single:has(#tainacan-default-document-section) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(#tainacan-default-document-section) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(#tainacan-default-document-section) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(#tainacan-default-document-section) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) a:has(> img[srcset*="/tainacan-items/"])::after {
    margin-top: 7px !important;
    margin-right: auto !important;
    margin-bottom: 5px !important;
    margin-left: auto !important;

    border-top: 2px solid #2F7D3B !important;
}

/* Fallback for images wrapped by figure/div/section/p instead of direct image links. */

html body.single:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::before,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::before {
    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 7px !important;
    margin-left: auto !important;

    border-top: 2px solid #2F7D3B !important;
}

html body.single:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(#tainacan-default-document-section) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.single:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[src*="/tainacan-items/"])::after,
html body.page:has(a[href*="la_image_viewer"]) :is(figure, picture, div, section, p):has(> img[srcset*="/tainacan-items/"])::after {
    margin-top: 7px !important;
    margin-right: auto !important;
    margin-bottom: 5px !important;
    margin-left: auto !important;

    border-top: 2px solid #2F7D3B !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — FORCE BOLD TITLE / DESCRIPTION LABELS
   =========================================================
   Final override to make the metadata labels “Title” and
   “Description” visibly bold on individual image archive pages.
   ========================================================= */

html body.single:has(#tainacan-default-document-section) #metadata-section-default_section .metadata-type-core_title > h3,
html body.single:has(#tainacan-default-document-section) #metadata-section-default_section .metadata-type-core_description > h3,
html body.page:has(#tainacan-default-document-section) #metadata-section-default_section .metadata-type-core_title > h3,
html body.page:has(#tainacan-default-document-section) #metadata-section-default_section .metadata-type-core_description > h3,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-default_section .metadata-type-core_title > h3,
html body.single:has(a[href*="la_image_viewer"]) #metadata-section-default_section .metadata-type-core_description > h3,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-default_section .metadata-type-core_title > h3,
html body.page:has(a[href*="la_image_viewer"]) #metadata-section-default_section .metadata-type-core_description > h3,
html body.single:has(#tainacan-default-document-section) .metadata-type-core_title > h3,
html body.single:has(#tainacan-default-document-section) .metadata-type-core_description > h3,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_title > h3,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_description > h3 {
    color: #2F7D3B !important;

    font-family: Georgia, Garamond, "EB Garamond", serif !important;
    font-size: 13pt !important;
    font-weight: 900 !important;
    font-style: normal !important;
    font-synthesis-weight: auto !important;
    line-height: 1.1 !important;

    margin-top: 3px !important;
    margin-bottom: 3px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;

    text-align: center !important;
    letter-spacing: 0.15px !important;
}

/* Make sure links or inherited text rules cannot thin these labels. */

html body.single:has(#tainacan-default-document-section) .metadata-type-core_title > h3 *,
html body.single:has(#tainacan-default-document-section) .metadata-type-core_description > h3 *,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_title > h3 *,
html body.page:has(#tainacan-default-document-section) .metadata-type-core_description > h3 * {
    font-weight: 900 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — LOWER PREVIOUS / NEXT BUTTONS
   =========================================================
   Final tweak: drops the Previous and Next buttons slightly lower
   on individual image archive pages.
   ========================================================= */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    margin-top: 18px !important;
    padding-top: 6px !important;
}

html body.single:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-links,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-links {
    margin-top: 4px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — TIGHTEN GAP TO LOWER MENU
   =========================================================
   Reduces the vertical space between the archive record
   Previous / Next buttons and the lower menu area containing
   Decades / Previous / Next / Latest / Search.

   This applies only on individual image archive record pages.
   ========================================================= */

/* Keep the Previous / Next post navigation neat but not too far
   from the lower menu that follows it. */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    margin-top: 14px !important;
    margin-bottom: 4px !important;

    padding-top: 4px !important;
    padding-bottom: 0 !important;
}

/* Remove excess spacing from the first menu/navigation area that
   appears immediately after the Previous / Next buttons. */

html body.single:has(#tainacan-default-document-section) .post-navigation + nav,
html body.single:has(#tainacan-default-document-section) .post-navigation + .main-navigation,
html body.single:has(#tainacan-default-document-section) .post-navigation + .navigation,
html body.single:has(#tainacan-default-document-section) .post-navigation + .menu,
html body.single:has(#tainacan-default-document-section) .post-navigation + .widget_nav_menu,
html body.single:has(#tainacan-default-document-section) .post-navigation + .wp-block-navigation,
html body.single:has(#tainacan-default-document-section) .post-navigation + .wp-block-search,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + nav,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .main-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .menu,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .widget_nav_menu,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .wp-block-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + .wp-block-search {
    margin-top: 4px !important;
    padding-top: 0 !important;
}

/* Wider fallback: if the lower Decades / Previous / Next / Latest /
   Search menu is not the immediate next sibling, reduce spacing on
   nearby navigation/search blocks inside the same content area. */

html body.single:has(#tainacan-default-document-section) .entry-content :is(
    .post-navigation ~ nav,
    .post-navigation ~ .main-navigation,
    .post-navigation ~ .navigation,
    .post-navigation ~ .menu,
    .post-navigation ~ .widget_nav_menu,
    .post-navigation ~ .wp-block-navigation,
    .post-navigation ~ .wp-block-search,
    .post-navigation ~ form[role="search"],
    .post-navigation ~ .search-form
),
html body.page:has(#tainacan-default-document-section) .entry-content :is(
    .post-navigation ~ nav,
    .post-navigation ~ .main-navigation,
    .post-navigation ~ .navigation,
    .post-navigation ~ .menu,
    .post-navigation ~ .widget_nav_menu,
    .post-navigation ~ .wp-block-navigation,
    .post-navigation ~ .wp-block-search,
    .post-navigation ~ form[role="search"],
    .post-navigation ~ .search-form
),
html body.single:has(a[href*="la_image_viewer"]) .entry-content :is(
    .post-navigation ~ nav,
    .post-navigation ~ .main-navigation,
    .post-navigation ~ .navigation,
    .post-navigation ~ .menu,
    .post-navigation ~ .widget_nav_menu,
    .post-navigation ~ .wp-block-navigation,
    .post-navigation ~ .wp-block-search,
    .post-navigation ~ form[role="search"],
    .post-navigation ~ .search-form
),
html body.page:has(a[href*="la_image_viewer"]) .entry-content :is(
    .post-navigation ~ nav,
    .post-navigation ~ .main-navigation,
    .post-navigation ~ .navigation,
    .post-navigation ~ .menu,
    .post-navigation ~ .widget_nav_menu,
    .post-navigation ~ .wp-block-navigation,
    .post-navigation ~ .wp-block-search,
    .post-navigation ~ form[role="search"],
    .post-navigation ~ .search-form
) {
    margin-top: 4px !important;
    padding-top: 0 !important;
}

/* Compact list items/links inside that lower menu only. */

html body.single:has(#tainacan-default-document-section) .post-navigation ~ :is(nav, .main-navigation, .navigation, .menu, .widget_nav_menu, .wp-block-navigation) :is(ul, li, a),
html body.page:has(#tainacan-default-document-section) .post-navigation ~ :is(nav, .main-navigation, .navigation, .menu, .widget_nav_menu, .wp-block-navigation) :is(ul, li, a),
html body.single:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(nav, .main-navigation, .navigation, .menu, .widget_nav_menu, .wp-block-navigation) :is(ul, li, a),
html body.page:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(nav, .main-navigation, .navigation, .menu, .widget_nav_menu, .wp-block-navigation) :is(ul, li, a) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Search field below the buttons should sit close to the menu. */

html body.single:has(#tainacan-default-document-section) .post-navigation ~ :is(.wp-block-search, form[role="search"], .search-form),
html body.page:has(#tainacan-default-document-section) .post-navigation ~ :is(.wp-block-search, form[role="search"], .search-form),
html body.single:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(.wp-block-search, form[role="search"], .search-form),
html body.page:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(.wp-block-search, form[role="search"], .search-form) {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
    padding-top: 0 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — HALF LOWER MENU GAP
   =========================================================
   Stronger final spacing adjustment: reduces the vertical gap
   between the archive Previous / Next buttons and the lower
   Decades / Previous / Next / Latest / Search menu to about
   half of the previous version.
   ========================================================= */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    margin-top: 12px !important;
    margin-bottom: 0 !important;

    padding-top: 2px !important;
    padding-bottom: 0 !important;
}

html body.single:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-links,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-links {
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Pull the lower menu/search area closer to the Previous / Next buttons. */

html body.single:has(#tainacan-default-document-section) .post-navigation + *,
html body.page:has(#tainacan-default-document-section) .post-navigation + *,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation + *,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation + * {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Stronger fallback for any menu/search block after the post navigation. */

html body.single:has(#tainacan-default-document-section) .post-navigation ~ :is(
    nav,
    .main-navigation,
    .navigation,
    .menu,
    .widget,
    .widget_nav_menu,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.page:has(#tainacan-default-document-section) .post-navigation ~ :is(
    nav,
    .main-navigation,
    .navigation,
    .menu,
    .widget,
    .widget_nav_menu,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.single:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(
    nav,
    .main-navigation,
    .navigation,
    .menu,
    .widget,
    .widget_nav_menu,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.page:has(a[href*="la_image_viewer"]) .post-navigation ~ :is(
    nav,
    .main-navigation,
    .navigation,
    .menu,
    .widget,
    .widget_nav_menu,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* If the theme adds spacing to the wrapper around that lower area,
   remove the top part only. */

html body.single:has(#tainacan-default-document-section) .entry-content > *:has(.wp-block-search),
html body.page:has(#tainacan-default-document-section) .entry-content > *:has(.wp-block-search),
html body.single:has(a[href*="la_image_viewer"]) .entry-content > *:has(.wp-block-search),
html body.page:has(a[href*="la_image_viewer"]) .entry-content > *:has(.wp-block-search),
html body.single:has(#tainacan-default-document-section) .entry-content > *:has(form[role="search"]),
html body.page:has(#tainacan-default-document-section) .entry-content > *:has(form[role="search"]),
html body.single:has(a[href*="la_image_viewer"]) .entry-content > *:has(form[role="search"]),
html body.page:has(a[href*="la_image_viewer"]) .entry-content > *:has(form[role="search"]) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — PULL LOWER MENU UP
   =========================================================
   Stronger fix for the gap below the archive record Previous /
   Next buttons.

   The lower Decades / Previous / Next / Latest / Search menu is
   likely outside the entry-content area, so this targets the main
   content/footer wrapper on individual archive image pages.
   ========================================================= */

/* Remove excess bottom spacing from the archive record content area. */

html body.single:has(#tainacan-default-document-section) :is(
    #primary,
    #main,
    main,
    .site-main,
    .content-area,
    .inside-article,
    article,
    .hentry,
    .entry-content
),
html body.page:has(#tainacan-default-document-section) :is(
    #primary,
    #main,
    main,
    .site-main,
    .content-area,
    .inside-article,
    article,
    .hentry,
    .entry-content
),
html body.single:has(a[href*="la_image_viewer"]) :is(
    #primary,
    #main,
    main,
    .site-main,
    .content-area,
    .inside-article,
    article,
    .hentry,
    .entry-content
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    #primary,
    #main,
    main,
    .site-main,
    .content-area,
    .inside-article,
    article,
    .hentry,
    .entry-content
) {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Keep the archive Previous / Next buttons close to the content below. */

html body.single:has(#tainacan-default-document-section) .post-navigation,
html body.page:has(#tainacan-default-document-section) .post-navigation,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation {
    margin-top: 12px !important;
    margin-bottom: 0 !important;

    padding-top: 2px !important;
    padding-bottom: 0 !important;
}

html body.single:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.page:has(#tainacan-default-document-section) .post-navigation .nav-links,
html body.single:has(a[href*="la_image_viewer"]) .post-navigation .nav-links,
html body.page:has(a[href*="la_image_viewer"]) .post-navigation .nav-links {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Pull the footer / lower menu wrapper upward. */

html body.single:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info,
    .widget-area,
    #secondary,
    aside
),
html body.page:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info,
    .widget-area,
    #secondary,
    aside
),
html body.single:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info,
    .widget-area,
    #secondary,
    aside
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info,
    .widget-area,
    #secondary,
    aside
) {
    margin-top: -28px !important;
    padding-top: 0 !important;
}

/* If the lower menu/search is in a widget block, strip its top spacing too. */

html body.single:has(#tainacan-default-document-section) :is(
    .widget,
    .widget_nav_menu,
    .widget_search,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.page:has(#tainacan-default-document-section) :is(
    .widget,
    .widget_nav_menu,
    .widget_search,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.single:has(a[href*="la_image_viewer"]) :is(
    .widget,
    .widget_nav_menu,
    .widget_search,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .widget,
    .widget_nav_menu,
    .widget_search,
    .wp-block-navigation,
    .wp-block-search,
    form[role="search"],
    .search-form
) {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Keep lower menu items compact once pulled up. */

html body.single:has(#tainacan-default-document-section) :is(
    .footer-navigation,
    .footer-widgets,
    .widget_nav_menu,
    .wp-block-navigation
) :is(ul, li, a),
html body.page:has(#tainacan-default-document-section) :is(
    .footer-navigation,
    .footer-widgets,
    .widget_nav_menu,
    .wp-block-navigation
) :is(ul, li, a),
html body.single:has(a[href*="la_image_viewer"]) :is(
    .footer-navigation,
    .footer-widgets,
    .widget_nav_menu,
    .wp-block-navigation
) :is(ul, li, a),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .footer-navigation,
    .footer-widgets,
    .widget_nav_menu,
    .wp-block-navigation
) :is(ul, li, a) {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — GREEN LINES AROUND LOWER MENU
   =========================================================
   Adds a clean theme-green line above and below the lower menu
   area containing Decades / Previous / Next / Latest / Search
   on individual archive image pages.
   ========================================================= */

/* Green rule around the lower footer/menu area. */

html body.single:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info
),
html body.page:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info
),
html body.single:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info
),
html body.page:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-wrapper,
    .footer-main,
    .footer-widgets,
    .footer-widget-area,
    .footer-navigation,
    .site-info
) {
    border-top: 2px solid #2F7D3B !important;
    border-bottom: 2px solid #2F7D3B !important;

    margin-top: -28px !important;
    margin-bottom: 12px !important;

    padding-top: 8px !important;
    padding-bottom: 8px !important;

    box-shadow: none !important;
}

/* If the visible menu is inside a widget area rather than the footer wrapper,
   apply the same neat green enclosure there too. */

html body.single:has(#tainacan-default-document-section) :is(
    .widget-area,
    #secondary,
    aside
):has(:is(.widget_nav_menu, .wp-block-navigation, .wp-block-search, form[role="search"], .search-form)),
html body.page:has(#tainacan-default-document-section) :is(
    .widget-area,
    #secondary,
    aside
):has(:is(.widget_nav_menu, .wp-block-navigation, .wp-block-search, form[role="search"], .search-form)),
html body.single:has(a[href*="la_image_viewer"]) :is(
    .widget-area,
    #secondary,
    aside
):has(:is(.widget_nav_menu, .wp-block-navigation, .wp-block-search, form[role="search"], .search-form)),
html body.page:has(a[href*="la_image_viewer"]) :is(
    .widget-area,
    #secondary,
    aside
):has(:is(.widget_nav_menu, .wp-block-navigation, .wp-block-search, form[role="search"], .search-form)) {
    border-top: 2px solid #2F7D3B !important;
    border-bottom: 2px solid #2F7D3B !important;

    margin-top: -28px !important;
    margin-bottom: 12px !important;

    padding-top: 8px !important;
    padding-bottom: 8px !important;

    box-shadow: none !important;
}

/* Keep the items inside the green-lined lower menu tidy and compact. */

html body.single:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-widgets,
    .footer-navigation,
    .widget-area,
    #secondary,
    aside
) :is(ul, li, p, form, .wp-block-search, .search-form),
html body.page:has(#tainacan-default-document-section) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-widgets,
    .footer-navigation,
    .widget-area,
    #secondary,
    aside
) :is(ul, li, p, form, .wp-block-search, .search-form),
html body.single:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-widgets,
    .footer-navigation,
    .widget-area,
    #secondary,
    aside
) :is(ul, li, p, form, .wp-block-search, .search-form),
html body.page:has(a[href*="la_image_viewer"]) :is(
    #colophon,
    footer,
    .site-footer,
    .footer,
    .footer-widgets,
    .footer-navigation,
    .widget-area,
    #secondary,
    aside
) :is(ul, li, p, form, .wp-block-search, .search-form) {
    margin-top: 0 !important;
    margin-bottom: 4px !important;
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — GREEN LINES ON SITEWIDE BUTTON ROW
   =========================================================
   Final correction: the lower Decades / Previous / Next /
   Latest / Search menu is the sitewide archive button row:
   .la-sitewide-archive-buttons

   This adds a clean theme-green line above and below that exact row.
   ========================================================= */

html body .la-sitewide-archive-buttons {
    width: 100% !important;
    max-width: 760px !important;

    margin-top: 14px !important;
    margin-right: auto !important;
    margin-bottom: 18px !important;
    margin-left: auto !important;

    padding-top: 10px !important;
    padding-right: 12px !important;
    padding-bottom: 10px !important;
    padding-left: 12px !important;

    border-top: 2px solid #2F7D3B !important;
    border-bottom: 2px solid #2F7D3B !important;
    border-left: 0 !important;
    border-right: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* Keep the five buttons centred neatly between the two lines. */

html body .la-sitewide-archive-buttons a,
html body .la-sitewide-archive-buttons a:link,
html body .la-sitewide-archive-buttons a:visited {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Mobile: keep the green lines but allow the buttons to wrap cleanly. */

@media screen and (max-width: 760px) {
    html body .la-sitewide-archive-buttons {
        max-width: calc(100% - 24px) !important;

        margin-top: 12px !important;
        margin-bottom: 16px !important;

        padding-top: 9px !important;
        padding-bottom: 9px !important;
    }
}


/* =========================================================
   LIMERICK PHOTOGRAPHIC ARCHIVE — VISIBLE LINES ON LOWER BUTTON ROW
   =========================================================
   The lower Decades / Previous / Next / Latest / Search row is:
   <nav class="la-sitewide-archive-buttons">

   It sits outside the main #page wrapper, so normal wrapper/footer
   borders do not reliably show. This creates visible green rules
   using ::before and ::after on the exact nav row.
   ========================================================= */

html body > nav.la-sitewide-archive-buttons,
html body nav.la-sitewide-archive-buttons {
    position: relative !important;

    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;

    width: 100% !important;
    max-width: 760px !important;

    margin-top: 14px !important;
    margin-right: auto !important;
    margin-bottom: 18px !important;
    margin-left: auto !important;

    padding-top: 12px !important;
    padding-right: 12px !important;
    padding-bottom: 12px !important;
    padding-left: 12px !important;

    border-top: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;

    background: transparent !important;
    background-color: transparent !important;

    overflow: visible !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    z-index: 5 !important;
}

/* Strong visible green line above the button row. */

html body > nav.la-sitewide-archive-buttons::before,
html body nav.la-sitewide-archive-buttons::before {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    top: 0 !important;
    left: 50% !important;

    width: 100% !important;
    height: 2px !important;

    transform: translateX(-50%) !important;

    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    border: 0 !important;
    box-shadow: none !important;

    pointer-events: none !important;
    z-index: 0 !important;
}

/* Strong visible green line below the button row. */

html body > nav.la-sitewide-archive-buttons::after,
html body nav.la-sitewide-archive-buttons::after {
    content: "" !important;
    display: block !important;

    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;

    width: 100% !important;
    height: 2px !important;

    transform: translateX(-50%) !important;

    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    border: 0 !important;
    box-shadow: none !important;

    pointer-events: none !important;
    z-index: 0 !important;
}

/* Keep the five buttons above the decorative lines. */

html body > nav.la-sitewide-archive-buttons a,
html body nav.la-sitewide-archive-buttons a {
    position: relative !important;
    z-index: 2 !important;
}

/* Mobile: keep the lines visible while allowing safe wrapping. */

@media screen and (max-width: 760px) {
    html body > nav.la-sitewide-archive-buttons,
    html body nav.la-sitewide-archive-buttons {
        max-width: calc(100% - 24px) !important;
        flex-wrap: wrap !important;

        padding-top: 11px !important;
        padding-bottom: 11px !important;

        margin-top: 12px !important;
        margin-bottom: 16px !important;
    }
}


/* =========================================================
   LIMERICK ARCHIVES — HOUSE STYLE FOR ORDINARY POSTS AND PAGES
   =========================================================
   Extends the finished Limerick Photographic Archive visual
   treatment to normal Limerick Archives posts and pages.

   Applies to:
   - standard blog posts
   - standard WordPress pages

   Does not disturb:
   - Tainacan item metadata layout
   - photographic archive two-column metadata grid
   - archive item image rules already defined above
   ========================================================= */


/* =========================================================
   1. FEATURED IMAGE FRAME FOR NORMAL POSTS AND PAGES
   ========================================================= */

html body.single-post .aft-post-thumbnail-wrapper,
html body.page:not(.single-tnc_col_79773_item) .aft-post-thumbnail-wrapper {
    width: 100% !important;
    max-width: 900px !important;

    margin-top: 8px !important;
    margin-right: auto !important;
    margin-bottom: 16px !important;
    margin-left: auto !important;

    padding: 0 !important;

    background: transparent !important;
    box-shadow: none !important;
}

html body.single-post .post-thumbnail,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail,
html body.single-post .post-thumbnail.full-width-image,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail.full-width-image {
    position: relative !important;

    width: 100% !important;
    max-width: 900px !important;

    margin-right: auto !important;
    margin-left: auto !important;

    padding-top: 8px !important;
    padding-bottom: 8px !important;

    overflow: visible !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    border: 0 !important;
}

/* Green line above ordinary post/page featured image. */

html body.single-post .post-thumbnail::before,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail::before {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 900px !important;
    height: 2px !important;

    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 7px !important;
    margin-left: auto !important;

    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    border: 0 !important;
    box-shadow: none !important;
}

/* Green line below ordinary post/page featured image. */

html body.single-post .post-thumbnail::after,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail::after {
    content: "" !important;
    display: block !important;

    width: 100% !important;
    max-width: 900px !important;
    height: 2px !important;

    margin-top: 7px !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;

    background: #2F7D3B !important;
    background-color: #2F7D3B !important;

    border: 0 !important;
    box-shadow: none !important;
}

/* The image itself: white mount plus green frame. */

html body.single-post .post-thumbnail img,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail img,
html body.single-post .aft-post-thumbnail-wrapper img,
html body.page:not(.single-tnc_col_79773_item) .aft-post-thumbnail-wrapper img {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;
    height: auto !important;

    margin-right: auto !important;
    margin-left: auto !important;

    padding: 4px !important;

    border: 2px solid #2F7D3B !important;
    background: #ffffff !important;
    background-color: #ffffff !important;

    object-fit: contain !important;
    object-position: center center !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}


/* =========================================================
   2. MAIN POST / PAGE TITLE TREATMENT
   ========================================================= */

html body.single-post .entry-title,
html body.page:not(.single-tnc_col_79773_item) .entry-title {
    max-width: 900px !important;

    margin-top: 8px !important;
    margin-right: auto !important;
    margin-bottom: 10px !important;
    margin-left: auto !important;

    color: #2F7D3B !important;

    font-family: Georgia, Garamond, "EB Garamond", serif !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;

    text-align: center !important;
}


/* =========================================================
   3. ORDINARY POST / PAGE CONTENT WIDTH AND CLEAN SPACING
   ========================================================= */

html body.single-post .entry-content,
html body.page:not(.single-tnc_col_79773_item) .entry-content {
    max-width: 900px !important;

    margin-right: auto !important;
    margin-left: auto !important;

    padding-top: 4px !important;

    color: #111111 !important;
}

html body.single-post .entry-content p,
html body.page:not(.single-tnc_col_79773_item) .entry-content p {
    margin-top: 0 !important;
    margin-bottom: 14px !important;

    line-height: 1.65 !important;
}


/* =========================================================
   4. OPTIONAL GREEN FRAME FOR IMAGES INSIDE POST/PAGE BODY
   =========================================================
   This gives inserted article/page images the same archive style,
   while avoiding icons, logos, avatars, emojis and admin images.
   ========================================================= */

html body.single-post .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley):not([width="1"]):not([height="1"]),
html body.page:not(.single-tnc_col_79773_item) .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley):not([width="1"]):not([height="1"]) {
    display: block !important;

    max-width: 100% !important;
    height: auto !important;

    margin-top: 14px !important;
    margin-right: auto !important;
    margin-bottom: 14px !important;
    margin-left: auto !important;

    padding: 4px !important;

    border: 2px solid #2F7D3B !important;
    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}


/* =========================================================
   5. POST NAVIGATION BUTTONS FOR NORMAL POSTS
   ========================================================= */

html body.single-post .post-navigation {
    max-width: 900px !important;

    margin-top: 18px !important;
    margin-right: auto !important;
    margin-bottom: 14px !important;
    margin-left: auto !important;

    padding-top: 10px !important;
    padding-bottom: 10px !important;

    border-top: 2px solid #2F7D3B !important;
    border-bottom: 2px solid #2F7D3B !important;

    box-shadow: none !important;
}

html body.single-post .post-navigation .nav-links {
    display: flex !important;

    justify-content: center !important;
    align-items: center !important;
    gap: 14px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    box-shadow: none !important;
}

html body.single-post .post-navigation .nav-previous,
html body.single-post .post-navigation .nav-next {
    margin: 0 !important;
    padding: 0 !important;
}

html body.single-post .post-navigation a {
    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;

    min-width: 95px !important;
    min-height: 28px !important;

    margin: 0 !important;
    padding: 6px 14px !important;

    line-height: 1.1 !important;
}


/* =========================================================
   6. STANDARD PAGE LOWER SPACING
   ========================================================= */

html body.page:not(.single-tnc_col_79773_item) .entry-content-wrap,
html body.single-post .entry-content-wrap {
    margin-bottom: 10px !important;
    padding-bottom: 0 !important;
}


/* =========================================================
   7. RESPONSIVE ADJUSTMENTS
   ========================================================= */

@media screen and (max-width: 760px) {

    html body.single-post .aft-post-thumbnail-wrapper,
    html body.page:not(.single-tnc_col_79773_item) .aft-post-thumbnail-wrapper,
    html body.single-post .post-thumbnail,
    html body.page:not(.single-tnc_col_79773_item) .post-thumbnail,
    html body.single-post .entry-content,
    html body.page:not(.single-tnc_col_79773_item) .entry-content,
    html body.single-post .post-navigation,
    html body.single-post .entry-title,
    html body.page:not(.single-tnc_col_79773_item) .entry-title {
        max-width: calc(100% - 24px) !important;
    }

    html body.single-post .post-thumbnail::before,
    html body.single-post .post-thumbnail::after,
    html body.page:not(.single-tnc_col_79773_item) .post-thumbnail::before,
    html body.page:not(.single-tnc_col_79773_item) .post-thumbnail::after {
        max-width: 100% !important;
    }

    html body.single-post .post-navigation .nav-links {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
}


/* =========================================================
   LIMERICK ARCHIVES — STRONG IMAGE FRAMES FOR POSTS AND PAGES
   =========================================================
   Stronger final override for ordinary Limerick Archives posts
   and pages where the first house-style pass did not visibly frame
   the images.

   Applies to:
   - normal single posts
   - normal WordPress pages

   Excludes:
   - Tainacan item pages
   - logos, avatars, emojis, admin/header images
   ========================================================= */


/* Featured image wrapper must not clip the green frame. */

html body.single-post article.af-single-article .aft-post-thumbnail-wrapper,
html body.single-post article.af-single-article .post-thumbnail,
html body.single-post article.af-single-article .post-thumbnail.full-width-image,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .aft-post-thumbnail-wrapper,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .post-thumbnail,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .post-thumbnail.full-width-image,
html body.page:not(.single-tnc_col_79773_item) .aft-post-thumbnail-wrapper,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail.full-width-image {
    overflow: visible !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Strong green frame for featured images. */

html body.single-post article.af-single-article .post-thumbnail img,
html body.single-post article.af-single-article .post-thumbnail.full-width-image img,
html body.single-post article.af-single-article .aft-post-thumbnail-wrapper img,
html body.single-post article.af-single-article img.wp-post-image,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .post-thumbnail img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .post-thumbnail.full-width-image img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .aft-post-thumbnail-wrapper img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article img.wp-post-image,
html body.page:not(.single-tnc_col_79773_item) .post-thumbnail img,
html body.page:not(.single-tnc_col_79773_item) .aft-post-thumbnail-wrapper img,
html body.page:not(.single-tnc_col_79773_item) img.wp-post-image {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;
    height: auto !important;

    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;

    padding: 5px !important;

    border-width: 3px !important;
    border-style: solid !important;
    border-color: #2F7D3B !important;

    outline: 0 !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    object-fit: contain !important;
    object-position: center center !important;
}


/* Strong green frame for images inserted inside the article/page body. */

html body.single-post article.af-single-article .entry-content figure.wp-block-image img,
html body.single-post article.af-single-article .entry-content .wp-block-image img,
html body.single-post article.af-single-article .entry-content .wp-caption img,
html body.single-post article.af-single-article .entry-content p > img,
html body.single-post article.af-single-article .entry-content img.size-full,
html body.single-post article.af-single-article .entry-content img.size-large,
html body.single-post article.af-single-article .entry-content img.aligncenter,
html body.single-post article.af-single-article .entry-content img.alignleft,
html body.single-post article.af-single-article .entry-content img.alignright,
html body.single-post article.af-single-article .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley):not([width="1"]):not([height="1"]),
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content figure.wp-block-image img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content .wp-block-image img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content .wp-caption img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content p > img,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img.size-full,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img.size-large,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img.aligncenter,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img.alignleft,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img.alignright,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley):not([width="1"]):not([height="1"]),
html body.page:not(.single-tnc_col_79773_item) .entry-content figure.wp-block-image img,
html body.page:not(.single-tnc_col_79773_item) .entry-content .wp-block-image img,
html body.page:not(.single-tnc_col_79773_item) .entry-content .wp-caption img,
html body.page:not(.single-tnc_col_79773_item) .entry-content p > img,
html body.page:not(.single-tnc_col_79773_item) .entry-content img.size-full,
html body.page:not(.single-tnc_col_79773_item) .entry-content img.size-large,
html body.page:not(.single-tnc_col_79773_item) .entry-content img.aligncenter,
html body.page:not(.single-tnc_col_79773_item) .entry-content img.alignleft,
html body.page:not(.single-tnc_col_79773_item) .entry-content img.alignright,
html body.page:not(.single-tnc_col_79773_item) .entry-content img:not(.avatar):not(.emoji):not(.wp-smiley):not([width="1"]):not([height="1"]) {
    display: block !important;

    max-width: 100% !important;
    height: auto !important;

    margin-top: 16px !important;
    margin-right: auto !important;
    margin-bottom: 16px !important;
    margin-left: auto !important;

    padding: 5px !important;

    border-width: 3px !important;
    border-style: solid !important;
    border-color: #2F7D3B !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}


/* Make sure image containers do not hide the frame. */

html body.single-post article.af-single-article .entry-content figure.wp-block-image,
html body.single-post article.af-single-article .entry-content .wp-block-image,
html body.single-post article.af-single-article .entry-content .wp-caption,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content figure.wp-block-image,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content .wp-block-image,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content .wp-caption,
html body.page:not(.single-tnc_col_79773_item) .entry-content figure.wp-block-image,
html body.page:not(.single-tnc_col_79773_item) .entry-content .wp-block-image,
html body.page:not(.single-tnc_col_79773_item) .entry-content .wp-caption {
    overflow: visible !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Keep captions neat under framed images. */

html body.single-post article.af-single-article .entry-content figcaption,
html body.single-post article.af-single-article .entry-content .wp-caption-text,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content figcaption,
html body.page:not(.single-tnc_col_79773_item) article.af-single-article .entry-content .wp-caption-text,
html body.page:not(.single-tnc_col_79773_item) .entry-content figcaption,
html body.page:not(.single-tnc_col_79773_item) .entry-content .wp-caption-text {
    margin-top: -6px !important;
    margin-bottom: 14px !important;

    color: #555555 !important;

    font-size: 9.5pt !important;
    line-height: 1.3 !important;
    text-align: center !important;
}


/* =========================================================
   LIMERICK ARCHIVES — HOMEPAGE RECENT POST IMAGE FRAMES
   =========================================================
   Extends the same green image-frame style to the homepage,
   which uses recent posts rather than a static page.

   Applies to:
   - homepage recent post thumbnails
   - blog/recent post grids
   - CoverNews post-card image wrappers
   - image thumbnails and background-image thumbnails

   Excludes:
   - site masthead/header/menu imagery
   - admin bar
   - emojis/avatars/icons
   - Tainacan single item metadata pages
   ========================================================= */


/* Standard image thumbnails inside homepage/recent-post cards. */

html body.home article.post .post-thumbnail img,
html body.home article.post .aft-post-thumbnail-wrapper img,
html body.home article.post img.wp-post-image,
html body.home .site-main article.post .post-thumbnail img,
html body.home .site-main article.post .aft-post-thumbnail-wrapper img,
html body.home .site-main article.post img.wp-post-image,
html body.home .section-block-upper article.post .post-thumbnail img,
html body.home .section-block-upper article.post .aft-post-thumbnail-wrapper img,
html body.home .section-block-upper article.post img.wp-post-image,
html body.blog article.post .post-thumbnail img,
html body.blog article.post .aft-post-thumbnail-wrapper img,
html body.blog article.post img.wp-post-image,
html body.archive article.post .post-thumbnail img,
html body.archive article.post .aft-post-thumbnail-wrapper img,
html body.archive article.post img.wp-post-image {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;
    height: auto !important;

    margin-right: auto !important;
    margin-left: auto !important;

    padding: 5px !important;

    border-width: 3px !important;
    border-style: solid !important;
    border-color: #2F7D3B !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    object-fit: contain !important;
    object-position: center center !important;
}


/* Homepage/recent-post thumbnail wrappers must not clip the frame. */

html body.home article.post .post-thumbnail,
html body.home article.post .aft-post-thumbnail-wrapper,
html body.home .site-main article.post .post-thumbnail,
html body.home .site-main article.post .aft-post-thumbnail-wrapper,
html body.home .section-block-upper article.post .post-thumbnail,
html body.home .section-block-upper article.post .aft-post-thumbnail-wrapper,
html body.blog article.post .post-thumbnail,
html body.blog article.post .aft-post-thumbnail-wrapper,
html body.archive article.post .post-thumbnail,
html body.archive article.post .aft-post-thumbnail-wrapper {
    overflow: visible !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* CoverNews homepage/card thumbnails that use background images instead of <img>. */

html body.home .site-main :is(
    .data-bg,
    .data-bg-hover,
    .af-post-image,
    .read-img,
    .post-thumb,
    .post-thumbnail,
    .thumb,
    .thumbnail,
    .featured-image,
    .image-wrapper
):not(#la-hard-header *):not(.site-header *):not(.main-navigation *):not(#wpadminbar *),
html body.blog .site-main :is(
    .data-bg,
    .data-bg-hover,
    .af-post-image,
    .read-img,
    .post-thumb,
    .post-thumbnail,
    .thumb,
    .thumbnail,
    .featured-image,
    .image-wrapper
):not(#la-hard-header *):not(.site-header *):not(.main-navigation *):not(#wpadminbar *),
html body.archive .site-main :is(
    .data-bg,
    .data-bg-hover,
    .af-post-image,
    .read-img,
    .post-thumb,
    .post-thumbnail,
    .thumb,
    .thumbnail,
    .featured-image,
    .image-wrapper
):not(#la-hard-header *):not(.site-header *):not(.main-navigation *):not(#wpadminbar *) {
    padding: 5px !important;

    border-width: 3px !important;
    border-style: solid !important;
    border-color: #2F7D3B !important;

    background-color: #ffffff !important;
    background-clip: content-box !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    overflow: hidden !important;
}


/* Stronger targeting for CoverNews homepage recent-post / grid structures. */

html body.home :is(
    .af-main-banner,
    .aft-main-banner-section,
    .latest-posts,
    .latest-news,
    .recent-posts,
    .af-posts,
    .posts-grid,
    .archive-layout-grid,
    .section-block-upper,
    .section-post-block,
    .af-container-row,
    .widget
) article.post :is(.post-thumbnail, .aft-post-thumbnail-wrapper, .data-bg, .data-bg-hover, .af-post-image, .read-img),
html body.blog :is(
    .latest-posts,
    .latest-news,
    .recent-posts,
    .af-posts,
    .posts-grid,
    .archive-layout-grid,
    .section-block-upper,
    .section-post-block,
    .af-container-row,
    .widget
) article.post :is(.post-thumbnail, .aft-post-thumbnail-wrapper, .data-bg, .data-bg-hover, .af-post-image, .read-img),
html body.archive :is(
    .latest-posts,
    .latest-news,
    .recent-posts,
    .af-posts,
    .posts-grid,
    .archive-layout-grid,
    .section-block-upper,
    .section-post-block,
    .af-container-row,
    .widget
) article.post :is(.post-thumbnail, .aft-post-thumbnail-wrapper, .data-bg, .data-bg-hover, .af-post-image, .read-img) {
    padding: 5px !important;

    border: 3px solid #2F7D3B !important;

    background-color: #ffffff !important;
    background-clip: content-box !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    overflow: hidden !important;
}


/* Do not frame header/menu/admin/search icons or tiny utility images. */

html body.home :is(
    #la-hard-header,
    .site-header,
    #masthead,
    .main-navigation,
    .la-main-explore-strip,
    #wpadminbar,
    .cart-search,
    .af-search-wrap,
    .search-overlay
) img,
html body.home img.avatar,
html body.home img.emoji,
html body.home img.wp-smiley,
html body.home img[width="1"],
html body.home img[height="1"] {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}


/* Mobile homepage card frames. */

@media screen and (max-width: 760px) {
    html body.home article.post .post-thumbnail img,
    html body.home article.post .aft-post-thumbnail-wrapper img,
    html body.home article.post img.wp-post-image,
    html body.home .site-main :is(.data-bg, .data-bg-hover, .af-post-image, .read-img, .post-thumb, .post-thumbnail) {
        padding: 4px !important;
        border-width: 2px !important;
    }
}


/* =========================================================
   LIMERICK ARCHIVES — HOMEPAGE GRID FEATURED IMAGE FRAME
   =========================================================
   Final homepage correction.

   The homepage recent-post grid image uses:
   img.limerick-archive-grid-featured-image.wp-post-image

   This targets that exact image class directly.
   ========================================================= */

/* Direct green frame on homepage grid featured images. */

html body img.limerick-archive-grid-featured-image,
html body.home img.limerick-archive-grid-featured-image,
html body.home img.limerick-archive-grid-featured-image.wp-post-image,
html body.front-page img.limerick-archive-grid-featured-image,
html body.blog img.limerick-archive-grid-featured-image,
html body.archive img.limerick-archive-grid-featured-image {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;
    height: auto !important;

    margin-top: 0 !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    margin-left: auto !important;

    padding: 5px !important;

    border-width: 3px !important;
    border-style: solid !important;
    border-color: #2F7D3B !important;

    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;

    object-fit: contain !important;
    object-position: center center !important;
}

/* Make sure the direct parent does not hide the frame. */

html body img.limerick-archive-grid-featured-image,
html body img.limerick-archive-grid-featured-image.wp-post-image {
    outline: 0 !important;
}

html body :is(
    a,
    figure,
    picture,
    div,
    article,
    section
):has(> img.limerick-archive-grid-featured-image) {
    overflow: visible !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

/* Add a small white mount around the image area if the parent is a link/card image wrapper. */

html body :is(
    a,
    figure,
    picture,
    div
):has(> img.limerick-archive-grid-featured-image) {
    display: block !important;

    padding: 0 !important;

    box-sizing: border-box !important;
}

/* Stronger fallback if the theme strips image borders inside grids. */

html body .limerick-archive-grid-featured-image.wp-post-image {
    border: 3px solid #2F7D3B !important;
    padding: 5px !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
}

/* Mobile: slightly lighter frame. */

@media screen and (max-width: 760px) {
    html body img.limerick-archive-grid-featured-image,
    html body.home img.limerick-archive-grid-featured-image.wp-post-image {
        padding: 4px !important;
        border-width: 2px !important;
    }
}


/* =========================================================
   LIMERICK ARCHIVES — REMOVE HOMEPAGE GRID LOGO OVERLAY
   =========================================================
   The homepage recent-post thumbnails use:
   img.limerick-archive-grid-featured-image.wp-post-image

   This keeps the green image frame but removes any logo/overlay
   elements or pseudo-elements sitting over those homepage grid
   thumbnails.
   ========================================================= */


/* Keep the actual homepage grid image visible and framed. */

html body.home img.limerick-archive-grid-featured-image,
html body.home img.limerick-archive-grid-featured-image.wp-post-image,
html body img.limerick-archive-grid-featured-image.wp-post-image {
    position: relative !important;
    z-index: 2 !important;

    display: block !important;

    padding: 5px !important;

    border: 3px solid #2F7D3B !important;
    background: #ffffff !important;
    background-color: #ffffff !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}


/* Remove pseudo-overlays from the direct wrappers around homepage grid images. */

html body.home :is(a, figure, picture, div, article, section):has(> img.limerick-archive-grid-featured-image)::before,
html body.home :is(a, figure, picture, div, article, section):has(> img.limerick-archive-grid-featured-image)::after,
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image)::before,
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image)::after {
    content: none !important;
    display: none !important;

    background: none !important;
    background-image: none !important;

    border: 0 !important;
    box-shadow: none !important;
}


/* Hide common custom logo/overlay elements only when they are inside
   a homepage post-card area containing the grid featured image. */

html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) :is(
    .la-homepage-logo-wrapper,
    .la-homepage-logo,
    .la-logo-overlay,
    .la-image-logo-overlay,
    .la-grid-logo-overlay,
    .limerick-archive-logo-overlay,
    .limerick-archives-logo-overlay,
    .archive-logo-overlay,
    .image-logo-overlay,
    .post-logo-overlay,
    .thumbnail-logo-overlay,
    .featured-image-logo,
    .featured-image-overlay,
    .post-thumbnail-overlay
) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* If the overlay is an extra logo image placed beside the thumbnail,
   hide it only inside wrappers that also contain the real grid image. */

html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) img[alt="Limerick Archives"]:not(.limerick-archive-grid-featured-image),
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) img[src*="logo"]:not(.limerick-archive-grid-featured-image),
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) img[src*="Logo"]:not(.limerick-archive-grid-featured-image),
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) img[src*="watermark"]:not(.limerick-archive-grid-featured-image),
html body.home :is(a, figure, picture, div, article, section):has(img.limerick-archive-grid-featured-image) img[src*="Watermark"]:not(.limerick-archive-grid-featured-image) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;

    width: 0 !important;
    height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
    pointer-events: none !important;
}


/* Make sure the image wrapper remains clean after overlay removal. */

html body.home :is(a, figure, picture, div):has(> img.limerick-archive-grid-featured-image),
html body.home :is(a, figure, picture, div):has(img.limerick-archive-grid-featured-image) {
    position: relative !important;

    overflow: visible !important;

    background: transparent !important;
    background-color: transparent !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}

