@charset "UTF-8";

/*
Theme Name: CHI Pilot
Theme URI: http://eacintra04:3000/FRIELL/CHI-Pilot
Author: Liam Friel - EAC
Description: Private Rent Hub — East Ayrshire Council information site for tenants, landlords and agents.
Requires at least: 5.3
Tested up to: 6.4
Requires PHP: 7.4
Version: 2.0
*/

/* ============================================================
   CSS custom properties
   ============================================================ */

:root {
    --colour-primary:      #0F4265;
    --colour-primary-dark: #123042;
    --colour-text:         #1a1a1a;
    --colour-bg-light:     #F6F9F7;
    --colour-focus:        #ffdd00;
    --font-headings:       'Lexend Deca', sans-serif;
    --font-body:           'Source Sans 3', sans-serif;
}


/* ============================================================
   Accessibility helpers
   ============================================================ */

.screen-reader-text {
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.skip-link {
    background: #ffdd00;
    color: #1a1a1a;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    left: 0;
    padding: 12px 24px;
    position: absolute;
    top: -100%;
    text-decoration: none;
    z-index: 9999;
}

.skip-link:focus {
    top: 0;
    outline: 3px solid #123042;
    outline-offset: 0;
    text-decoration: none;
    color: #1a1a1a;
}


/* ============================================================
   Global focus styles (GDS-style yellow outline)
   ============================================================ */

*:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

*:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none;
}


/* ============================================================
   Base / reset
   ============================================================ */

html {
    font-family: 'Source Sans 3', sans-serif;
    font-size: 16px;
    scroll-behavior: smooth;
}

body {
    color: #1a1a1a;
    background-color: #ffffff;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    word-wrap: break-word;
}

img {
    max-width: 100%;
    height: auto;
}


/* ============================================================
   Typography
   ============================================================ */

h1, h2, h3, h4, h5, h6, legend {
    font-family: 'Lexend Deca', sans-serif;
    font-weight: 700;
    line-height: 1.2;
    color: #1a1a1a;
}

h1     { font-size: 2.25rem;  margin-bottom: 24px; }
h2     { font-size: 1.75rem;  margin-bottom: 16px; }
legend { font-size: 1.75rem;  margin-bottom: 16px; }
h3     { font-size: 1.375rem; margin-bottom: 12px; }
h4     { font-size: 1.125rem; margin-bottom: 12px; }

p { margin-bottom: 16px; line-height: 1.6; }


/* ============================================================
   Links — default (body context)
   ============================================================ */

a {
    color: #0F4265;
    text-decoration: underline;
    text-underline-offset: 3px;
}

a:hover {
    color: #123042;
    text-decoration: underline;
}

a:visited {
    color: #4c2c92;
}


/* ============================================================
   Utility classes
   ============================================================ */

.lightgrey-bg { background-color: #F6F9F7; }
.grey-bg      { background-color: #E0E0E0; }
.white-bg     { background-color: #ffffff; }

.transparent-blue-bg {
    background-color: rgba(15, 67, 101, 0.85);
    color: #ffffff;
    padding: 8px 16px;
    display: inline-block;
    border-radius: 2px;
}

.box-shadow {}

.sub-title {
    font-size: 1.25rem;
    font-family: 'Source Sans 3', sans-serif;
    font-weight: 400;
    display: block;
    color: #ffffff;
}


/* ============================================================
   Header
   ============================================================ */

.site-header {
    background-color: #ffffff;
    border-bottom: 1px solid #dde3e0;
    padding: 12px 0;
}

.site-header .site-logo-link {
    display: inline-block;
    text-decoration: none;
}

.site-header .site-logo-link:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 4px;
    box-shadow: 0 0 0 6px #0F4265;
}

.site-header .logo {
    height: 80px;
    width: auto;
}

.site-header .site-title {
    font-family: 'Lexend Deca', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    color: #0F4265;
}

.site-header .search-toggle {
    color: #0F4265;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 12px;
    border: 2px solid transparent;
    background: none;
    font-size: 0.875rem;
    font-family: 'Source Sans 3', sans-serif;
    text-decoration: none;
    cursor: pointer;
}

.site-header .search-toggle i    { font-size: 1.25rem; }
.site-header .search-toggle span { display: block; }
.site-header .search-toggle:hover { color: #123042; }

.site-header .search-toggle:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.site-header .search-form .input-group { flex-wrap: nowrap; }

.site-header .search-form .search-field {
    border: 2px solid #123042;
    border-right: none;
    border-radius: 4px 0 0 4px;
    padding: 8px 16px;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    color: #1a1a1a;
    min-width: 180px;
}

.site-header .search-form .search-field:focus {
    outline: 3px solid #ffdd00;
    outline-offset: 0;
    box-shadow: none;
    border-color: #0F4265;
    z-index: 1;
}

.site-header .search-form .search-submit {
    background-color: #0F4265;
    border: 2px solid #0F4265;
    border-radius: 0 4px 4px 0;
    color: #ffffff;
    padding: 8px 16px;
    font-size: 1rem;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.site-header .search-form .search-submit i { color: #ffffff; }
.site-header .search-form .search-submit:hover { background-color: #123042; }

.site-header .search-form .search-submit:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.mobile-search-panel {
    background-color: #F6F9F7;
    border-bottom: 1px solid #dde3e0;
}


/* ============================================================
   Navigation
   ============================================================ */

.site-nav {
    background-color: #123042;
    padding: 0;
}

.site-nav .container {
    padding-top: 0;
    padding-bottom: 0;
}

/* Toggler only visible below lg — Bootstrap's .navbar-expand-lg hides it at lg+,
   but display:flex here would override that; scope it with a max-width media query. */
@media (max-width: 991.98px) {
    .site-nav .navbar-toggler {
        color: #ffffff;
        border: 2px solid rgba(255, 255, 255, 0.5);
        border-radius: 4px;
        padding: 8px 16px;
        background: transparent;
        display: flex;
        align-items: center;
        gap: 8px;
        cursor: pointer;
        margin: 8px 0;
    }
}

.site-nav .navbar-toggler i { color: #ffffff; font-size: 1rem; }

.site-nav .navbar-toggler .navbar-toggler-text {
    color: #ffffff;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    font-weight: 600;
}

.site-nav .navbar-toggler:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px rgba(255, 221, 0, 0.3);
}

.site-nav .navbar-nav {
    list-style: none;
    margin: 0;
    padding: 0;
}

.site-nav .navbar-nav .menu-item {
    border-bottom: 4px solid transparent;
    transition: border-color 0.15s ease;
    list-style: none;
    display: flex;
    align-items: center;
}

.site-nav .navbar-nav .menu-item:hover,
.site-nav .navbar-nav .menu-item.current-menu-item,
.site-nav .navbar-nav .menu-item.current-menu-ancestor {
    border-bottom-color: #ffffff;
}

.site-nav .navbar-nav .menu-item > a {
    color: #ffffff;
    text-decoration: none;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1.05rem;
    font-weight: 600;
    padding: 24px 16px;
    display: block;
    letter-spacing: 0.01em;
}

.site-nav .navbar-nav .menu-item > a:hover   { color: #ffffff; text-decoration: none; }
.site-nav .navbar-nav .menu-item > a:visited { color: #ffffff; }

.site-nav .navbar-nav .menu-item > a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: -3px;
    box-shadow: none;
    background-color: rgba(255, 255, 255, 0.12);
}

@media screen and (max-width: 991px) {
    .site-nav .navbar-collapse {
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        padding-bottom: 12px;
    }

    .site-nav .navbar-nav .menu-item {
        border-bottom: none;
        border-left: 4px solid transparent;
        display: block;
        align-items: unset;
    }

    .site-nav .navbar-nav .menu-item:hover,
    .site-nav .navbar-nav .menu-item.current-menu-item,
    .site-nav .navbar-nav .menu-item.current-menu-ancestor {
        border-left-color: #ffffff;
        border-bottom-color: transparent;
    }

    .site-nav .navbar-nav .menu-item > a {
        padding: 12px 24px;
    }
}


/* ============================================================
   Main content area
   ============================================================ */

main {
    min-height: 550px;
}


/* ============================================================
   Breadcrumbs (GOV.UK style)
   ============================================================ */

.breadcrumbs-section {
    padding: 16px 0;
    font-size: 0.875rem;
    color: #1a1a1a;
}

.breadcrumbs-section ol,
.breadcrumbs-section .breadcrumb {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.breadcrumbs-section li + li::before {
    content: "›";
    padding: 0 8px;
    color: #b0b8be;
}

.breadcrumbs-section a {
    color: #0F4265;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.breadcrumbs-section a:hover { color: #123042; }

.breadcrumbs-section .breadcrumb_last,
.breadcrumbs-section span[aria-current="page"] {
    color: #1a1a1a;
    font-weight: 600;
}


/* ============================================================
   Hero header section (shared)
   ============================================================ */

.header-section {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    display: flex;
    align-items: center;
    position: relative;
}

.header-section h1 {
    color: #ffffff;
    margin-bottom: 0;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.header-section h1 .transparent-blue-bg {
    display: inline;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}


/* ============================================================
   Page: Home (.home-page)
   ============================================================ */

.home-page {
    background-color: #F6F9F7;
}

.home-page .header-section {
    min-height: 320px;
    background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/bellsbank-housing.jpg");
}

.home-page .header-section .label-main-container { height: 100%; }

.home-page .header-section .label-container {
    background-color: rgba(15, 67, 101, 0.85);
    border-radius: 0 200px 200px 0;
    padding: 32px 48px;
    max-width: 55%;
    align-items: flex-start;
}

.home-page .header-section .label-container h1 {
    color: #ffffff;
    font-size: 2.5rem;
    text-shadow: none;
    margin-bottom: 8px;
}

@media (max-width: 767px) {
    .home-page .header-section .label-container {
        max-width: 100%;
        border-radius: 0;
        padding: 24px;
    }

    .home-page .header-section .label-container h1 { font-size: 1.75rem; }
}

.home-page .quick-links-panel {
    padding: 48px 0;
}

.home-page .button-table {
    margin-top: 24px;
}

.home-page .button-table .home-link-button {
    display: block;
    background-color: #ffffff;
    border: 1px solid #b0b8be;
    border-left: 5px solid #0F4265;
    border-radius: 0 4px 4px 0;
    padding: 24px;
    margin-bottom: 24px;
    color: #1a1a1a;
    text-decoration: none;
    transition: background-color 0.2s ease, border-left-color 0.2s ease;
}

.home-page .button-table .home-link-button .quick-link-label {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.4;
    gap: 12px;
    color: #1a1a1a;
}

.home-page .button-table .home-link-button i.fas {
    flex-shrink: 0;
    color: #0F4265;
    margin-top: 3px;
}

.home-page .button-table .home-link-button:hover {
    background-color: #e8f0f8;
    border-left-color: #123042;
    color: #1a1a1a;
    text-decoration: none;
}

/* Tenant / Landlord colour variants for quick link buttons */
.home-page .button-table .home-link-button--tenant   { border-left-color: #1d70b8; }
.home-page .button-table .home-link-button--landlord { border-left-color: #00703c; }

.home-page .button-table .home-link-button--tenant  i.fas { color: #1d70b8; }
.home-page .button-table .home-link-button--landlord i.fas { color: #00703c; }

.home-page .button-table .home-link-button--tenant:hover   { border-left-color: #144a7c; }
.home-page .button-table .home-link-button--landlord:hover { border-left-color: #005a30; }

.home-page .button-table .home-link-button:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
    background-color: #e8f0f8;
}

.home-page .information-for-button {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background-color: #ffffff;
    border: 1px solid #b0b8be;
    border-right: 4px solid #0F4265;
    border-radius: 4px 0 0 4px;
    padding: 16px 24px;
    margin-top: 24px;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 700;
    transition: background-color 0.2s ease;
    max-width: 400px;
}

.home-page .information-for-button i.fas { color: #0F4265; flex-shrink: 0; }

.home-page .information-for-button:hover {
    background-color: #e8f0f8;
    color: #1a1a1a;
    text-decoration: none;
}

.home-page .information-for-button:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

@media (max-width: 599px) {
    .home-page .information-for-button { max-width: 100%; }
}

.home-page .content-index-panel-img {
    max-height: 280px;
    max-width: 100%;
    object-fit: cover;
    border-radius: 4px;
}

@media (max-width: 767px) {
    .home-page .content-index-panel-img { display: none; }
}

.home-page .btn-more-blogs {
    display: inline-block;
    background-color: #0F4265;
    color: #ffffff;
    border: 2px solid #0F4265;
    border-radius: 4px;
    padding: 12px 32px;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    text-decoration: none;
    transition: background-color 0.2s ease;
}

.home-page .btn-more-blogs:hover  { background-color: #123042; color: #ffffff; text-decoration: none; }
.home-page .btn-more-blogs:visited { color: #ffffff; }

.home-page .btn-more-blogs:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.home-page .more-news-col {
    padding-top: 24px;
    text-align: center;
}


/* ============================================================
   Panel section (shared)
   ============================================================ */

.panel-section {
    padding: 48px 0;
}

.panel-section .panel-section-header {
    margin-bottom: 24px;
}

.panel-section .blog-feed-panel .blog-feed-col {
    display: flex;
    flex-direction: column;
    padding: 0 12px;
    margin-bottom: 24px;
}

/* ============================================================
   News cards (home page latest news section)
   ============================================================ */

.news-card {
    background: #ffffff;
    border: 1px solid #dde3e0;
    border-radius: 4px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
}

.news-card:hover {
    background-color: #f6f9f7;
}

.news-card-img-wrap {
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #dde3e0;
    flex-shrink: 0;
}

.news-card-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.news-card-body {
    padding: 16px 20px 20px;
    border-top: 3px solid #0F4265;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.news-card-date {
    display: block;
    font-size: 0.875rem;
    color: #555;
    margin-bottom: 8px;
    font-style: normal;
}

.news-card-title {
    font-family: 'Lexend Deca', sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.3;
    margin-bottom: 0;
    flex: 1;
}

.news-card-title a {
    color: #1a1a1a;
    text-decoration: none;
    display: block;
}

.news-card-title a:hover {
    color: #0F4265;
    text-decoration: underline;
}

.news-card-title a:visited { color: #4c2c92; }

.news-card-title a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

@media (max-width: 767px) {
    .panel-section .blog-feed-panel .blog-feed-col {
        padding: 0;
    }
}


/* ============================================================
   Contact / more info panel (shared — Ninja Form)
   ============================================================ */

.moreInfoPanel {
    background-color: #E0E0E0;
}

.moreInfoPanel .more-info-panel {
    padding: 48px 0;
}

.moreInfoPanel .more-info-panel h2 { margin-bottom: 16px; }
.moreInfoPanel .more-info-panel p  { margin-bottom: 16px; }


/* ============================================================
   Ninja Forms — preserve all forms across the site
   ============================================================ */

.nf-form-layout { color: #1a1a1a !important; }

.nf-form-cont {
    width: 100%;
    overflow: hidden;
}

.nf-after-form-content { margin-bottom: 24px; }

nf-field input,
nf-field textarea {
    background: #ffffff !important;
    color: #1a1a1a !important;
}

.nf-form-content input:not([type="button"]),
.nf-form-content textarea {
    border: 2px solid #123042 !important;
    border-radius: 4px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    font-size: 1rem !important;
    padding: 8px 12px !important;
    background: #ffffff !important;
    color: #1a1a1a !important;
}

.nf-form-content input:not([type="button"]):focus,
.nf-form-content input:not([type="button"]):focus-visible,
.nf-form-content textarea:focus,
.nf-form-content textarea:focus-visible {
    outline: 3px solid #ffdd00 !important;
    outline-offset: 0 !important;
    box-shadow: none !important;
    border-color: #0F4265 !important;
}

.nf-form-content .list-select-wrap .nf-field-element > div,
.nf-form-content .list-select-wrap select {
    border: 2px solid #123042 !important;
    border-radius: 4px !important;
    font-family: 'Source Sans 3', sans-serif !important;
}

.nf-error-msg,
.ninja-forms-req-symbol {
    color: #d4351c !important;
    font-weight: 700 !important;
}

#nf-field-21[type="submit"],
#nf-field-80[type="submit"] {
    color: #ffffff !important;
    background-color: #0F4265 !important;
    border: 2px solid #0F4265 !important;
    border-radius: 4px !important;
    padding: 12px 24px !important;
    font-family: 'Source Sans 3', sans-serif !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
    width: auto !important;
    display: inline-block !important;
    position: static !important;
}

#nf-field-21[type="submit"]:hover,
#nf-field-80[type="submit"]:hover {
    background-color: #123042 !important;
}

#nf-field-21[type="submit"]:focus-visible,
#nf-field-80[type="submit"]:focus-visible {
    outline: 3px solid #ffdd00 !important;
    outline-offset: 2px !important;
}


/* ============================================================
   Page: Information splash (.information-splash-page)
   ============================================================ */

.information-splash-page {
    background-color: #F6F9F7;
}

.information-splash-page .header-section {
    background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/bellsbank-housing.jpg");
    min-height: 200px;
    margin-bottom: 0;
}

.information-splash-page .title-panel {
    padding: 32px 0;
}

.information-splash-page .title-panel img {
    max-height: 313px;
    max-width: 100%;
    object-fit: contain;
}

.information-splash-page .category-search-form {
    background-color: #E0E0E0;
    padding: 16px;
    border-radius: 4px;
}

.information-splash-page .category-search-form legend {
    font-size: 1.1rem;
    margin-bottom: 12px;
}

.information-splash-page .category-search-form .search-field {
    border: 2px solid #123042;
    border-right: none;
    border-radius: 4px 0 0 4px;
    padding: 8px 16px;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
}

.information-splash-page .category-search-form .search-field:focus {
    outline: 3px solid #ffdd00;
    outline-offset: 0;
    box-shadow: none;
}

.information-splash-page .category-search-form .search-submit {
    background-color: #0F4265;
    border: 2px solid #0F4265;
    border-radius: 0 4px 4px 0;
    color: #ffffff;
    padding: 8px 16px;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.information-splash-page .category-search-form .search-submit:hover { background-color: #123042; }

.information-splash-page .category-search-form .search-submit:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
}

.information-splash-page .category-search-form .search-example-link {
    color: #0F4265;
    text-decoration: underline;
}

.information-splash-page .links-panel {
    padding-bottom: 48px;
}

.information-splash-page .links-panel .links-table-button {
    display: block;
    background-color: #ffffff;
    border: 1px solid #b0b8be;
    border-right: 4px solid #0F4265;
    border-radius: 4px 0 0 4px;
    padding: 24px;
    margin-bottom: 24px;
    color: #1a1a1a;
    text-decoration: none;
    transition: background-color 0.2s ease;
    width: 100%;
}

.information-splash-page .links-panel .links-table-button .link-table-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.1rem;
    font-weight: 700;
    color: #1a1a1a;
    gap: 12px;
}

.information-splash-page .links-panel .links-table-button .link-table-title i.fas {
    color: #0F4265;
    flex-shrink: 0;
}

.information-splash-page .links-panel .links-table-button p {
    color: #1a1a1a;
    margin-top: 12px;
    margin-bottom: 0;
    font-size: 0.95rem;
    line-height: 1.5;
}

.information-splash-page .links-panel .links-table-button:hover {
    background-color: #e8f0f8;
    text-decoration: none;
}

.information-splash-page .links-panel .links-table-button:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.information-splash-page .blog-links-panel {
    padding-bottom: 64px;
}

.information-splash-page .blog-links-panel .blog-table .row { margin-bottom: 32px; }

.information-splash-page .blog-links-panel .blog-table .blog-table-link {
    display: block;
    font-size: 1.25rem;
    font-weight: 700;
    color: #0F4265;
    text-decoration: underline;
    margin-bottom: 8px;
}

.information-splash-page .blog-links-panel .blog-table .blog-table-link:hover   { color: #123042; }
.information-splash-page .blog-links-panel .blog-table .blog-table-link:visited { color: #4c2c92; }

.information-splash-page .blog-links-panel .blog-table .blog-page-info {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    color: #555;
    margin-bottom: 12px;
}

.information-splash-page .blog-links-panel .blog-table .blog-page-info i { color: #0F4265; }
.information-splash-page .blog-links-panel .blog-table img { max-width: 100%; border-radius: 4px; }

.information-splash-page .paginate-row,
.information-splash-page .blog-pagination,
.search-results-page .paginate-row {
    margin-top: 48px;
    margin-bottom: 32px;
}

.information-splash-page .paginate-row .nav-links,
.information-splash-page .blog-pagination .nav-links,
.search-results-page .paginate-row .nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
}

.information-splash-page .paginate-row a,
.information-splash-page .paginate-row span,
.information-splash-page .blog-pagination a,
.information-splash-page .blog-pagination span,
.search-results-page .paginate-row a,
.search-results-page .paginate-row span {
    display: inline-block;
    padding: 8px 16px;
    background-color: #0F4265;
    color: #ffffff;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 700;
    border: 2px solid #0F4265;
    transition: background-color 0.2s ease;
}

.information-splash-page .paginate-row a:hover,
.information-splash-page .paginate-row span:hover,
.information-splash-page .blog-pagination a:hover,
.search-results-page .paginate-row a:hover,
.search-results-page .paginate-row span:hover {
    background-color: #123042;
    border-color: #123042;
}

.information-splash-page .paginate-row a:visited,
.information-splash-page .blog-pagination a:visited,
.search-results-page .paginate-row a:visited { color: #ffffff; }

.information-splash-page .paginate-row .current,
.information-splash-page .blog-pagination .current,
.search-results-page .paginate-row .current {
    background-color: #123042;
    border-color: #123042;
    text-decoration: underline;
}

.information-splash-page .paginate-row a:focus-visible,
.information-splash-page .blog-pagination a:focus-visible,
.search-results-page .paginate-row a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}


/* ============================================================
   Page: Content article (.content-page)
   ============================================================ */

.content-page {
    background-color: #F6F9F7;
}

.content-page .header-section {
    background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/bellsbank-housing.jpg");
    min-height: 160px;
    margin-bottom: 0;
}

.content-page .content-row {
    margin-top: 24px;
    margin-bottom: 32px;
}

.content-page .category-panel-list {
    list-style: none;
    padding: 0;
    margin-bottom: 32px;
}

.content-page .category-panel-list .category-panel-header {
    background-color: #0F4265;
    color: #ffffff;
    padding: 16px 24px;
    font-weight: 700;
    font-size: 1rem;
    font-family: 'Source Sans 3', sans-serif;
    border-radius: 4px 4px 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.content-page .category-panel-list .category-panel-header a#categoryCollapseButton {
    color: #ffffff;
    text-decoration: none;
    padding: 4px;
    background: none;
    border: none;
    cursor: pointer;
}

.content-page .category-panel-list .category-panel-header a#categoryCollapseButton:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
}

@media (min-width: 768px) {
    .content-page .category-panel-list .category-panel-header a#categoryCollapseButton { display: none; }
}

.content-page .category-panel-list .panel-li {
    padding: 12px 24px;
    border-top: 1px solid rgba(112, 112, 112, 0.2);
    border-right: 3px solid #dde3e0;
    background-color: #ffffff;
    transition: border-right-color 0.2s ease;
}

.content-page .category-panel-list .panel-li:last-child { border-radius: 0 0 4px 4px; }

.content-page .category-panel-list .panel-li.active {
    border-right-color: #123042;
    font-weight: 700;
}

.content-page .category-panel-list .panel-li a {
    color: #0F4265;
    text-decoration: none;
    display: block;
}

.content-page .category-panel-list .panel-li a:hover   { text-decoration: underline; }
.content-page .category-panel-list .panel-li a:visited { color: #4c2c92; }

.content-page .category-panel-list .panel-li a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
}

.content-page .content-column {
    background-color: #ffffff;
    border: 1px solid #dde3e0;
    border-radius: 4px;
    padding: 24px;
    margin-bottom: 48px;
}

.content-page .header-info-panel {
    margin-bottom: 16px;
    padding-bottom: 16px;
    border-bottom: 2px solid #dde3e0;
}

.content-page .header-info-panel .header-span {
    font-family: 'Lexend Deca', sans-serif;
    font-size: 1.5rem;
    font-weight: 700;
    display: block;
    color: #1a1a1a;
}

.content-page .content-list {
    border: 1px solid #b0b8be;
    padding: 16px 24px;
    background-color: #f8f9fa;
    margin-bottom: 24px;
    max-width: 50%;
    border-radius: 4px;
    list-style: none;
}

@media (max-width: 767px) {
    .content-page .content-list { max-width: 100%; }
}

.content-page .content-list a {
    color: #0F4265;
    text-decoration: underline;
}

.content-page .content-list a:hover   { color: #123042; }
.content-page .content-list a:visited { color: #4c2c92; }
.content-page .content-list li { margin-bottom: 8px; }

.content-page .content-panel {
    line-height: 1.7;
    margin-bottom: 24px;
}

.content-page .content-panel h2,
.content-page .content-panel legend {
    font-size: 1.5rem;
    margin-top: 24px;
    margin-bottom: 12px;
}

.content-page .content-panel h3 {
    font-size: 1.25rem;
    margin-top: 16px;
    margin-bottom: 8px;
}

.content-page .content-panel h4 {
    font-size: 1.1rem;
    margin-top: 16px;
    margin-bottom: 8px;
}

.content-page .content-panel a {
    color: #0F4265;
    text-decoration: underline;
}

.content-page .content-panel a:hover   { color: #123042; }
.content-page .content-panel a:visited { color: #4c2c92; }
.content-page .content-panel b,
.content-page .content-panel strong { font-weight: 700; }

.content-page .content-panel ul,
.content-page .content-panel ol {
    padding-left: 24px;
    margin-bottom: 16px;
}

.content-page .content-panel ul li,
.content-page .content-panel ol li { margin-bottom: 8px; }

.content-page .content-panel img { max-width: 100%; height: auto; }

.content-page .footer-info-panel {
    margin-top: 24px;
    font-size: 0.875rem;
    color: #555;
}

.content-page .footer-info-panel .page-info {
    border-top: 4px solid #0F4265;
    padding-top: 12px;
    padding-bottom: 12px;
    margin-bottom: 24px;
}

.content-page .footer-info-panel ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.content-page .footer-info-panel li { margin-bottom: 4px; }

.content-page .content-back-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background-color: #ffffff;
    border: 1px solid #b0b8be;
    border-left: 4px solid #0F4265;
    border-radius: 0 4px 4px 0;
    padding: 12px 24px;
    color: #1a1a1a;
    text-decoration: none;
    margin-bottom: 24px;
    font-weight: 700;
    transition: background-color 0.2s ease;
}

.content-page .content-back-link .category-name { color: #0F4265; margin-left: 8px; }

.content-page .content-back-link:hover {
    background-color: #e8f0f8;
    color: #1a1a1a;
    text-decoration: none;
}

.content-page .content-back-link:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.content-page .letter-form {
    padding: 32px;
    background-color: #f5f5f5;
    border-radius: 4px;
    margin-bottom: 24px;
    color: #1a1a1a;
}

.content-page .letter-form input,
.content-page .letter-form textarea {
    border: 2px solid #123042;
    border-radius: 4px;
    padding: 8px 12px;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    color: #1a1a1a;
}

.content-page .letter-form input:focus,
.content-page .letter-form textarea:focus {
    outline: 3px solid #ffdd00;
    outline-offset: 0;
    box-shadow: none;
    border-color: #0F4265;
}

.content-page .letter-form textarea { height: 80px; width: 100%; max-width: 350px; }
.content-page .letter-form span    { display: block; margin-bottom: 8px; }
.content-page .letter-form .recipient-address { text-align: right; margin-bottom: 24px; }
.content-page .letter-form .date              { text-align: right; margin-bottom: 48px; }
.content-page .letter-form .sender-address    { margin-bottom: 48px; }
.content-page .letter-form .letter-body .recipient-name { margin-bottom: 16px; }
.content-page .letter-form .letter-body .subject { font-size: 1.1rem; font-weight: 700; margin-bottom: 12px; }

.content-page .letter-form .submit-button { margin-top: 24px; }

.content-page .letter-form .submit-button button {
    background-color: #0F4265;
    color: #ffffff;
    font-size: 1rem;
    font-weight: 700;
    padding: 12px 24px;
    border: 2px solid #0F4265;
    border-radius: 4px;
    font-family: 'Source Sans 3', sans-serif;
    cursor: pointer;
    transition: background-color 0.2s ease;
}

.content-page .letter-form .submit-button button i { margin-left: 12px; }
.content-page .letter-form .submit-button button:hover { background-color: #123042; }

.content-page .letter-form .submit-button button:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
}


/* ============================================================
   Page: Search results (.search-results-page)
   ============================================================ */

.search-results-page .header-section {
    background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/bellsbank-housing.jpg");
    min-height: 160px;
    margin-bottom: 24px;
}

.search-results-page .search-panel {
    padding: 24px 0;
}

.search-results-page .search-panel .search-form {
    background-color: #E0E0E0;
    padding: 24px;
    border-radius: 4px;
    width: 100%;
}

.search-results-page .search-panel .search-form legend {
    font-size: 1.1rem;
    margin-bottom: 12px;
}

.search-results-page .search-panel .search-form .search-field {
    border: 2px solid #123042;
    border-right: none;
    border-radius: 4px 0 0 4px;
    padding: 8px 16px;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
}

.search-results-page .search-panel .search-form .search-field:focus {
    outline: 3px solid #ffdd00;
    outline-offset: 0;
    box-shadow: none;
}

.search-results-page .search-panel .search-form .search-submit {
    background-color: #0F4265;
    border: 2px solid #0F4265;
    border-radius: 0 4px 4px 0;
    color: #ffffff;
    padding: 8px 16px;
    cursor: pointer;
    transition: background-color 0.2s ease;
    width: auto;
}

.search-results-page .search-panel .search-form .search-submit:hover { background-color: #123042; }

.search-results-page .search-panel .search-form .search-submit:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
}

.search-results-page .search-panel .search-form .search-example-link {
    color: #0F4265;
    text-decoration: underline;
}

.search-results-page .search-result-count {
    display: block;
    margin-bottom: 16px;
    font-size: 1.05rem;
}

.search-results-page .search-result-text {
    font-size: 1.05rem;
    padding: 24px 0;
}

.search-results-page .search-result-item {
    display: block;
    padding: 16px 24px;
    border-left: 4px solid transparent;
    border-bottom: 1px solid #dde3e0;
    margin-bottom: 12px;
    text-decoration: none;
    color: #1a1a1a;
    border-radius: 0 4px 4px 0;
    transition: border-left-color 0.2s ease, background-color 0.2s ease;
}

.search-results-page .search-result-item:hover {
    border-left-color: #0F4265;
    background-color: #e8f0f8;
    text-decoration: none;
    color: #1a1a1a;
}

.search-results-page .search-result-item:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

.search-results-page .search-result-item .search-result-title {
    display: block;
    color: #0F4265;
    font-size: 1.1rem;
    font-weight: 700;
    text-decoration: underline;
    margin-bottom: 8px;
}

.search-results-page .search-result-item .search-result-category {
    float: right;
    font-size: 0.875rem;
    color: #555;
    font-weight: 400;
    margin-left: 12px;
}

.search-results-page .search-result-item .search-result-blurb {
    color: #1a1a1a;
    font-size: 0.95rem;
    clear: both;
}

.search-results-page .search-result-item .search-result-blurb p { margin-bottom: 0; }


/* ============================================================
   Page: Contact (.contact-page)
   ============================================================ */

.contact-page {
    background-color: #F6F9F7;
}

.contact-page .header-section {
    background-image: linear-gradient(rgba(0, 0, 0, 0.45), rgba(0, 0, 0, 0.45)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/ladyhill-gdns-header.jpg");
    min-height: 160px;
    margin-bottom: 24px;
}

.contact-page #map {
    height: 400px;
    width: 100%;
    border-radius: 4px;
    margin-bottom: 24px;
    border: 1px solid #b0b8be;
}

.contact-page .contact-details {
    background-color: #ffffff;
    border: 1px solid #dde3e0;
    border-left: 4px solid #0F4265;
    border-radius: 0 4px 4px 0;
    padding: 16px 24px;
}

.contact-page .contact-details p { margin-bottom: 8px; }
.contact-page .contact-details p:last-child { margin-bottom: 0; }

@media (max-width: 1199px) {
    .contact-page .map-col { margin-bottom: 32px; }
}


/* ============================================================
   Social media bar
   ============================================================ */

.social-media-panel {
    background-image: linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.55)),
                      url("/wp-content/themes/wp-chi-pilot/assets/images/old-kirk-place.jpg");
    background-size: cover;
    background-position: center;
    font-size: 0.95rem;
    font-weight: 600;
    min-height: 80px;
}

.social-media-panel a {
    color: #ffffff;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.social-media-panel a:hover   { text-decoration: underline; color: #ffffff; }
.social-media-panel a:visited { color: #ffffff; }

.social-media-panel a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px rgba(255, 221, 0, 0.4);
}

.social-media-panel a i { font-size: 1.1rem; }


/* ============================================================
   Footer
   ============================================================ */

.site-footer {
    background-color: #123042;
    color: #ffffff;
    font-size: 0.95rem;
}

.site-footer .footer-logo {
    height: 80px;
    width: auto;
    max-width: 100%;
}

.site-footer .footer-nav-list a {
    color: #ffffff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.site-footer .footer-nav-list a:hover   { text-decoration: none; color: #ffffff; }
.site-footer .footer-nav-list a:visited { color: #ffffff; }

.site-footer .footer-nav-list a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px rgba(255, 221, 0, 0.4);
}

.site-footer p a {
    color: #ffffff;
    text-decoration: none;
}

.site-footer p a:hover   { text-decoration: underline; }
.site-footer p a:visited { color: #ffffff; }


/* ============================================================
   404 / Not found page
   ============================================================ */

.not-found-page {
    padding: 64px 0;
}

.not-found-page .error-code {
    font-size: 4rem;
    font-weight: 700;
    color: #0F4265;
    line-height: 1;
    margin-bottom: 12px;
    display: block;
}

.not-found-page h1 { margin-bottom: 16px; }
.not-found-page p  { font-size: 1.1rem; margin-bottom: 16px; }

.not-found-page .back-home-link {
    display: inline-block;
    background-color: #0F4265;
    color: #ffffff;
    padding: 12px 32px;
    text-decoration: none;
    font-weight: 700;
    border-radius: 4px;
    border: 2px solid #0F4265;
    transition: background-color 0.2s ease;
}

.not-found-page .back-home-link:hover {
    background-color: #123042;
    color: #ffffff;
    text-decoration: none;
}

.not-found-page .back-home-link:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}


/* ============================================================
   WordPress core image alignment
   ============================================================ */

.wp-block-image img,
.alignnone img,
.aligncenter img,
.alignright img,
.alignleft img {
    max-width: 100%;
    height: auto;
}

.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.alignright  { float: right; margin-left: 24px; margin-bottom: 16px; }
.alignleft   { float: left; margin-right: 24px; margin-bottom: 16px; }

.wp-caption { max-width: 100%; }


/* ============================================================
   Home page: redesigned hero banner
   ============================================================ */

.home-page .home-hero {
    padding: 64px 0;
}

.home-hero-content {
    max-width: 640px;
}

.home-hero-content h1 {
    color: #ffffff;
    font-size: 2.5rem;
    margin-bottom: 8px;
    text-shadow: 0 1px 4px rgba(0, 0, 0, 0.5);
}

.home-hero-subtitle {
    color: rgba(255, 255, 255, 0.92);
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1.2rem;
    font-weight: 400;
    display: block;
    margin-bottom: 16px;
}

.home-hero-description {
    color: rgba(255, 255, 255, 0.95);
    font-size: 1.05rem;
    line-height: 1.6;
    margin-bottom: 0;
    max-width: 520px;
}

@media (max-width: 767px) {
    .home-page .home-hero { padding: 40px 0; }
    .home-hero-content     { max-width: 100%; }
    .home-hero-content h1  { font-size: 1.875rem; }
    .home-hero-description { font-size: 1rem; }
}


/* ============================================================
   Home page: user-type cards (Tenant / Landlord)
   ============================================================ */

.home-user-section {
    background-color: #ffffff;
}

.home-user-card {
    background-color: #ffffff;
    border: 1px solid #dde3e0;
    border-top: 5px solid #0F4265;
    border-radius: 0 0 4px 4px;
    padding: 28px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.home-user-card:hover {
    background-color: #f6f9f7;
}

/* Tenant — GOV.UK blue */
.home-user-card--tenant { border-top-color: #1d70b8; }

/* Landlord — GOV.UK green */
.home-user-card--landlord { border-top-color: #00703c; }

.home-user-card-icon {
    font-size: 2.25rem;
    color: #0F4265;
    margin-bottom: 16px;
}

.home-user-card--tenant  .home-user-card-icon { color: #1d70b8; }
.home-user-card--landlord .home-user-card-icon { color: #00703c; }

.home-user-card-title {
    font-size: 1.375rem;
    margin-bottom: 12px;
    color: #1a1a1a;
}

.home-user-card-blurb {
    color: #1a1a1a;
    line-height: 1.6;
    flex: 1;
    margin-bottom: 24px;
}

.home-user-card-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    align-self: flex-start;
    background-color: #0F4265;
    border: 2px solid #0F4265;
    border-radius: 4px;
    color: #ffffff;
    font-family: 'Source Sans 3', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    padding: 12px 24px;
    text-decoration: none;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.home-user-card--tenant  .home-user-card-link { background-color: #1d70b8; border-color: #1d70b8; }
.home-user-card--landlord .home-user-card-link { background-color: #00703c; border-color: #00703c; }

.home-user-card-link:hover {
    background-color: #123042;
    border-color: #123042;
    color: #ffffff;
    text-decoration: none;
}

.home-user-card--tenant  .home-user-card-link:hover { background-color: #144a7c; border-color: #144a7c; }
.home-user-card--landlord .home-user-card-link:hover { background-color: #005a30; border-color: #005a30; }

.home-user-card-link:visited { color: #ffffff; }

.home-user-card-link:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #1a1a1a;
}

.home-user-card-link i { flex-shrink: 0; }


/* ============================================================
   Home page: quick-link blurb text
   ============================================================ */

.home-page .button-table .home-link-button .quick-link-blurb {
    display: block;
    font-size: 0.9rem;
    font-weight: 400;
    color: #555;
    margin-top: 8px;
    line-height: 1.5;
}


/* ============================================================
   News card: text-only variant (no featured image)
   When a post has no thumbnail the image wrapper is omitted and
   the blue accent moves to the card's outer top border instead.
   ============================================================ */

.news-card--no-image {
    border-top: 3px solid #0F4265;
}

.news-card--no-image .news-card-body {
    border-top: none;
}


/* ============================================================
   Category colour themes: Tenant / Landlord
   WordPress body_class() outputs category-{slug} on every
   archive page and every single post within that category,
   so these rules cascade automatically to all pages in each
   section without any PHP changes.
   ============================================================ */

/* --- Page header: coloured accent stripe at the foot of the hero --- */
.category-tenant-information .header-section,
.category-landlord-information .header-section {
    border-bottom: 4px solid transparent;
}

.category-tenant-information  .header-section { border-bottom-color: #1d70b8; }
.category-landlord-information .header-section { border-bottom-color: #00703c; }


/* --- Sidebar navigation panel --- */
.category-tenant-information  .category-panel-list .category-panel-header { background-color: #1d70b8; }
.category-landlord-information .category-panel-list .category-panel-header { background-color: #00703c; }

.category-tenant-information  .category-panel-list .panel-li.active { border-right-color: #144a7c; }
.category-landlord-information .category-panel-list .panel-li.active { border-right-color: #005a30; }

.category-tenant-information  .category-panel-list .panel-li a { color: #1d70b8; }
.category-landlord-information .category-panel-list .panel-li a { color: #00703c; }


/* --- Content article page: accents, links, back button --- */
.category-tenant-information  .content-page .footer-info-panel .page-info { border-top-color: #1d70b8; }
.category-landlord-information .content-page .footer-info-panel .page-info { border-top-color: #00703c; }

.category-tenant-information  .content-page .content-back-link { border-left-color: #1d70b8; }
.category-landlord-information .content-page .content-back-link { border-left-color: #00703c; }

.category-tenant-information  .content-page .content-back-link .category-name { color: #1d70b8; }
.category-landlord-information .content-page .content-back-link .category-name { color: #00703c; }

.category-tenant-information  .content-page .content-panel a { color: #1d70b8; }
.category-landlord-information .content-page .content-panel a { color: #00703c; }

.category-tenant-information  .content-page .content-panel a:hover { color: #144a7c; }
.category-landlord-information .content-page .content-panel a:hover { color: #005a30; }


/* --- Information splash (category landing) page: link buttons --- */
.category-tenant-information  .information-splash-page .links-panel .links-table-button { border-right-color: #1d70b8; }
.category-landlord-information .information-splash-page .links-panel .links-table-button { border-right-color: #00703c; }

.category-tenant-information  .information-splash-page .links-panel .links-table-button:hover { border-right-color: #144a7c; }
.category-landlord-information .information-splash-page .links-panel .links-table-button:hover { border-right-color: #005a30; }

.category-tenant-information  .information-splash-page .links-panel .links-table-button .link-table-title i { color: #1d70b8; }
.category-landlord-information .information-splash-page .links-panel .links-table-button .link-table-title i { color: #00703c; }


/* --- Information splash page: article links and metadata icons --- */
.category-tenant-information  .information-splash-page .blog-links-panel .blog-table .blog-table-link { color: #1d70b8; }
.category-landlord-information .information-splash-page .blog-links-panel .blog-table .blog-table-link { color: #00703c; }

.category-tenant-information  .information-splash-page .blog-links-panel .blog-table .blog-table-link:hover { color: #144a7c; }
.category-landlord-information .information-splash-page .blog-links-panel .blog-table .blog-table-link:hover { color: #005a30; }

.category-tenant-information  .information-splash-page .blog-links-panel .blog-table .blog-page-info i { color: #1d70b8; }
.category-landlord-information .information-splash-page .blog-links-panel .blog-table .blog-page-info i { color: #00703c; }


/* --- Information splash page: pagination --- */
.category-tenant-information  .information-splash-page .paginate-row a,
.category-tenant-information  .information-splash-page .paginate-row span,
.category-tenant-information  .information-splash-page .blog-pagination a,
.category-tenant-information  .information-splash-page .blog-pagination span {
    background-color: #1d70b8;
    border-color: #1d70b8;
}

.category-landlord-information .information-splash-page .paginate-row a,
.category-landlord-information .information-splash-page .paginate-row span,
.category-landlord-information .information-splash-page .blog-pagination a,
.category-landlord-information .information-splash-page .blog-pagination span {
    background-color: #00703c;
    border-color: #00703c;
}

.category-tenant-information  .information-splash-page .paginate-row a:hover,
.category-tenant-information  .information-splash-page .blog-pagination a:hover {
    background-color: #144a7c;
    border-color: #144a7c;
}

.category-landlord-information .information-splash-page .paginate-row a:hover,
.category-landlord-information .information-splash-page .blog-pagination a:hover {
    background-color: #005a30;
    border-color: #005a30;
}

.category-tenant-information  .information-splash-page .paginate-row .current,
.category-tenant-information  .information-splash-page .blog-pagination .current {
    background-color: #144a7c;
    border-color: #144a7c;
}

.category-landlord-information .information-splash-page .paginate-row .current,
.category-landlord-information .information-splash-page .blog-pagination .current {
    background-color: #005a30;
    border-color: #005a30;
}


/* --- Information splash page: category search submit button --- */
.category-tenant-information  .information-splash-page .category-search-form .search-submit {
    background-color: #1d70b8;
    border-color: #1d70b8;
}

.category-landlord-information .information-splash-page .category-search-form .search-submit {
    background-color: #00703c;
    border-color: #00703c;
}

.category-tenant-information  .information-splash-page .category-search-form .search-submit:hover { background-color: #144a7c; }
.category-landlord-information .information-splash-page .category-search-form .search-submit:hover { background-color: #005a30; }


/* ============================================================
   News listing page: intro panel
   White panel with a bottom border separates the hero context
   from the article list without relying on a bare <hr>.
   ============================================================ */

.information-splash-page .news-intro-panel {
    background-color: #ffffff;
    padding: 32px 0;
    border-bottom: 3px solid #0F4265;
}

.news-intro-heading {
    font-size: 1.5rem;
    margin-bottom: 8px;
}

.news-intro-desc {
    color: #1a1a1a;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 0;
}


/* ============================================================
   News listing page: article cards
   ============================================================ */

.news-listing-item {
    background-color: #ffffff;
    border: 1px solid #dde3e0;
    border-left: 5px solid #0F4265;
    border-radius: 0 4px 4px 0;
    padding: 24px 32px;
    margin-bottom: 12px;
    transition: background-color 0.2s ease, border-left-color 0.2s ease;
}

.news-listing-item:hover {
    background-color: #f6f9f7;
    border-left-color: #123042;
}

.news-listing-date {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    font-style: normal;
    color: #555;
    margin-bottom: 10px;
}

.news-listing-date i { color: #0F4265; }

.news-listing-title {
    font-size: 1.2rem;
    line-height: 1.35;
    margin-bottom: 12px;
}

.news-listing-title a {
    color: #1a1a1a;
    text-decoration: none;
    display: inline-flex;
    align-items: baseline;
    gap: 10px;
}

.news-listing-title a:hover {
    color: #0F4265;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.news-listing-title a:visited { color: #4c2c92; }

.news-listing-title a:focus-visible {
    outline: 3px solid #ffdd00;
    outline-offset: 2px;
    box-shadow: 0 0 0 6px #0F4265;
}

/* Decorative arrow — nudges right on card hover */
.news-listing-arrow {
    font-size: 0.8em;
    color: #0F4265;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.news-listing-item:hover .news-listing-arrow {
    transform: translateX(4px);
}

.news-listing-excerpt {
    color: #1a1a1a;
    font-size: 0.975rem;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Category colour carry-through on listing items */
.category-tenant-information  .news-listing-item { border-left-color: #1d70b8; }
.category-landlord-information .news-listing-item { border-left-color: #00703c; }

.category-tenant-information  .news-listing-item:hover { border-left-color: #144a7c; }
.category-landlord-information .news-listing-item:hover { border-left-color: #005a30; }

.category-tenant-information  .news-listing-date i { color: #1d70b8; }
.category-landlord-information .news-listing-date i { color: #00703c; }

.category-tenant-information  .news-listing-title a:hover { color: #1d70b8; }
.category-landlord-information .news-listing-title a:hover { color: #00703c; }

.category-tenant-information  .news-listing-arrow { color: #1d70b8; }
.category-landlord-information .news-listing-arrow { color: #00703c; }
