/* Cross-page surfaces for archives, singles, forms, search, responsive states, and mobile overlays. */

/* Archive, search, and listing surfaces */
.archive-page {
    background: var(--light-gray);
    padding-top: var(--ds-space-6);
}

.archive-header h1,
.question_page_info h1 {
    text-align: left;
}

.archive-header p,
.question_page_info p {
    max-width: 570px;
    margin: var(--ds-space-3) 0 var(--ds-space-2);
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
    color: var(--ds-color-text-body);
}

h2.archive_featured_article_title {
    position: relative;
    z-index: 11;
    font-weight: 600;
    font-size: var(--ds-heading-h2-size);
    margin-bottom: var(--ds-space-5);
    line-height: 120%;
    letter-spacing: -0.24px;

}

h2.archive_featured_article_title span {
    background-color: var(--ds-color-bg-surface);
    position: relative;
    padding-right: 5px;
}

h2.archive_featured_article_title::before {
    content: '';
    background: var(--ds-color-brand-accent);
    height: 1px;
    position: absolute;
    top: 22px;
    width: 100%;
    left: 0;
    z-index: 0;
}

.archive-toolbar {
    margin-bottom: var(--ds-space-8);
}

.archive-controls-shell {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    padding: var(--ds-space-inset-lg);
    box-shadow: var(--ds-shadow-sm);
}

.archive-search-wrap {
    flex: 1;
}

.archive-search {
    width: 100%;
    min-height: 44px;
    border-radius: var(--ds-radius-md);
}

.archive-count {
    display: block;
    margin-top: var(--ds-space-2);
    font-size: var(--ds-font-size-sm);
    color: var(--ds-color-text-muted);
}

input.archive-search.ds-c-input {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
}

.archive-toolbar__meta {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ds-space-gap-lg);
}

.archive-page-label {
    display: block;
    margin-top: var(--ds-space-2);
    font-size: var(--ds-font-size-sm);
    color: var(--ds-color-text-muted);
    white-space: nowrap;
}

.archive-filter-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ds-space-gap-sm, var(--ds-space-2));
    margin: var(--ds-space-3) 0 0;
    padding: 0;
    list-style: none;
}

.archive-filter-chips__item {
    margin: 0;
}

.archive-filter-chip.ds-c-pill {
    gap: var(--ds-space-2);
    text-transform: none;
    letter-spacing: normal;
    cursor: pointer;
}

.archive-filter-chip__remove {
    font-weight: 700;
    line-height: 1;
}

.archive-actions {
    display: flex;
    align-items: center;
    gap: var(--ds-space-gap-lg);
    flex-wrap: wrap;
}

.archive-sort {
    display: flex;
    align-items: center;
    gap: var(--ds-space-2);
    font-size: var(--ds-font-size-sm);
    color: var(--ds-color-text-body);
}

.archive-sort span {
    min-width: 50px;
}

.archive-sort select {
    height: 36px;
    font-size: var(--ds-font-size-sm);
}

.archive-view {
    display: flex;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    overflow: hidden;
    background-color: var(--ds-color-bg-canvas);
    padding: var(--ds-space-1);
    gap: var(--ds-space-1);
}

.archive-grid.is-loading {
    opacity: 0.5;
    pointer-events: none;
}

.archive-grid.list-view {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-5);
}

.archive-grid.list-view .article-card .d-flex {
    margin-top: 0;
    padding: var(--ds-space-4) var(--ds-space-5);
}

.archive-grid.list-view .article-card {
    display: flex;
    flex-direction: row;
    align-items: center;
}

.archive-grid.list-view .article-card img {
    width: 350px;
    height: 100%;
}

.archive-grid.list-view .article-card__body {
    padding: var(--ds-space-5);
    flex-grow: 1;
}

.view-btn {
    width: 36px;
    height: 36px;
    background: var(--ds-color-bg-surface);
    border: none;
    font-size: 16px;
    color: var(--ds-color-text-body);
    cursor: pointer;
}

.view-btn.active {
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-strong);
}

.featured-card {
    background: var(--ds-color-bg-surface);
    border-radius: var(--ds-radius-xl);
    overflow: hidden;
    box-shadow: var(--ds-shadow-md);
    margin-bottom: var(--ds-space-section-sm);
}

.featured-image img {
    min-height: 100%;
    object-position: center;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.featured-content {
    padding: var(--ds-space-10);
}

.featured-content h2 {
    font-size: 26px;
    line-height: 1.35;
}

.featured-archive_featured .fa-main-content.ds-c-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-sm);
}

/* Keep the featured image panel aligned with the full-height card body. */
.featured-archive_featured .featured_image,
.featured-archive_featured .featured_image > .fa-main {
    width: 100%;
}

.featured-archive_featured .fa-main {
    min-width: 0;
}

.featured-archive_featured .fa-main-image {
    display: flex;
    height: 100%;
}

.featured-archive_featured .fa-main-image a,
.featured-archive_featured .fa-main-image img {
    display: block;
    width: 100%;
    height: 100%;
}

.featured-archive_featured .fa-main-image img {
    /* WordPress attachment markup can include an inline percentage height. */
    height: 100% !important;
    object-fit: cover;
}

.featured-archive_featured .fa-main-content .ds-c-card__title,
.featured-archive_featured .fa-main-content .ds-c-card__title a.ds-c-link {
    margin: 0;
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    color: var(--ds-color-text-heading);
}

.featured-archive_featured .fa-main-content .ds-c-card__excerpt {
    margin: 0;
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

.featured-archive_featured .fa-main-content .fa-meta.ds-c-meta {
    margin-top: var(--ds-space-stack-lg);
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

.archive-body {
    margin-top: var(--ds-space-4);
}

.search-results-page {
    --search-results-suggestion-max-height: calc(var(--ds-space-1) * 56);
    --search-results-card-gap: var(--ds-space-gap-lg);
    --search-results-card-title-size: var(--ds-heading-h3-size);
    --search-results-card-title-line: var(--ds-heading-h3-line-height);
    --search-results-card-body-size: var(--ds-font-size-body-md);
    --search-results-card-body-line: var(--ds-type-body-md-line-height);
    --search-results-card-image-height: calc(var(--ds-space-1) * 51);
    --search-results-card-image-height-mobile: calc(var(--ds-space-1) * 49);
    --search-results-card-hover-lift: calc(var(--ds-space-1) * -1);
    --search-results-book-image-padding-block: calc(var(--ds-space-2) + (var(--ds-space-1) * 0.5));
    --search-results-book-body-padding-top: calc(var(--ds-space-1) * 0.25);
    --search-results-book-body-padding-bottom: var(--ds-space-1);
    --search-results-card-gap-inline-compact: calc(var(--ds-space-2) + (var(--ds-space-1) * 0.5));
    --search-results-qa-body-gap-block: calc(var(--ds-space-4) - (var(--ds-space-1) * 0.25));
    --search-results-qa-content-gap-block: calc(var(--ds-space-2) - (var(--ds-space-1) * 0.5));
    --search-results-article-padding-block: calc(var(--ds-space-4) + (var(--ds-space-1) * 0.5));
    --search-results-article-padding-inline: calc(var(--ds-space-4) - (var(--ds-space-1) * 0.25));
    padding-bottom: var(--ds-space-section-md);
}

.search-results-page__header {
    display: flex;
    justify-content: space-between;
    align-items: end;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-lg);
    margin-bottom: var(--ds-space-8);
    text-align: left;
}

.search-results-page__intro {
    display: grid;
    gap: var(--ds-space-stack-sm);
}

.search-results-page__header h1,
.search-results-page__header p,
.search-results-page__count,
.search-results-page__sort-copy {
    margin: 0;
}

.search-results-page__eyebrow {
    font-size: var(--ds-font-size-overline);
    line-height: var(--ds-type-overline-line-height);
    letter-spacing: var(--ds-type-overline-letter-spacing);
    text-transform: uppercase;
    color: var(--ds-color-brand-accent-deep);
    font-weight: var(--ds-font-weight-semibold);
}

.search-results-page__header p {
    max-width: 42rem;
}

.search-results-page__term {
    color: var(--ds-color-text-heading);
    font-weight: var(--ds-font-weight-semibold);
}

.search-results-page__meta {
    display: grid;
    gap: var(--ds-space-stack-xs);
    justify-items: end;
}

.search-results-page__count {
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

.search-results-page__sort-copy,
.search-results-page__results-header p,
.search-results-page__empty p {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.search-results-page__main {
    display: grid;
    gap: var(--ds-space-gap-lg);
}

.search-results-page__controls {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--ds-space-gap-md);
    align-items: end;
}

.search-results-page__search,
.search-results-page__sort {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
    padding: var(--ds-space-inset-lg);
    display: grid;
    gap: var(--ds-space-stack-sm);
}

.search-results-page__search {
    margin-bottom: 0;
}

.search-results-page__field-label {
    margin-bottom: 0;
}

.search-results-page__sort {
    width: 100%;
}

.search-results-page form.archive-sort-form.search-results-page__sort {
    display: grid;
    align-items: stretch;
    gap: var(--ds-space-stack-sm);
}

.search-results-page__sort .ds-c-select {
    width: 100%;
}

.search-results-page__results {
    display: grid;
    gap: var(--ds-space-gap-md);
}

.search-results-page__result-group {
    display: grid;
    gap: var(--ds-space-gap-md);
}

.search-results-page__result-group + .search-results-page__result-group {
    padding-top: var(--ds-space-section-sm);
}

.search-results-page__results-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: var(--ds-space-gap-md);
    padding-bottom: var(--ds-space-4);
    border-bottom: 1px solid var(--ds-color-border-default);
}

.search-results-page__results-copy {
    display: grid;
    gap: var(--ds-space-stack-xs);
}

.search-results-page__results-header h2,
.search-results-page__empty-title {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
    color: var(--ds-color-text-heading);
}

.search-results-page .archive-grid {
    margin-top: 0;
    margin-bottom: 0;
    gap: var(--search-results-card-gap);
}

.search-results-page .search-results-page__grid--articles {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.search-results-page .search-results-page__grid--qa.archive-grid[attr="qa"] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 0;
}

.search-results-page .search-results-page__grid--books {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.search-results-page__grid--books .home-book-card {
    display: flex;
    width: 100%;
    max-width: calc(var(--ds-space-1) * 67.75);
    min-width: 0;
    margin: 0 auto;
    padding: 0;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-md);
    transition: transform var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

.search-results-page__grid--books .home-book-card:hover,
.search-results-page__grid--books .home-book-card:focus-within {
    transform: translateY(var(--search-results-card-hover-lift));
    border-color: var(--ds-color-border-warning);
    box-shadow: var(--ds-shadow-lg);
}

@media (prefers-reduced-motion: reduce) {
    .search-results-page__grid--books .home-book-card {
        transition: none;
    }

    .search-results-page__grid--books .home-book-card:hover,
    .search-results-page__grid--books .home-book-card:focus-within {
        transform: none;
    }
}

.search-results-page__grid--books .home-book-card__image-link {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--ds-space-1) * 102.5);
    padding: 0;
    overflow: hidden;
    background: var(--ds-color-bg-surface-muted);
}

.search-results-page__grid--books .book-card__image,
.search-results-page__grid--books .book-image {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100%;
    max-height: 100%;
    padding: var(--search-results-book-image-padding-block) 0;
    border-radius: var(--ds-radius-lg) var(--ds-radius-lg) 0 0;
    background: transparent;
    object-fit: contain;
    object-position: center;
}

.archive-page.search-results-page .search-results-page__grid--books .book-image {
    padding: var(--search-results-book-image-padding-block) 0;
}

.search-results-page__grid--books .book-card__body {
    display: flex;
    flex: 1;
    align-items: flex-start;
    padding: var(--search-results-book-body-padding-top) var(--ds-space-4) var(--search-results-book-body-padding-bottom);
}

.search-results-page__grid--books .book-title,
.search-results-page__grid--books .book-title a {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
}

.search-results-page__grid--books .book-title a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    letter-spacing: normal;
}

@media (max-width: 991.98px) {
    .search-results-page .search-results-page__grid--books {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.search-results-page__grid .article-card,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-md);
    overflow: hidden;
    transition: transform var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

.search-results-page__grid .article-card:hover,
.search-results-page__grid .article-card:focus-within,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card:hover,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card:focus-within {
    transform: translateY(var(--search-results-card-hover-lift));
    box-shadow: var(--ds-shadow-lg);
    border-color: var(--ds-color-border-warning);
}

.search-results-page__grid .article-card .ds-c-card__image {
    position: relative;
}

.search-results-page__grid .article-card__image a {
    display: block;
    width: 100%;
}

.search-results-page__grid .article-card img {
    display: block;
    width: 100%;
    height: var(--search-results-card-image-height);
    object-fit: cover;
}

.search-results-page__grid .article-card__body,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-4);
}

.archive-page.search-results-page .search-results-page__grid--articles .article-card .article-card__body.ds-c-card__body {
    padding: var(--search-results-article-padding-block) var(--search-results-article-padding-inline);
}

.search-results-page .search-results-page__grid--qa.archive-grid[attr="qa"] .qa-card .qa-card__body.ds-c-card__body {
    row-gap: var(--search-results-qa-body-gap-block);
    column-gap: var(--search-results-card-gap-inline-compact);
}

.search-results-page .search-results-page__grid--qa.archive-grid[attr="qa"] .qa-card .qa-card__content {
    row-gap: var(--search-results-qa-content-gap-block);
    column-gap: var(--search-results-card-gap-inline-compact);
}

.search-results-page__grid .article-card__categories,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__taxonomy {
    display: flex;
    gap: var(--ds-space-gap-sm);
    flex-wrap: nowrap;
    align-items: center;
    overflow: hidden;
    min-height: var(--ds-pill-height-sm);
}

.search-results-page__grid .article-card__categories::-webkit-scrollbar,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__taxonomy::-webkit-scrollbar {
    display: none;
}

.search-results-page__grid .article-card .ds-c-pill,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
}

.archive-page.search-results-page .search-results-page__grid--articles .article-card .article-card__categories .ds-c-pill {
    font-size: var(--ds-font-size-2xs);
}

.search-results-page__grid.archive-grid[attr="qa"] .qa-card .ds-c-pill {
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

.search-results-page__grid .article-card__title,
.search-results-page__grid .article-card__title a,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__title,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__title a {
    margin: 0;
    font-size: var(--search-results-card-title-size);
    line-height: var(--search-results-card-title-line);
}

.search-results-page__grid .article-card__title a,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__title a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.archive-page.search-results-page .search-results-page__grid--articles .article-card .article-card__title.ds-c-card__title,
.archive-page.search-results-page .search-results-page__grid--articles .article-card .article-card__title.ds-c-card__title a.ds-c-link {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
}

.search-results-page__grid .article-card__excerpt,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__excerpt {
    margin: 0;
    font-size: var(--search-results-card-body-size);
    line-height: var(--search-results-card-body-line);
    color: var(--ds-color-text-body);
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.archive-page.search-results-page .search-results-page__grid--articles .article-card .article-card__excerpt.ds-c-card__excerpt {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.search-results-page__grid .article-card__meta,
.search-results-page__grid .article-card__meta.ds-c-meta,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__meta,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card__meta.ds-c-meta {
    display: flex;
    justify-content: flex-start;
    margin-top: auto;
    padding-top: 0;
}

.search-results-page__grid .article-card .read-link,
.search-results-page__grid.archive-grid[attr="qa"] .qa-card .read-link {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.search-results-page__empty {
    display: grid;
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-inset-xl);
    border: 1px solid var(--ds-color-border-default);
    box-shadow: var(--ds-shadow-sm);
}

.search-results-page__result-group .ds-c-pagination {
    margin-top: 0;
}

.archive-filters {
    background: var(--ds-color-bg-surface);
    padding: var(--ds-space-8);
    border-radius: var(--ds-radius-lg);
    border: 1px solid var(--ds-color-border-default);
}

.filter-title {
    font-size: var(--ds-font-size-sm);
    font-weight: 600;
}

.archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: var(--ds-space-gap-xl);
    margin-top: var(--ds-space-section-sm);
}

.archive-grid.related-articles-grid {
    grid-template-columns: 1fr;
    gap: var(--ds-space-gap-lg);
}

@media (min-width: 768px) {
    .archive-grid.related-articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.related-articles-grid .related-article-item {
    display: flex;
}

.related-articles-grid .article-card.ds-c-card {
    container-type: inline-size;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-md);
    overflow: visible;
    transition: transform var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

.related-articles-grid .article-card.ds-c-card:hover,
.related-articles-grid .article-card.ds-c-card:focus-within {
    transform: translateY(calc(var(--ds-space-1) * -1));
    box-shadow: var(--ds-shadow-lg);
    border-color: var(--ds-color-border-warning);
}

.related-articles-grid .article-card .ds-c-card__image {
    position: relative;
}

.related-articles-grid .article-card__image a {
    display: block;
    width: 100%;
}

.related-articles-grid .article-card .ds-c-card__image img {
    display: block;
    width: 100%;
    height: calc(var(--ds-space-1) * 51);
    object-fit: cover;
}

.related-articles-grid .article-card--book .article-card__image a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--ds-space-1) * 51);
    padding: var(--ds-space-4);
    background: var(--ds-color-bg-surface-muted);
}

.related-articles-grid .article-card--book .ds-c-card__image img.article-card__media--book {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

body.single-post .related-articles-grid .article-card .article-card__body,
body.single-post .related-articles-grid .article-card .ds-c-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    height: 100%;
    padding: var(--ds-space-4);
}

body.single-post .related-articles-grid .article-card .article-card__categories,
body.single-post .related-articles-grid .article-card__categories {
    margin-bottom: 0;
    display: flex;
    gap: var(--ds-space-gap-sm);
    flex-wrap: nowrap;
    align-items: center;
    overflow: hidden;
    min-height: var(--ds-pill-height-sm);
}

.related-articles-grid .article-card .ds-c-card__title {
    margin: 0;
}

.related-articles-grid .article-card .ds-c-card__title a.ds-c-link {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    font-size: var(--ds-heading-h4-size) !important;
    line-height: var(--ds-heading-h4-line-height) !important;
    font-weight: var(--ds-heading-h4-weight) !important;
    font-family: var(--ds-font-family-heading) !important;
}

.related-articles-grid .article-card .ds-c-card__excerpt {
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: var(--ds-font-size-body-sm) !important;
    line-height: var(--ds-type-body-sm-line-height) !important;
    min-height: calc(var(--ds-font-size-body-sm) * var(--ds-type-body-sm-line-height) * 4);
    color: var(--ds-color-text-body);
}

.related-articles-grid .article-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

.related-articles-grid .article-card .read-link {
    font-size: var(--ds-font-size-body-sm) !important;
    line-height: var(--ds-type-body-sm-line-height) !important;
}

.related-articles-grid .article-card .fa-card-meta {
    margin-top: 0;
    padding-top: 0;
}

body.single-post .related-articles-grid .article-card .article-card__meta,
body.single-post .related-articles-grid .article-card .article-card__meta.ds-c-meta,
body.single-post .related-articles-grid .article-card__meta,
body.single-post .related-articles-grid .article-card__meta.ds-c-meta {
    display: flex;
    justify-content: flex-start;
    margin-top: 0;
    padding-top: 0;
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

@media (max-width: 767.98px) {
    .related-articles-grid .article-card .ds-c-card__image img {
        height: calc(var(--ds-space-1) * 49);
    }

    .related-articles-grid .article-card .ds-c-card__excerpt {
        min-height: auto;
    }
}

.releted_post_info h4 {
    margin: 0;
}

.article-toolbar {
    background: var(--ds-color-bg-surface);
}

.ds-c-article-toolbar {
    border-bottom: 1px solid var(--ds-color-border-default);
    padding: var(--ds-space-4) 0;
}

.ds-c-article-toolbar__inner {
    display: flex;
    align-items: center;
}

.ds-c-article-back-link {
    display: inline-flex;
    align-items: center;
    gap: var(--ds-space-2);
    color: var(--ds-color-link);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    text-decoration: none;
}

.ds-c-article-back-link:hover,
.ds-c-article-back-link:focus-visible {
    color: var(--ds-color-link-hover);
    text-decoration: underline;
}

.ds-c-read-mode-toggle {
    display: inline-flex;
    align-items: center;
    gap: var(--ds-space-2);
    margin-left: auto;
    padding: var(--ds-space-1) var(--ds-space-3);
    min-height: 44px;
    background: transparent;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-sm);
    color: var(--ds-color-link);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    cursor: pointer;
}

.ds-c-read-mode-toggle:hover,
.ds-c-read-mode-toggle:focus-visible {
    color: var(--ds-color-link-hover);
    background: var(--ds-color-bg-surface-muted);
}

.ds-c-read-mode-toggle[aria-pressed="true"] {
    color: var(--ds-color-bg-surface);
    background: var(--ds-color-link);
    border-color: var(--ds-color-link);
}

/* Read Mode — distraction-free article view (Yaqeen-style single reading column) */
.ds-c-article-page:has(.is-read-mode) .col-lg-4 {
    display: none;
}

@media (min-width: 992px) {
    .ds-c-article-page:has(.is-read-mode) .col-lg-8 {
        width: 100%;
    }
}

#main-article-content.is-read-mode .ds-c-article-shell__body {
    max-width: 760px;
    margin-inline: auto;
}

body.single-post #main-article-content.is-read-mode .details-artical,
body.single-post #main-article-content.is-read-mode .ds-c-rich-text {
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

.article-actions .btn {
    border-radius: var(--ds-radius-sm);
}

.article-actions .btn i {
    color: var(--ds-color-text-body);
}

.article-actions .btn:hover {
    background: var(--ds-color-bg-surface-muted);
}

@media (min-width: 1400px) {
    .archive-grid {
        grid-template-columns: repeat(auto-fill, minmax(460px, 1fr));
    }
}

body:not(.home) .article-card {
    background: var(--ds-color-bg-surface);
    border-radius: var(--ds-radius-lg);
    position: relative;
    overflow: hidden;
    box-shadow: var(--card-shadow);
    transition: var(--transition);
}

body:not(.home) .article-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--hover-shadow);
}

.article-details-wrapper {
    background-color: var(--light-gray);
    padding: var(--ds-space-section-sm) 0 var(--ds-space-section-lg);
}

.ds-c-article-shell {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-xl);
    box-shadow: var(--ds-shadow-sm);
    padding: var(--ds-space-inset-xl);
}

.ds-c-article-shell__body {
    display: grid;
    gap: var(--ds-space-stack-lg);
}

.ds-c-article-shell__body > * {
    min-width: 0;
}

.ds-c-article-title {
    margin: 0;
    max-width: 100%;
    font-size: var(--ds-heading-h1-size);
    line-height: var(--ds-heading-h1-line-height);
    font-weight: var(--ds-heading-h1-weight);
    color: var(--ds-color-text-heading);
    overflow-wrap: anywhere;
}

.ds-c-article-author__media {
    display: flex;
    align-items: flex-start;
    gap: var(--ds-space-gap-md);
}

.ds-c-article-author__avatar {
    width: 4rem;
    height: 4rem;
    flex: 0 0 4rem;
    border-radius: 50%;
    object-fit: cover;
}

.ds-c-article-author__copy {
    display: grid;
    gap: var(--ds-space-stack-xs);
}

.ds-c-article-author__name {
    margin: 0;
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    color: var(--ds-color-text-strong);
}

.ds-c-article-author__role {
    margin: 0;
    color: var(--ds-color-text-muted);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.ds-c-article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.ds-c-article-meta__item {
    display: inline-flex;
    align-items: center;
    gap: var(--ds-space-2);
}

.ds-c-article-meta__item svg {
    flex: 0 0 auto;
}

.ds-c-article-meta__item--translation {
    margin-inline-start: var(--ds-space-1);
}

.ds-c-translation-badge {
    letter-spacing: 0.04em;
}

.ds-c-article-taxonomy {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

.ds-c-article-taxonomy .ds-c-pill {
    margin: 0;
}

.ds-c-article-hero {
    overflow: hidden;
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface-muted);
}

.ds-c-article-hero img {
    display: block;
    width: 100%;
    /* Ported from production Additional CSS: closes the gap below the hero image. */
    height: 100%;
    object-fit: cover;
}

body.single-books .ds-c-article-hero--book {
    display: flex;
    justify-content: center;
    padding: var(--ds-space-inset-md);
}

body.single-books .ds-c-book-cover-image {
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
}

body.single-books .ds-c-book-detail__eyebrow {
    margin-bottom: var(--ds-space-stack-sm);
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-overline);
    letter-spacing: var(--ds-type-overline-letter-spacing);
    text-transform: uppercase;
}

body.single-books .ds-c-book-detail__summary {
    margin-bottom: var(--ds-space-stack-md);
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

body.single-books .ds-c-book-detail__cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    max-width: min(100%, calc(var(--ds-space-1) * 96));
    padding: var(--ds-space-3) var(--ds-space-4);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-brand-accent);
    color: var(--ds-color-text-on-accent);
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-semibold);
    line-height: var(--ds-line-height-normal);
    text-align: center;
    text-decoration: none;
    box-shadow: var(--ds-shadow-sm);
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard), transform var(--ds-motion-fast) var(--ds-ease-standard);
}

body.single-books .ds-c-book-detail__cta:hover,
body.single-books .ds-c-book-detail__cta:focus-visible {
    background: var(--ds-color-brand-accent-deep);
    color: var(--ds-color-text-on-accent);
    transform: translateY(calc(var(--ds-space-1) * -0.5));
}

body.single-books .ds-c-book-detail__cta:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

body.single-books #course_wrapper a.btn.btn-primary {
    all: unset;
}

body.single-books #course_wrapper a.btn.btn-primary:hover,
body.single-books #course_wrapper a.btn.btn-primary:focus-visible {
    all: unset;
}

body.single-books #course_wrapper a.btn.btn-primary:focus-visible {
    all: unset;
}

.ds-c-rich-text {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

#main-article-content .details-artical,
#main-article-content .ds-c-rich-text {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    overflow-wrap: anywhere;
    word-break: break-word;
}

#main-article-content .details-artical p,
#main-article-content .ds-c-rich-text p {
    color: var(--ds-color-text-body);
    font-size: inherit;
    line-height: inherit;
    margin-bottom: var(--ds-space-stack-lg);
}

#main-article-content .details-artical h2,
#main-article-content .details-artical h3,
#main-article-content .details-artical h4,
#main-article-content .ds-c-rich-text h2,
#main-article-content .ds-c-rich-text h3,
#main-article-content .ds-c-rich-text h4 {
    margin-top: var(--ds-space-section-sm);
    margin-bottom: var(--ds-space-stack-md);
    color: var(--ds-color-text-heading);
}

#main-article-content .details-artical ul,
#main-article-content .details-artical ol,
#main-article-content .ds-c-rich-text ul,
#main-article-content .ds-c-rich-text ol {
    margin-bottom: var(--ds-space-stack-lg);
    padding-left: var(--ds-space-6);
}

#main-article-content .details-artical li,
#main-article-content .ds-c-rich-text li {
    margin-bottom: var(--ds-space-stack-sm);
    color: var(--ds-color-text-body);
}

#main-article-content .details-artical a,
#main-article-content .ds-c-rich-text a {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-underline-offset: 2px;
    overflow-wrap: anywhere;
}

#main-article-content .details-artical a:hover,
#main-article-content .details-artical a:focus-visible,
#main-article-content .ds-c-rich-text a:hover,
#main-article-content .ds-c-rich-text a:focus-visible {
    color: var(--ds-color-link-hover);
}

#main-article-content .ds-c-rich-text--formatted {
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

#main-article-content .ds-c-rich-text--formatted h2 {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
}

#main-article-content .ds-c-rich-text--formatted h3 {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

#main-article-content .ds-c-rich-text--formatted strong {
    color: var(--ds-color-text-heading);
    font-weight: var(--ds-font-weight-bold);
}

#main-article-content .ds-c-rich-text--formatted blockquote {
    margin: var(--ds-space-6) 0 var(--ds-space-stack-lg);
    padding: var(--ds-space-inset-lg);
    border-left: 4px solid var(--ds-color-brand-accent);
    border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-body);
}

#main-article-content .ds-c-rich-text--formatted blockquote p:last-child,
#main-article-content .ds-c-rich-text--formatted .ds-c-article-note p:last-child {
    margin-bottom: 0;
}

#main-article-content .ds-c-rich-text--formatted .ds-c-article-divider {
    margin: var(--ds-space-section-sm) 0;
    border: 0;
    border-top: 1px solid var(--ds-color-border-default);
    opacity: 1;
}

#main-article-content .ds-c-rich-text--formatted .ds-c-article-note {
    margin-bottom: var(--ds-space-stack-lg);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface-muted);
}

/* Journey series nav (AN-79 / work-chunks M1 PoC): sits outside the_content(),
   so it can't rely on the #main-article-content .ds-c-rich-text--formatted
   .ds-c-article-note nesting above — same "quiet note" look, standalone rule. */
.ds-c-series-nav {
    margin-bottom: var(--ds-space-stack-lg);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface-muted);
}

.ds-c-series-nav p {
    margin: 0;
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    color: var(--ds-color-text-body);
}

.ds-c-series-nav p + p {
    margin-top: var(--ds-space-2);
}

.ds-c-series-nav__label {
    font-weight: var(--ds-font-weight-semibold);
    color: var(--ds-color-text-heading);
}

.ds-c-series-nav__index a {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.ds-c-series-nav__index a:hover,
.ds-c-series-nav__index a:focus-visible {
    color: var(--ds-color-link-hover);
}

.ds-c-series-nav__index strong {
    color: var(--ds-color-brand-accent-deep);
}

.ds-c-series-nav__cta a {
    font-weight: var(--ds-font-weight-medium);
}

/* Journey landing page card title prefix ("Part N — "), set via card.php's
   $args['title_prefix']; unused (and invisible) on every other card. */
.article-card__title-prefix {
    color: var(--ds-color-brand-accent-deep);
    font-weight: var(--ds-font-weight-semibold);
}

.ds-c-article-references {
    display: grid;
    gap: var(--ds-space-stack-md);
    background: var(--ds-color-bg-surface-muted);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    padding: var(--ds-space-inset-lg);
}

.ds-c-article-references__title {
    margin: 0;
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
}

.ds-c-article-references p:last-child {
    margin-bottom: 0;
}

.ds-c-article-related {
    margin-top: var(--ds-space-section-sm);
}

.ds-c-article-related__grid {
    margin-top: var(--ds-space-6);
}

.ds-c-article-sidebar {
    display: grid;
    gap: var(--ds-space-stack-lg);
}

.ds-c-article-sidebar-section {
    display: grid;
    gap: var(--ds-space-stack-lg);
}

.ds-c-widget.ds-c-widget--related-courses {
    margin: 0;
}

.ds-c-widget--related-courses .ds-c-widget__body {
    display: grid;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-inset-lg);
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
}

.ds-c-widget--related-courses .ds-c-widget__title {
    margin: 0;
    color: var(--ds-color-text-heading);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
}

.ds-c-widget--related-courses .ds-c-widget__text {
    margin: 0;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.ds-c-widget--related-courses .ds-c-widget__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: var(--ds-space-3) var(--ds-space-4);
    border-radius: var(--ds-radius-md);
    text-align: center;
    text-decoration: none;
}

.ds-c-widget--related-courses .ds-c-widget__secondary-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    text-align: center;
    text-decoration: none;
}

.ds-c-widget--related-courses .ds-c-widget__secondary-link:hover,
.ds-c-widget--related-courses .ds-c-widget__secondary-link:focus-visible {
    color: var(--ds-color-link-hover);
    text-decoration: underline;
}

body.single-post #sub_question {
    padding: 0;
    margin-bottom: var(--ds-space-stack-lg);
    background: transparent;
    border: 0;
    border-radius: 0;
}

body.single-post #sub_question .ds-c-article-question-card {
    padding: var(--ds-space-inset-lg);
    background: var(--ds-color-brand-primary);
    border: 1px solid var(--ds-color-brand-accent);
    border-radius: var(--ds-radius-lg);
}

body.single-post #sub_question .ds-c-article-question-card__body {
    display: grid;
    gap: var(--ds-space-stack-md);
}

body.single-post #sub_question .ds-c-article-question-card__title {
    margin: 0;
    color: var(--ds-color-text-on-primary);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    text-align: left;
}

body.single-post #sub_question .ds-c-article-question-card__text {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

body.single-post #sub_question .ds-c-article-question-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    padding: var(--ds-space-3) var(--ds-space-5);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-brand-accent);
    color: var(--ds-color-text-on-accent);
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-type-body-sm-line-height);
    font-weight: var(--ds-font-weight-semibold);
    text-align: center;
    text-decoration: none;
}

body.single-post #sub_question .ds-c-article-question-link:hover,
body.single-post #sub_question .ds-c-article-question-link:focus-visible {
    background: var(--ds-color-brand-accent-deep);
    color: var(--ds-color-text-on-primary);
}

body.single-books #sub_question {
    padding: 0;
    margin-bottom: var(--ds-space-stack-lg);
    background: transparent;
    border: 0;
    border-radius: 0;
}

body.single-books #sub_question .ds-c-article-question-card {
    padding: var(--ds-space-inset-lg);
    background: var(--ds-color-brand-primary);
    border: 1px solid var(--ds-color-brand-accent);
    border-radius: var(--ds-radius-lg);
}

body.single-books #sub_question .ds-c-article-question-card__body {
    display: grid;
    gap: var(--ds-space-stack-md);
}

body.single-books #sub_question .ds-c-article-question-card__title {
    margin: 0;
    color: var(--ds-color-text-on-primary);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    text-align: left;
}

body.single-books #sub_question .ds-c-article-question-card__text {
    margin: 0;
    color: rgba(255, 255, 255, 0.84);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

body.single-books #sub_question .ds-c-article-question-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    padding: var(--ds-space-3) var(--ds-space-5);
    border-radius: var(--ds-radius-pill);
    background: var(--ds-color-brand-accent);
    color: var(--ds-color-text-on-accent);
    font-weight: var(--ds-font-weight-semibold);
    text-decoration: none;
    box-shadow: var(--ds-shadow-sm);
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard), transform var(--ds-motion-fast) var(--ds-ease-standard);
}

body.single-books #sub_question .ds-c-article-question-link:hover,
body.single-books #sub_question .ds-c-article-question-link:focus-visible {
    background: var(--ds-color-brand-accent-deep);
    color: var(--ds-color-text-on-accent);
    transform: translateY(calc(var(--ds-space-1) * -0.5));
}

body.single-books #sub_question .ds-c-article-question-link:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

body.single-post .ds-c-article-related--posts .related-articles-grid {
    grid-template-columns: 1fr;
    gap: var(--ds-space-gap-lg);
}

body.single-post .ds-c-article-related--posts .related-article-item {
    display: block;
    min-width: 0;
}

body.single-post .ds-c-article-related--posts .related-article-item > .article-card.ds-c-card {
    width: 100%;
}

body.single-post .ds-c-article-related--posts .article-card.ds-c-card {
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    box-shadow: var(--ds-shadow-sm);
    overflow: hidden;
    transition:
        transform var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

body.single-post .ds-c-article-related--posts .article-card.ds-c-card:hover,
body.single-post .ds-c-article-related--posts .article-card.ds-c-card:focus-within {
    transform: translateY(calc(var(--ds-space-1) * -1));
    box-shadow: var(--ds-shadow-lg);
    border-color: var(--ds-color-border-warning);
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__image {
    position: relative;
}

body.single-post .ds-c-article-related--posts .article-card__image a {
    display: block;
    width: 100%;
}

body.single-post .ds-c-article-related--posts .article-card img {
    display: block;
    width: 100%;
    height: calc(var(--ds-space-1) * 51);
    object-fit: cover;
}

body.single-post .ds-c-article-related--posts .article-card .article-card__body,
body.single-post .ds-c-article-related--posts .article-card .ds-c-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-4);
}

body.single-post .ds-c-article-related--posts .article-card .article-card__categories,
body.single-post .ds-c-article-related--posts .article-card__categories {
    margin-bottom: 0;
    display: flex;
    gap: var(--ds-space-gap-sm);
    flex-wrap: nowrap;
    align-items: center;
    overflow: hidden;
    min-height: var(--ds-pill-height-sm);
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title,
body.single-post .ds-c-article-related--posts .article-card h3 {
    margin: 0;
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title,
body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title a,
body.single-post .ds-c-article-related--posts .article-card h3,
body.single-post .ds-c-article-related--posts .article-card h3 a {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title a,
body.single-post .ds-c-article-related--posts .article-card h3 a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title a:hover,
body.single-post .ds-c-article-related--posts .article-card .ds-c-card__title a:focus-visible,
body.single-post .ds-c-article-related--posts .article-card h3 a:hover,
body.single-post .ds-c-article-related--posts .article-card h3 a:focus-visible {
    text-decoration: underline;
}

body.single-post .ds-c-article-related--posts .article-card .ds-c-card__excerpt,
body.single-post .ds-c-article-related--posts .article-card p {
    margin: 0;
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    min-height: calc(var(--ds-font-size-body-sm) * var(--ds-type-body-sm-line-height) * 4);
    color: var(--ds-color-text-body);
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

body.single-post .ds-c-article-related--posts .article-card__meta,
body.single-post .ds-c-article-related--posts .article-card__meta.ds-c-meta {
    display: flex;
    justify-content: flex-start;
    margin-top: auto;
    padding-top: 0;
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

body.single-post .ds-c-article-related--posts .article-card .read-link {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

@media (min-width: 768px) {
    body.single-post .ds-c-article-related--posts .related-articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

body.single-qa .qa_article_wrapper {
    background: var(--ds-color-bg-canvas);
    padding: var(--ds-space-section-sm) 0;
}

body.single-qa .breadcrumb-wrapper {
    max-width: none;
    margin: 0 0 var(--ds-space-stack-md);
    background: transparent;
    padding: 0;
    border: 0;
    border-radius: 0;
}

body.single-qa .article_wrapper .container-sm {
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0;
}

body.single-qa .qa_infow_wrapper {
    padding: 0;
    border: 0;
    margin-bottom: var(--ds-space-stack-lg);
}

body.single-qa .single-qa-title-row {
    gap: var(--ds-space-gap-md);
    margin-bottom: var(--ds-space-stack-md);
}

body.single-qa .single-qa-title-icon {
    flex-shrink: 0;
}

body.single-qa .single-qa-title.ds-c-card__title {
    font-size: var(--ds-heading-h2-size);
    line-height: var(--ds-heading-h2-line-height);
    font-weight: var(--ds-heading-h2-weight);
    color: var(--ds-color-text-heading);
    margin: 0;
}

body.single-qa .single-qa-question-card,
body.single-qa .single-qa-answer-card {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
    overflow: hidden;
}

body.single-qa .single-qa-question-card {
    padding: 0;
    margin-bottom: var(--ds-space-stack-md);
}

body.single-qa .single-qa-question-card .ds-c-card__body {
    padding: var(--ds-space-inset-lg);
}

body.single-qa .single-qa-question-text,
body.single-qa .single-qa-question-text p {
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

body.single-qa .single-qa-question-text > *:last-child {
    margin-bottom: 0;
}

body.single-qa .single-qa-meta {
    flex-wrap: wrap;
    gap: var(--ds-space-2);
    margin-bottom: var(--ds-space-stack-md);
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

body.single-qa .single-qa-taxonomy-row {
    gap: 0;
}

body.single-qa .single-qa-taxonomy-wrap {
    margin-bottom: 0;
}

body.single-qa .single-qa-taxonomy {
    gap: var(--ds-space-gap-sm);
    margin-bottom: 0;
}

body.single-qa .qa-details-page {
    background: transparent;
}

body.single-qa article.qa-card.qa-answer-card {
    padding: 0;
}

body.single-qa .single-qa-answer-card__body {
    padding: var(--ds-space-inset-xl);
}

body.single-qa .single-qa-answer-author {
    padding-bottom: var(--ds-space-stack-lg);
    border-bottom: 1px solid var(--ds-color-border-default);
}

body.single-qa .single-qa-answer-author-row {
    gap: var(--ds-space-gap-md);
}

body.single-qa .single-qa-author-summary {
    min-width: 0;
}

body.single-qa .single-qa-answer-label {
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
    letter-spacing: var(--ds-type-overline-letter-spacing);
    font-weight: var(--ds-font-weight-medium);
}

body.single-qa .single-qa-author-name {
    margin: 0 0 var(--ds-space-2);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    color: var(--ds-color-text-heading);
}

body.single-qa .single-qa-author-meta {
    display: grid;
    gap: var(--ds-space-2);
    margin: 0;
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    color: var(--ds-color-text-body);
}

body.single-qa .single-qa-author-meta p {
    margin: 0;
    font-size: inherit;
    line-height: inherit;
    color: inherit;
}

body.single-qa .single-qa-answer-date {
    color: var(--ds-color-brand-accent-deep);
}

body.single-qa .single-qa-divider {
    margin: var(--ds-space-stack-lg) 0;
    border-color: var(--ds-color-border-default);
    opacity: 1;
}

body.single-qa .single-qa-answer-content {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

body.single-qa .single-qa-answer-content > *:last-child {
    margin-bottom: 0;
}

body.single-qa .single-qa-answer-content p {
    color: inherit;
    font-size: inherit;
    line-height: inherit;
    margin-bottom: var(--ds-space-stack-lg);
}

body.single-qa .single-qa-answer-content h2,
body.single-qa .single-qa-answer-content h3,
body.single-qa .single-qa-answer-content h4 {
    margin-top: var(--ds-space-section-sm);
    margin-bottom: var(--ds-space-stack-md);
    color: var(--ds-color-text-heading);
}

body.single-qa .single-qa-answer-content ul,
body.single-qa .single-qa-answer-content ol {
    margin-bottom: var(--ds-space-stack-lg);
    padding-left: var(--ds-space-6);
}

body.single-qa .single-qa-answer-content li {
    margin-bottom: var(--ds-space-stack-sm);
    color: inherit;
}

body.single-qa .single-qa-answer-content a {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.single-qa .single-qa-answer-content a:hover,
body.single-qa .single-qa-answer-content a:focus-visible {
    color: var(--ds-color-link-hover);
}

body.single-qa #releted_post_wrapper {
    margin-top: var(--ds-space-section-sm);
}

body.single-qa #releted_post_wrapper .section-title {
    margin-bottom: var(--ds-space-stack-md);
    text-align: left;
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
}

body.single-qa .related-articles-grid .qa-card.ds-c-card {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
    background: var(--ds-color-bg-surface);
}

body.single-qa .related-articles-grid .qa-card__body.ds-c-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    height: 100%;
    padding: var(--ds-space-inset-lg);
}

body.single-qa .related-articles-grid .qa-card__header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

body.single-qa .related-articles-grid .qa-card__taxonomy {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

body.single-qa .related-articles-grid .qa-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

body.single-qa .related-articles-grid .qa-card .ds-c-card__title,
body.single-qa .related-articles-grid .qa-card .ds-c-card__title a.ds-c-link {
    margin: 0;
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    color: var(--ds-color-text-heading);
}

body.single-qa .related-articles-grid .qa-card .ds-c-card__excerpt {
    margin: 0;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

body.single-qa .related-articles-grid .qa-card .fa-card-meta.ds-c-meta {
    margin-top: auto;
}

body:not(.home) .article-card img {
    width: 100%;
    height: 220px;
    object-fit: cover;
}

body:not(.home) .article-card .article-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-5);
}

body:not(.home) .article-card .article-card__categories {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card {
    container-type: inline-size;
    display: flex;
    flex-direction: column;
    height: 100%;
    border: 1px solid var(--ds-color-border-default);
    transition:
        transform var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card:hover,
.archive-page .archive-grid:not(.related-articles-grid) .article-card:focus-within {
    transform: translateY(calc(var(--ds-space-1) * -1));
    box-shadow: var(--ds-shadow-lg);
    border-color: var(--ds-color-border-warning);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__image {
    position: relative;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card__image a {
    display: block;
    width: 100%;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card img {
    display: block;
    width: 100%;
    height: calc(var(--ds-space-1) * 51);
    object-fit: cover;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card--book .article-card__image a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--ds-space-1) * 51);
    padding: var(--ds-space-4);
    background: var(--ds-color-bg-surface-muted);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card--book .article-card__media--book {
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.books-archive-page .archive-grid .article-card--book .article-card__image a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: calc(var(--ds-space-1) * 102.5);
    /* Bookstore-style cover tile: the jacket floats on clean white with
       breathing room, separated from the card body by a hairline rule. */
    padding: var(--ds-space-5);
    background: var(--ds-color-bg-surface);
    border-bottom: 1px solid var(--ds-color-border-default);
}

.books-archive-page .archive-grid .article-card--book .article-card__media--book {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

/* Gentle cover zoom on hover/focus (all book-card contexts). The tile clips
   the overflow so the jacket grows inside its white frame, Al-Salam style. */
.article-card--book .article-card__image,
.article-card--book .article-card__image a {
    overflow: hidden;
}

.article-card--book .article-card__media--book {
    transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.article-card--book:hover .article-card__media--book,
.article-card--book:focus-within .article-card__media--book {
    transform: scale(1.045);
}

@media (prefers-reduced-motion: reduce) {
    .article-card--book .article-card__media--book {
        transition: none;
    }

    .article-card--book:hover .article-card__media--book,
    .article-card--book:focus-within .article-card__media--book {
        transform: none;
    }
}

.books-archive-page .archive-grid .article-card--book {
    max-width: calc(var(--ds-space-1) * 68);
    margin: 0 auto;
    overflow: hidden;
    box-shadow: var(--ds-shadow-md);
}

.books-archive-page .archive-grid .article-card--book .article-card__body,
.books-archive-page .archive-grid .article-card--book .ds-c-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-4) var(--ds-space-4) var(--ds-space-5);
}

.books-archive-page .archive-grid .article-card--book .article-card__title,
.books-archive-page .archive-grid .article-card--book .ds-c-card__title {
    margin: 0;
}

.books-archive-page .archive-grid .article-card--book .article-card__title a,
.books-archive-page .archive-grid .article-card--book .ds-c-card__title a {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
    font-family: var(--ds-font-family-heading);
    letter-spacing: normal;
}

.books-archive-page .archive-grid .article-card--book .article-card__excerpt,
.books-archive-page .archive-grid .article-card--book .ds-c-card__excerpt {
    margin: 0;
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    min-height: calc(var(--ds-font-size-body-md) * var(--ds-type-body-md-line-height) * 3);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

.books-archive-page .archive-grid .article-card--book .article-card__meta,
.books-archive-page .archive-grid .article-card--book .article-card__meta.ds-c-meta {
    margin-top: auto;
    padding-top: 0;
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.books-archive-page .archive-grid .article-card--book .read-link {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.books-archive-hero {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-stack-lg);
}

.books-archive-hero__inner {
    max-width: calc(var(--ds-space-1) * 140);
}

.books-archive-hero__eyebrow {
    margin-bottom: var(--ds-space-stack-sm);
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-overline);
    letter-spacing: var(--ds-type-overline-letter-spacing);
    text-transform: uppercase;
}

.books-archive-hero__title {
    margin-bottom: var(--ds-space-stack-md);
    color: var(--ds-color-text-heading);
    font-size: var(--ds-heading-h1-size);
    line-height: var(--ds-heading-h1-line-height);
    font-family: var(--ds-font-family-heading);
}

.books-archive-hero__intro {
    max-width: calc(var(--ds-space-1) * 96);
    margin-bottom: 0;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

.books-archive-page {
    padding-bottom: var(--ds-space-section-md);
}

.books-archive-page__main {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-lg);
}

.books-archive-toolbar {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-xl);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

.books-archive-toolbar__meta {
    color: var(--ds-color-text-body);
}

.books-archive-empty {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-xl);
}

.books-archive-empty__body {
    padding: var(--ds-space-inset-xl);
}

body.post-type-archive-books .archive-grid.books-archive-grid {
    row-gap: var(--ds-space-gap-lg);
}

@media (max-width: 767.98px) {
    .books-archive-page .archive-grid .article-card--book .article-card__image a {
        height: calc(var(--ds-space-1) * 75);
        padding-left: var(--ds-space-2);
        padding-right: var(--ds-space-2);
    }

    .books-archive-page .archive-grid .article-card--book .article-card__media--book {
        border-radius: var(--ds-radius-md) var(--ds-radius-md) 0 0;
    }

    .books-archive-page .archive-grid .article-card--book .article-card__body,
    .books-archive-page .archive-grid .article-card--book .ds-c-card__body {
        padding: var(--ds-space-3);
    }

    .books-archive-page .archive-grid .article-card--book .article-card__title a,
    .books-archive-page .archive-grid .article-card--book .ds-c-card__title a {
        font-size: var(--ds-font-size-md);
        line-height: var(--ds-line-height-tight);
    }

    .books-archive-hero {
        padding-top: var(--ds-space-section-sm);
    }

    .books-archive-toolbar {
        padding: var(--ds-space-inset-md);
    }

    body.single-books .ds-c-book-detail__summary {
        font-size: var(--ds-font-size-body-md);
    }

    body.single-books .ds-c-book-detail__cta {
        width: 100%;
        max-width: 100%;
    }
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .article-card__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-4);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .article-card__categories {
    margin-bottom: 0;
    display: flex;
    gap: var(--ds-space-gap-sm);
    flex-wrap: nowrap;
    align-items: center;
    overflow: hidden;
    min-height: var(--ds-pill-height-sm);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .badge-featured {
    top: var(--ds-space-4);
    left: var(--ds-space-4);
    padding: var(--ds-space-2) var(--ds-space-3);
    border-radius: var(--ds-radius-md);
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
}

.q_a_info h3 a,
.q_a_info h3 {
    color: var(--ds-color-text-heading);
    text-decoration: none;
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: 600;
    font-family: var(--ds-font-family-heading);
}

.q_a_info h3 a:hover {
    color: var(--gold-color);
    text-decoration: none;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__title,
.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__title a.ds-c-link {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
    color: var(--ds-color-text-heading);
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__title a.ds-c-link {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__title a.ds-c-link:hover,
.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__title a.ds-c-link:focus-visible {
    text-decoration: underline;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__excerpt {
    margin: 0;
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    color: var(--ds-color-text-body);
    min-height: calc(var(--ds-font-size-body-sm) * var(--ds-type-body-sm-line-height) * 4);
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .article-card__meta,
.archive-page .archive-grid:not(.related-articles-grid) .article-card .article-card__meta.ds-c-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-2);
    flex-wrap: wrap;
    margin-top: 0;
    padding-top: 0;
}

.archive-page .archive-grid:not(.related-articles-grid) .article-card .read-link {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

/* Card meta: published date + reading time (S2) */
.article-card__meta-info {
    display: inline-flex;
    align-items: center;
    gap: var(--ds-space-1);
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.article-card__meta-info .article-card__separator {
    opacity: 0.6;
}

.archive-grid[attr="qa"] .qa-card.ds-c-card {
    border: 1px solid var(--ds-color-border-default);
    box-shadow: var(--ds-shadow-sm);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
}

.archive-grid[attr="qa"] .qa-card .qa-card__body.ds-c-card__body {
    padding: var(--ds-space-inset-lg);
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
}

.archive-grid[attr="qa"] .qa-card .qa-card__header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

.archive-grid[attr="qa"] .qa-card .qa-card__taxonomy {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

.archive-grid[attr="qa"] .qa-card .ds-c-pill {
    display: inline-flex;
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

.archive-grid[attr="qa"] .qa-card .qa-card__content {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    min-width: 0;
}

.archive-grid[attr="qa"] .qa-card .ds-c-card__title,
.archive-grid[attr="qa"] .qa-card .ds-c-card__title a.ds-c-link {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

.archive-grid[attr="qa"] .qa-card .ds-c-card__excerpt {
    margin: 0;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

.archive-grid[attr="qa"] .qa-card .fa-card-meta.ds-c-meta {
    margin-top: auto;
}

.archive-grid[attr="qa"] {
    margin-bottom: var(--ds-space-section-md);
}

.search-results-page .archive-grid--articles .article-card--search .ds-c-card__title,
.search-results-page .archive-grid--articles .article-card--search .ds-c-card__title a.ds-c-link,
.search-results-page .archive-grid--qa[attr="qa"] .qa-card--search .ds-c-card__title,
.search-results-page .archive-grid--qa[attr="qa"] .qa-card--search .ds-c-card__title a.ds-c-link {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

.search-results-page .archive-grid--articles .article-card--search .ds-c-card__excerpt,
.search-results-page .archive-grid--qa[attr="qa"] .qa-card--search .ds-c-card__excerpt {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    min-height: auto;
}

.search-results-page .archive-grid--articles .article-card--search .article-card__meta,
.search-results-page .archive-grid--articles .article-card--search .article-card__meta.ds-c-meta,
.search-results-page .archive-grid--qa[attr="qa"] .qa-card--search .qa-card__meta,
.search-results-page .archive-grid--qa[attr="qa"] .qa-card--search .qa-card__meta.ds-c-meta {
    margin-top: auto;
    padding-top: var(--ds-space-2);
}

.archive_qa-featured .qa-featured--archive {
    margin-bottom: 0;
}

.archive_qa-featured .qa-featured__body.ds-c-card__body {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-stack-md);
    padding: var(--ds-space-inset-lg);
    padding-bottom: var(--ds-space-5);
}

.archive_qa-featured .qa-featured__header {
    display: flex;
    align-items: center;
}

.archive_qa-featured .qa-featured__badges {
    gap: var(--ds-space-gap-sm);
}

.archive_qa-featured .qa-featured__title {
    margin: 0;
}

.archive_qa-featured .qa-featured__title,
.archive_qa-featured .qa-featured__title a.ds-c-link {
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    color: var(--ds-color-text-heading);
}

.archive_qa-featured .qa-featured__excerpt {
    margin-bottom: 0;
}

.archive_qa-featured .qa-featured__excerpt blockquote {
    margin: 0;
}

.archive_qa-featured .qa-featured__body .fa-card-meta.ds-c-meta {
    margin-top: var(--ds-space-stack-sm);
}

.article-card .tag a,
.tag {
    font-size: var(--ds-font-size-xs);
    padding: var(--ds-space-1) var(--ds-space-3);
    border-radius: var(--ds-radius-sm);
    letter-spacing: .05em;
    text-decoration: none;
    background-color: var(--ds-color-bg-surface-muted);
    text-transform: uppercase;
    color: var(--gold-color);
}

.meta {
    font-size: var(--ds-font-size-xs);
    color: var(--ds-color-text-muted);
}

.filter-list {
    list-style: none;
    padding: 0;
    margin: var(--ds-space-3) 0 0;
    max-height: calc(var(--ds-space-20) * 5);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: var(--ds-space-2);
    scrollbar-gutter: stable;
    overscroll-behavior: contain;
}

.filter-list li {
    margin-bottom: var(--ds-space-1);
}

.filter-list--nested {
    max-height: none;
    margin: 0 0 var(--ds-space-3) var(--ds-space-4);
    padding: 0 0 0 var(--ds-space-3);
    border-left: 1px solid var(--ds-color-border-default);
    overflow: visible;
}

.filter-list__topic {
    margin-bottom: var(--ds-space-3) !important;
}

.filter-list__topic-heading {
    margin: var(--ds-space-3) 0 var(--ds-space-1);
    color: var(--ds-color-brand-accent-deep);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
    font-weight: var(--ds-font-weight-semibold);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.filter-list__item--subtopic > .filter-checkbox {
    min-height: calc(var(--ds-space-10) - var(--ds-space-1));
    padding-block: var(--ds-space-1);
    font-size: var(--ds-font-size-caption);
}

.archive-topic-filter {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.archive-filter-heading,
.archive-translation-filter legend.archive-filter-heading {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    font-weight: var(--ds-font-weight-semibold);
}

.archive-filter-help {
    margin: var(--ds-space-1) 0 0;
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
}

.archive-translation-filter {
    display: grid;
    gap: var(--ds-space-3);
    margin: var(--ds-space-5) 0 0;
    padding: var(--ds-space-5) 0 0;
    border: 0;
    border-top: 1px solid var(--ds-color-border-default);
}

.archive-translation-filter legend {
    float: none;
    width: auto;
    margin: 0 0 var(--ds-space-1);
    padding: 0;
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-sm);
    font-weight: var(--ds-font-weight-semibold);
}

.filter-checkbox {
    display: flex;
    align-items: center;
    gap: var(--ds-space-3);
    width: 100%;
    font-family: var(--ds-font-family-body);
    min-height: calc(var(--ds-space-10) + var(--ds-space-1));
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-line-height-normal);
    font-weight: var(--ds-font-weight-regular);
    text-transform: none;
    letter-spacing: normal;
    color: var(--ds-color-text-strong);
    cursor: pointer;
    padding: var(--ds-space-2);
    background: transparent;
    border: 0;
    border-radius: var(--ds-radius-md);
    transition: color var(--ds-motion-fast) var(--ds-ease-standard),
        background-color var(--ds-motion-fast) var(--ds-ease-standard);
}

.filter-checkbox:hover {
    color: var(--ds-color-text-heading);
    background: var(--ds-color-bg-surface-muted);
}

.filter-checkbox:has(input:checked) {
    color: var(--ds-color-text-heading);
    background: var(--ds-color-bg-info-subtle);
    font-weight: var(--ds-font-weight-medium);
}

.filter-checkbox input {
    width: var(--ds-space-4);
    height: var(--ds-space-4);
    margin: 0;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-sm);
    appearance: none;
    -webkit-appearance: none;
    background: var(--ds-color-bg-surface);
    display: inline-block;
    flex: 0 0 var(--ds-space-4);
    position: relative;
}

.filter-checkbox input:checked {
    border-color: var(--ds-color-brand-accent);
    background: var(--ds-color-brand-accent);
}

.filter-checkbox input:checked::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 5px;
    height: 10px;
    border: solid var(--ds-color-text-on-primary);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

.filter-actions {
    display: flex;
    align-items: center;
    gap: var(--ds-space-gap-sm);
    margin-top: var(--ds-space-4);
    padding-top: var(--ds-space-4);
    border-top: 1px solid var(--ds-color-border-default);
}

.archive-filter-done,
.archive-filter-clear {
    display: inline-flex;
    min-height: calc(var(--ds-space-10) + var(--ds-space-1));
    align-items: center;
    justify-content: center;
    border-radius: var(--ds-radius-md);
    padding: var(--ds-space-2) var(--ds-space-4);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    font-weight: var(--ds-font-weight-semibold);
    text-decoration: none;
}

.archive-filter-done {
    flex: 1;
    border: 1px solid var(--ds-color-brand-primary);
    background: var(--ds-color-brand-primary);
    color: var(--ds-color-text-on-primary);
}

.archive-filter-clear {
    border: 1px solid var(--ds-color-border-default);
    background: var(--ds-color-bg-surface);
    color: var(--ds-color-link);
}

.archive-filter-done:focus-visible,
.archive-filter-clear:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

.filter-checkbox input[type="radio"] {
    border-radius: 50%;
}

.filter-checkbox input[type="radio"]:checked {
    border: 1px solid var(--ds-color-brand-accent-deep);
    background: var(--ds-color-bg-surface);
}

.filter-checkbox input[type="radio"]:checked::after {
    left: 50%;
    top: 50%;
    width: calc(var(--ds-space-2) - (var(--ds-space-1) * 0.5));
    height: calc(var(--ds-space-2) - (var(--ds-space-1) * 0.5));
    border: 0;
    border-radius: 50%;
    background: var(--ds-color-brand-accent-deep);
    transform: translate(-50%, -50%);
}

.filter-checkbox input:focus,
.filter-checkbox input:focus-visible,
.filter-checkbox input[type="radio"]:checked:focus {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

/* Autocomplete dropdown */
.ui-autocomplete {
    list-style: none;
    margin: 0;
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    padding: var(--ds-space-2);
    max-height: calc(var(--ds-space-1) * 90);
    overflow-y: auto;
    overflow-x: hidden;
    box-shadow: var(--ds-shadow-lg);
    z-index: 9999;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

/* Item row */
.autocomplete-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ds-space-gap-sm);
    padding: var(--ds-space-3) var(--ds-space-4);
}

.autocomplete-content {
    display: flex;
    align-items: flex-start;
    gap: var(--ds-space-gap-sm);
    min-width: 0;
    flex: 1;
}

/* Badge */
.autocomplete-badge {
    display: inline-flex;
    align-items: center;
    min-height: var(--ds-pill-height-sm);
    padding: 0 var(--ds-pill-padding-x-sm);
    border-radius: var(--ds-radius-pill);
    font-size: var(--ds-pill-font-size-sm);
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: var(--ds-type-overline-letter-spacing);
    font-weight: var(--ds-pill-font-weight);
    white-space: nowrap;
}

/* Badge colors */
.autocomplete-badge.article {
    background: var(--ds-color-bg-warning-subtle);
    color: var(--ds-color-warning);
}

.autocomplete-badge.question {
    background: var(--ds-color-bg-info-subtle);
    color: var(--ds-color-info);
}

.autocomplete-badge.category {
    background: var(--ds-color-pill-category-bg);
    color: var(--ds-color-pill-category-text);
}

.autocomplete-badge.topic {
    background: #f3e8ff;
    color: #6b21a8;
}

#mobile-search-results {
    position: relative;
}

#mobile-search-results:empty {
    display: none;
}

#mobile-search-results .ui-autocomplete {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    margin-top: var(--ds-space-3);
    max-height: calc(var(--ds-space-1) * 56);
}

body:not(.home) .section-title {
    font-weight: 600;
    font-size: 32px;
    line-height: 41.6px;
    letter-spacing: -0.32px;
    text-align: center;

}

/* Title */
.autocomplete-title {
    min-width: 0;
    color: var(--ds-color-text-heading);
    font-size: var(--ds-font-size-body-sm);
    font-weight: var(--ds-font-weight-medium);
    line-height: var(--ds-type-body-sm-line-height);
    word-break: break-word;
}

.autocomplete-action {
    color: var(--ds-color-link-hover);
    font-size: var(--ds-font-size-body-md);
    line-height: 1;
    opacity: var(--ds-state-hover-opacity);
    padding-top: var(--ds-space-1);
}

body:not(.home) .profile-footer {
    margin-top: 5px;
}

li.ui-menu-item {
    border-bottom: 0;
}

li.ui-menu-item .ui-menu-item-wrapper.ui-state-active .autocomplete-badge {
    color: var(--ds-color-text-strong);
}

li.ui-menu-item .ui-menu-item-wrapper .autocomplete-badge {
    color: inherit;
}

.ui-autocomplete .ui-menu-item + .ui-menu-item {
    border-top: 1px solid var(--ds-color-border-default);
}

li .ui-menu-item-wrapper {
    margin: 0;
    padding: 0;
    border-radius: var(--ds-radius-md);
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard),
        color var(--ds-motion-fast) var(--ds-ease-standard);
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
    background-color: var(--ds-color-bg-surface-muted);
    border: 1px solid transparent;
    color: var(--ds-color-text-heading);
}

.pagination,
.comments-pagination {
    border: none;
}

.ds-c-pagination {
    margin-top: var(--ds-space-6);
}

.ds-c-pagination__list {
    margin: 0;
    padding: 0;
    align-items: center;
    gap: var(--ds-space-1);
    flex-wrap: wrap;
}

.pagination .page-link {
    border-radius: var(--ds-radius-md);
    margin: 0 var(--ds-space-1);
    padding: var(--ds-space-2) var(--ds-space-4);
    color: var(--ds-color-text-strong);
    border: 1px solid var(--ds-color-border-default);
    font-weight: var(--ds-font-weight-medium);
}

.ui-widget.ui-widget-content {
    overflow-x: hidden;
}

.pagination .page-item.active .page-link {
    background-color: var(--ds-color-brand-accent);
    border-color: var(--ds-color-brand-accent);
    color: var(--ds-color-text-on-accent);
}

.pagination .page-item.disabled .page-link {
    background-color: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-muted);
    opacity: var(--ds-state-disabled-opacity);
}

.pagination .page-link:hover {
    background-color: color-mix(in srgb, var(--ds-color-brand-accent) 25%, var(--ds-color-bg-surface));
}

.pagination .page-link,
.pagination .page-link.page-numbers.dots {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.75rem;
    min-height: 2.75rem;
}

.ds-c-pagination .page-link:focus-visible,
.mobile-search-toggle:focus-visible,
.mobile-search-close:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

body.has-search-open {
    overflow: hidden;
}

.wrapper-badge-category span.badge-featured {
    position: static;
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Shared responsive adjustments */
@media (max-width: 991.98px) {
    .header-content {
        flex-wrap: wrap;
        gap: var(--ds-space-4);
    }

    .archive-filter-toggle {
        background-color: var(--ds-color-bg-surface) !important;
        border: 1px solid var(--ds-color-border-default) !important;
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: var(--ds-color-text-heading) !important;
        font-size: var(--ds-font-size-body-sm);
        line-height: var(--ds-type-body-sm-line-height);
        font-weight: var(--ds-font-weight-semibold);
        min-height: calc(var(--ds-space-10) + var(--ds-space-1));
        padding: var(--ds-space-2) var(--ds-space-4);
        border-radius: var(--ds-radius-lg);
        box-shadow: var(--ds-shadow-sm);
    }

    .archive-filter-toggle.active img {
        transform: rotate(180deg);
    }

    .archive-filter-toggle__label {
        display: inline-flex;
        align-items: center;
        gap: var(--ds-space-2);
    }

    .nav-menu {
        order: 3;
        width: 100%;
        justify-content: center;
        gap: var(--ds-space-5);
    }

    body:not(.home) .footer-columns {
        grid-template-columns: 1fr 1fr;
        gap: var(--ds-space-8);
    }
    body:not(.home) .footer-columns > :first-child {
        grid-column: 1 / -1;
    }
    .fa-main {
        grid-template-columns: 1fr;
    }

    .fa-main-image {
        height: 250px;
    }

    .fa-grid {
        grid-template-columns: 1fr;
    }
}


@media (max-width: 1300px) {
    .contact-information {
        transform: translate(30%, -50%);
    }
}

/* Mobile menu layout */
@media (max-width: 1199.98px) {
    #top_header_menu ul.navbar-nav > li {
        padding: 0 var(--ds-space-2);
    }

    section.contact-section .container-sm {
        max-width: 96%;
    }

    .contact-information {
        position: static;
        transform: unset;
        min-width: fit-content;
    }

}

@media (min-width: 992px) and (max-width: 1199.98px) {
    #top_header_menu ul.navbar-nav > li > a {
        min-height: calc(var(--ds-space-10) + var(--ds-space-1));
    }

    #top_header_menu .header-actions {
        gap: var(--ds-space-2);
    }

    #top_header_menu .language-dropdown {
        padding: var(--ds-space-2) var(--ds-space-3);
    }

    #top_header_menu .header-cta {
        padding: var(--ds-space-3) var(--ds-space-4);
    }
}

.question-title {
    font-weight: 600;
    font-size: 48px;
    line-height: 57.6px;
    letter-spacing: -0.48px;

}
div#releted_post_wrapper h2.section-title {
    text-align: left;
}
@media (max-width: 991.98px) {
    .question-title {
        font-size: 30px;
            line-height: 37.6px;
    }
.col-lg-6.text-content.mt-5.mt-lg-0 {
    margin-bottom: 20px;
}

.image-card img{
    max-width: 100%;
}
    .qa_article_wrapper {
        padding: 0;
    }

    .navbar-collapse {
        padding-top: 20px;
    }

    .navbar-nav {
        text-align: center;
    }

    .header-actions {
        padding-top: var(--ds-space-4);
        border-top: 1px solid var(--ds-color-border-subtle);
    }

    .contact-information .contact-card {
        max-width: unset;
    }
}

.archive-sort-form .ds-c-select {
    min-height: 44px;
}

.archive-sort-form > label {
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-type-body-sm-line-height);
}








/* Print Styles */
@media print {

    .main-header,
    .main-footer {
        display: none;
    }

    .main-content {
        background-color: white;
    }
}

p.section-desc {
    color: #5A6C7D;
}

/* Archive view toggle */
.archive-view__button {
    background: var(--light-gray);
    padding: var(--ds-space-2);
    border: 1px solid transparent;
    border-radius: var(--ds-radius-sm);
    transition: var(--transition);
}

.archive-view__button.active {
    background: var(--ds-color-bg-surface);
    border-color: var(--ds-color-border-default);
}

.archive-view__button.active img.normal_image,
.archive-view__button img.active_image {
    display: none;
}

.archive-view__button img.normal_image,
.archive-view__button.active img.active_image {
    display: block;
}

/* Shared CTA and sidebar card patterns */
#sub_question .btn-group,
body:not(.home) .profile-section .btn-group {
    gap: 20px;
}

#sub_question p {
    color: #fff;
    font-size: 14px;
    line-height: 16px;
}

body:not(.home) .profile-section .btn-group a {
    border-radius: var(--ds-radius-pill);
    padding: var(--ds-space-3) var(--ds-space-6);
}

#sub_question .btn-group a {
    padding: 12px 24px;
}

#sub_question .btn-group a.btn-outline-custom {
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: var(--ds-radius-md);
    color: var(--ds-color-text-on-primary);
}

body:not(.home) .featured-articles a.badge-gold {
    padding: 11px 16px;
    border-radius: 6px;
    color: #fff;
    font-weight: 500;
}

a.course-link {
    color: var(--ds-color-brand-accent-deep);
    text-decoration: none;
}

.answer-author p {
    margin: 0;
}

#top_header_menu .navbar-toggler {
    background-color: transparent;
    border: unset;
}

#sub_question {
    padding: 25px;
    background-color: #002147;
    border-radius: 8px;
    border: 1px solid #C5A059;
}

div#sub_question.qa_page {
    border-radius: unset;
    text-align: center;
    padding: 32px;
}

#sub_question .card {
    background: transparent;
    border: none;
}

#sub_question .card-body {
    padding: 0;
}

.gold-color-text {
    color: var(--deep-gold-color);
}

#sub_question a {
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
    text-align: center;
    max-width: 350px;
}

#sub_question h5 {
    font-weight: 600;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0px;
    color: var(--ds-color-text-on-primary);
    text-align: left;
}

div#sub_question.qa_page h5 {
    text-align: center;
}

#mobile-search

{
    min-height: 49px;
    padding-left: 44px;
    border-radius: 30px;
}

.input_wrapper {
    position: relative;
}

.input_wrapper span {
    position: absolute;
    left: 13px;
    top: 17px;
}

body:not(.home) .educational-partner-wrapper .institute-description {
    font-weight: 400;
    font-size: 14px;
    line-height: 23.8px;
    color: #5A6C7D;

}

body:not(.home) .educational-partner-wrapper .institute-name {
    font-weight: 600;
    font-size: 24px;
    line-height: 31.2px;
    letter-spacing: 0px;
}

body:not(.home) .educational-partner-wrapper a {
    padding: var(--ds-space-3) var(--ds-space-6);
    border-radius: var(--ds-radius-md);
}

body:not(.home) .educational-partner-wrapper span.partner-label {
    color: var(--gold-color);
    font-weight: 600;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 1.2px;
}

.archive_qa-featured blockquote,
.about_us_page_data blockquote {
    position: relative;
    margin: 3rem 0;
    padding: 2rem 2.5rem;
    background-color: var(--ds-color-bg-surface-muted);
    border-left: 4px solid var(--ds-color-brand-accent);
    font-family: var(--ds-font-family-heading);
}

.archive_qa-featured blockquote p,
.about_us_page_data blockquote p {
    margin: 0;
    font-family: var(--ds-font-family-body);
    font-weight: 400;
    font-style: italic;
    font-size: 18px;
    line-height: 32.4px;
    letter-spacing: 0px;
    color: var(--dark-blue);
}

.archive_qa-featured blockquote:before {
    content: unset;
}

.about_us_page_data blockquote:before {
    content: "“";
    position: absolute;
    top: -20px;
    left: 15px;
    font-size: 5rem;
    line-height: 1;
    color: color-mix(in srgb, var(--ds-color-brand-accent) 25%, transparent);
    font-family: var(--ds-font-family-heading);
}

.detials_author h5 {
    font-weight: 600;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0px;
    color: var(--ds-color-text-strong);
}

.detials_author p {
    font-family: var(--ds-font-family-heading);
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0px;
    color: #475569
}

.details_author_items {
    color: #475569;
}

form.archive-sort-form {
    display: flex;
    align-items: center;
    gap: var(--ds-space-3);
}
section.faq-secton h2{
    font-weight: 600;
    font-size: 36px;
    line-height: 46px;
}
.accordion-header{
     font-size: 16px;
    line-height: 24px;
}
@media (max-width: 767.98px) {
    .archive-body {
        margin-top: var(--ds-space-4);
    }

    .search-results-page__header {
        align-items: start;
        gap: var(--ds-space-gap-md);
        margin-bottom: var(--ds-space-6);
    }

    .search-results-page__header p {
        max-width: none;
    }

    .search-results-page__meta {
        justify-items: start;
    }

    .search-results-page__main {
        gap: var(--ds-space-gap-md);
    }

    .search-results-page__controls {
        grid-template-columns: 1fr;
    }

    .search-results-page__search,
    .search-results-page__sort {
        padding: var(--ds-space-inset-md);
    }

    .search-results-page__sort {
        width: 100%;
    }

    .search-results-page__results-header {
        padding-bottom: var(--ds-space-3);
    }

    .search-results-page .archive-grid {
        gap: var(--ds-space-gap-md);
    }

    .search-results-page .search-results-page__grid--articles,
    .search-results-page .search-results-page__grid--qa.archive-grid[attr="qa"],
    .search-results-page .search-results-page__grid--books {
        grid-template-columns: 1fr;
    }

    .search-results-page__grid--books .home-book-card {
        max-width: calc(var(--ds-space-1) * 52.25);
    }

    .search-results-page__grid--books .book-card__image,
    .search-results-page__grid--books .book-image {
        border-radius: var(--ds-radius-md) var(--ds-radius-md) 0 0;
    }

    .search-results-page__grid--books .book-card__body {
        min-height: calc(var(--ds-space-1) * 26.25);
        padding: var(--search-results-book-body-padding-top) var(--ds-space-3) var(--search-results-book-body-padding-bottom);
    }

    .search-results-page__grid--books .book-title,
    .search-results-page__grid--books .book-title a {
        font-size: var(--ds-heading-h5-size);
        line-height: var(--ds-heading-h5-line-height);
    }

    .search-results-page__grid .article-card img {
        height: var(--search-results-card-image-height-mobile);
    }

    .search-results-page__grid .article-card__title,
    .search-results-page__grid .article-card__title a,
    .search-results-page__grid.archive-grid[attr="qa"] .qa-card__title,
    .search-results-page__grid.archive-grid[attr="qa"] .qa-card__title a {
        font-size: var(--ds-heading-h5-size);
        line-height: var(--ds-heading-h5-line-height);
    }

    main.main-content
 {
    display: flex;
    flex-direction: column;
}
body:not(.home) .fa-header a {
    display: none;
}
    #sub_question{
        margin: 0;
    }
    .ds-c-article-toolbar {
        padding: var(--ds-space-3) 0;
    }
    .ds-c-article-shell {
        margin-top: var(--ds-space-3);
        padding: var(--ds-space-inset-lg);
        border-radius: var(--ds-radius-lg);
    }
    .ds-c-article-shell__body {
        gap: var(--ds-space-stack-md);
    }
    .ds-c-article-author__media {
        gap: var(--ds-space-gap-sm);
    }
    .ds-c-article-author__avatar {
        width: 3.5rem;
        height: 3.5rem;
        flex-basis: 3.5rem;
    }
    .article-details-wrapper {
        padding: var(--ds-space-section-sm) 0 var(--ds-space-section-md);
    }
    section.faq-secton h2{
    font-weight: 600;
    font-size: 30px;
    line-height: 36px;

    }
body:not(.home) a.btn.btn-primary.btn-custom,
body:not(.home) button.btn.btn-primary.btn-custom {
        background-color: var(--ds-color-brand-accent);
        font-size: var(--ds-font-size-sm);
        padding: var(--ds-space-4) var(--ds-space-6);
        line-height: 100%;
        height: 48px;
         font-weight: 600;
}
body:not(.home) a.btn.btn-outline-primary.btn-outline-custom {
    background: var(--ds-color-bg-surface);
         font-size: var(--ds-font-size-sm);
        padding: var(--ds-space-4) var(--ds-space-6);
        line-height: 100%;
        height: 48px;
        font-weight: 600;
}
.archive-grid.list-view .article-card .d-flex{
    padding: 0;
}
    .article-details-wrapper .ds-c-article-title {
        margin-bottom: 0;
        font-size: var(--ds-heading-h1-size);
        line-height: var(--ds-heading-h1-line-height);
    }

    body:not(.home) .card {
        padding: var(--ds-space-3) 0;
    }

    body:not(.home) .featured-archive_featured .card.ds-c-card {
        padding: 0;
    }

    .archive-page .ds-c-card {
        padding: 0;
    }

    section.about_us_major_data .card {
        padding: var(--ds-space-6);
    }

    body:not(.home) .book-image {
        padding: 0;
        border-radius: 0;
    }

    .btn-gold,
    a.header-cta {
        font-size: 14px;
        padding: 10px 10px;
    }

    .height_for_the_mobile {
        display: block;
        min-height: 35px;
        background: #f1eee8;
    }

    body:not(.home) .profile-section h4 a,
    body:not(.home) .profile-info h1 a,
    .fa-main-content h3 a,
    .fa-card-content h5 a,
    .qa-title a,
    .qa-title-sm a,
    body:not(.home) .book-title a,
    .course-card h3 a {
        font-size: 30px;
        line-height: 36px;
    }

    .about_us_mission_data .section-title {
        margin-bottom: 2rem;
        text-align: center;
    }

    body:not(.home) .featured-articles .fa-card-content h5 {
        min-height: unset;
        font-size: 24px;
        line-height: 30px;
        margin-bottom: 15px;
    }

    .qa-featured blockquote {
        padding: 0;
        margin: 0;
        line-height: 170%;
    }

    body:not(.home) .featured-articles p,
    p.majordescription,
    .about_us_mission_data p,
    section.featured-archive_featured p {
        line-height: 160%;
    }


    .archive-controls-shell {
        padding: var(--ds-space-inset-md);
    }

    .archive-filter-toggle {
        margin-bottom: var(--ds-space-4);
    }

    .featured-articles .fa-meta span {
        display: none;
    }

    section.archive_qa-featured {
        display: none;
    }

    .subscription-wrapper {
        padding: 1.5rem;
    }

    section.subscription-section {
        padding: 10px;
    }

    .main-footer p,
    .about_us_info p {
        line-height: 170%;
    }

    .main-footer h5 {
        font-size: 18px;
        line-height: 26px;
    }

    .subscription-section {
        background-color: var(--ds-color-bg-canvas);
        border: unset;
    }

    section.subscription-section .container {
        background-color: #fff;
        border-radius: 16px;
        box-shadow: var(--card-shadow);
        margin-bottom: 50px;

    }

    .archive-filter-toggle-panel {
        display: none;
        margin: calc(var(--ds-space-2) * -1) 0 var(--ds-space-4);
    }

    .archive-filter-toggle-panel.active {
        display: block;
    }

    .archive-filter-toggle-panel .archive-filters {
        max-height: min(calc(var(--ds-space-20) * 7), 65vh);
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-gutter: stable;
    }

    .archive-filter-toggle-panel .filter-list {
        max-height: none;
        overflow: visible;
        padding-right: 0;
        scrollbar-gutter: auto;
    }

    .archive-toolbar__meta {
        flex-direction: column;
        align-items: stretch;
        gap: var(--ds-space-stack-md);
    }

    .archive-actions {
        align-items: stretch;
        flex-direction: column;
        gap: var(--ds-space-gap-md);
    }

    form.archive-sort-form {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: var(--ds-space-2);
    }

    .archive-view {
        align-self: flex-start;
    }

    .archive-grid {
        margin-top: var(--ds-space-6);
    }

    .archive-filters {
        padding: var(--ds-space-inset-lg);
    }

    .ds-c-pagination {
        margin-top: var(--ds-space-4);
    }

    .archive-page .archive-grid:not(.related-articles-grid) .article-card img {
        height: calc(var(--ds-space-1) * 49);
    }

    .archive-page .archive-grid:not(.related-articles-grid) .article-card .ds-c-card__excerpt {
        min-height: auto;
    }

    /* .featured-articles .fa-meta,.qa-featured .fa-card-meta, .featured-archive_featured .fa-meta{
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 10px;
} */
    ul#ui-id-1 {
        left: 5%;
        border: unset;
    }

    h3.qa-title,
    h5.qa-title-sm {
        display: flex;
        justify-content: space-between;
    }

    h3.qa-title span,
    h5.qa-title-sm .qa-icon {
        min-width: 25px;
        height: 25px;
        width: 25px;
    }

    h3.qa-title span svg,
    h5.qa-title-sm span svg {
        width: 15px;
    }

    body:not(.home) .section-title {
        font-size: 36px;
        line-height:120%;
        text-align: left;
    }

    body:not(.home) .profile-footer {
        margin-top: 30px;

    }

    article.qa-card.mx-auto {
        padding: 0 15px 15px;
    }

    .mobile-p-0 {
        padding: 0;
    }

    .mobile-flat-card {
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    .about_us_academic .card {
        max-width: 100%;
    }

    .article-details-wrapper,
    section.faq-secton,
    .course-section {
        padding: 50px 0 0;
    }

    body.single-post .article-details-wrapper {
        padding-top: 0;
    }

    .article_wrapper {
        padding: 0 0 50px 0;
    }

    section.about_us_info,
    section.question_form,
    section.about_us_major_data,
    section.about_us_page_data {
        padding: 30px 0;
    }

    .header-actions {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    #top_header_menu .header-actions {
        align-items: center;
    }

    a.header-cta {
        width: 100%;
        max-width: 400px;
        text-align: center;
        max-width: 320px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    i.bi.bi-sliders.ms-2 {
        margin-right: 10px;
    }

    body:not(.home) .featured-articles h3,
    .featured-archive_featured h3 {
        font-size: 20px;
        line-height: 25px;
    }

    .qa-title {
        font-size: 28px;
        line-height: 115%;
    }

    h2.archive_featured_article_title::before {
        content: unset;
    }

    .fa-main-image {
        height: auto;
    }

    .featured-archive_featured .fa-main-image,
    .featured-archive_featured .fa-main-image a,
    .featured-archive_featured .fa-main-image img {
        height: auto;
    }

    .featured-archive_featured .fa-main-image img {
        height: auto !important;
    }

    .fa-main {
        min-height: fit-content;
    }

    .fa-main-content {
        padding: 20px;
    }

    .archive-header p,
    .question_page_info p {
        max-width: 340px;
    }

    section.about_us_info h1,
    .archive-header h1,
    .question_page_info h1 {
        font-size: 36px;
        line-height: 45px;
    }

    .qa-excerpt-box {
        padding: 0;
    }

    span.arrow_icon {
        padding-right: 10px;
    }

    ul.ui-menu.ui-widget.ui-widget-content.ui-autocomplete.ui-front {
        max-width: 100%;
        padding-right: 0;
        z-index: 9999999;
    }


    .group_sign_image {
        max-width: 300px;
    }

    .hide-sm-device {
        display: none;
    }

    body:not(.home) .footer-bottom {
        flex-direction: column;
    }

    body:not(.home) .book-image {
        height: auto;
    }

    .header-content {
        flex-direction: column;
        gap: 20px;
    }

    .nav-menu {
        flex-wrap: wrap;
        justify-content: center;
        gap: 15px;
    }

    .header-actions {
        width: 100%;
        justify-content: center;
    }

    body:not(.home) .profile-info h1 {
        font-size: 40px;
        font-weight: 48px;
    }

    body:not(.home) div#stat-card-1 {
        background-color: #142e49;
    }


    body:not(.home) .footer-columns {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }
    body:not(.home) .footer-columns > :first-child {
        grid-column: 1 / -1;
    }

    .subscription-form {
        flex-direction: column;
    }

    .email-input-wrapper {
        width: 100%;
    }

    .subscribe-btn {
        width: 100%;
    }
    body:not(.home) .fa-header {
        margin-bottom: 20px;
    }
    /* 
    .fa-header {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    } */

    .partner-box {
        flex-direction: column;
        text-align: center;
    }

    .subscription-section {
        padding: 30px 0;
        margin: 0;
    }

    .profile-section .image-card img {
        max-width: 100%;
    }

    body:not(.home) .stats-container {
        padding: 0;
    }

    .breadcrumb-wrapper {
        margin: 0 auto;
        background: transparent;
        padding: 15px 0;
        border-radius: unset;
        border: unset;
    }

    .qa_infow_wrapper {
        padding: 0;
        border-bottom: 1px solid var(--ds-color-brand-accent);
    }

    .article_wrapper .container-sm {
        border: unset;
    }
}

.card.qa-card.h-100 {
    background: var(--card-bg);
    border: 1px solid var(--ds-color-border-default);
    overflow: hidden;
    border-radius: var(--ds-radius-md);
    box-shadow: var(--card-shadow);
    transition: var(--transition);
}
@media (max-width: 479.98px) {
    .ds-c-article-meta {
        gap: var(--ds-space-gap-sm);
    }
    .ds-c-article-sidebar {
        padding: 0;
        background: var(--ds-color-bg-canvas);
    }

    .featured-articles .fa-meta,
    body:not(.home) .qa-featured .fa-card-meta,
    body:not(.home) .qa-card .fa-card-meta,
    .featured-archive_featured .fa-meta {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        gap: 10px;
       
    }


    #sub_question .btn-group,
    body:not(.home) .profile-section .btn-group {
        flex-direction: column;
    }

    body:not(.home) .stats-container {
        flex-direction: column;
        padding: 0;
        width: 100%;
    }

    body:not(.home) .stat-card {
        min-width: 100%;
    }

    .signature-logo {
        font-size: 28px;
    }

    .nav-menu {
        gap: 10px;
    }

    .nav-menu a {
        font-size: 14px;
    }

    /* .profile-info h1 {
        font-size: 1.75rem;
    }

    .fa-main-content {
        padding: 20px;
    }

    .qa-title {
        font-size: 1.5rem;
    } */

}
button#DesktopSearchToggle {
    border: transparent;
    background: transparent;
    color: var(--ds-color-text-strong);
    padding: 0;
}

/* Mobile search overlay */
.mobile-search-overlay.active {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.ds-c-search-overlay[aria-hidden="false"] {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.mobile-search-inner {
    display: flex;
    align-items: flex-start;
    gap: var(--ds-space-3);
    max-width: 1120px;
    margin: 0 auto;
}


form.homepage-search-form {
    width: 100%;
}

.mobile-search-inner button {
    border: none;
    color: var(--ds-color-text-on-primary);
    cursor: pointer;
}

#mobileSearchOverlay .homepage-search-form {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-3);
}

#mobileSearchOverlay .input_wrapper {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-xl);
    background: var(--ds-color-bg-surface);
    box-shadow: 0 18px 42px rgba(12, 33, 71, 0.12);
    overflow: hidden;
}

#mobileSearchOverlay .input_wrapper:focus-within {
    border-color: var(--ds-color-brand-accent);
    box-shadow: 0 0 0 4px rgba(197, 160, 89, 0.14), 0 18px 42px rgba(12, 33, 71, 0.12);
}

#mobileSearchOverlay #mobile-search {
    min-height: 56px;
    padding: 0 18px 0 52px;
    border: none;
    border-radius: var(--ds-radius-xl);
    background: transparent;
    color: var(--dark-blue);
    font-size: 1rem;
    box-shadow: none;
}

#mobileSearchOverlay #mobile-search::placeholder {
    color: var(--ds-color-text-body);
}

#mobileSearchOverlay #mobile-search:focus {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
    box-shadow: none;
}

button#mobileSearchClose{
    background: var(--ds-color-brand-primary);
    width: 48px;
    min-width: 48px;
    height: 48px;
    padding: 0;
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-md);
}
.mobile-search-close {
    border: none;
    font-size: 18px;
    cursor: pointer;
}
.mobile-search-toggle {
    background: none;
    border: none;
    font-size: 18px;
    cursor: pointer;
}

.mobile-search-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: color-mix(in srgb, var(--ds-color-bg-surface-muted) 96%, transparent);
    border-bottom: 1px solid var(--ds-color-border-default);
    z-index: var(--ds-z-overlay);
    padding: 14px 16px 16px;
    opacity: 0;
    transform: translateY(-110%);
    visibility: hidden;
    transition: transform var(--ds-motion-base) var(--ds-ease-standard), opacity var(--ds-motion-base) var(--ds-ease-standard), visibility var(--ds-motion-base) var(--ds-ease-standard);
    box-shadow: var(--ds-shadow-lg);
    backdrop-filter: blur(12px);
}

body.admin-bar .mobile-search-overlay {
    top: 32px;
}

#mobileSearchOverlay .input_wrapper span{
      left: 18px;
      top: 50%;
      transform: translateY(-50%);
}
.ui-widget.ui-widget-content{
    z-index: 9999999 !important;
}
@media (max-width: 991.98px) {
   /* Size, colour and alignment come from the shared 44px header icon
      button rule in base.css. */
   button#mobileSearchToggle {
    background: transparent;
    padding: 0;
    margin: 0;
} 

}

@media (max-width: 782px) {
    body.admin-bar .mobile-search-overlay {
        top: 46px;
    }
}

@media (max-width: 767.98px) {
    body:not(.home) .stat-card p b{
        font-size: 20px;
    }
body:not(.home) .stat-card p small{
    font-size: 14px;
}

    body:not(.home) .slick-dotted.slick-slider{
        margin-bottom: 60px !important;
    }
    body:not(.home) .card.book-card.h-100 {
    padding: 0 !important;
}
body:not(.home) .slick-list.draggable {
    padding: 20px 0;
}
    body:not(.home) .slick-dots li button{
        background-color: transparent !important;
    }
body:not(.home) .slick-dots li{
    width: 10px !important;
}
article.qa-card.bg-white.mb-4.p-4 {
    padding: 1.5rem 1rem !important;
}
body:not(.home) .q_a_info p {
    font-size: 16px;
    text-align: left;
}

}

/* Q&A archive page-specific overrides */
body.page-template-page-qa-posts .archive-page {
    background: var(--ds-color-bg-canvas);
}

body.page-template-page-qa-posts section.featured-archive_featured {
    padding: var(--ds-space-section-sm) 0;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar {
    margin-bottom: var(--ds-space-section-sm);
}

body.page-template-page-qa-posts .archive-controls-shell.ds-c-archive-toolbar__controls {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
    padding: var(--ds-space-inset-lg);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__search {
    margin-bottom: var(--ds-space-4);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__search .ds-c-input {
    display: block;
    width: 100%;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__summary {
    gap: var(--ds-space-gap-md);
    flex-wrap: wrap;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__count {
    margin-top: 0;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__actions {
    margin-left: auto;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm);
}

@media (min-width: 992px) {
    body.page-template-page-qa-posts .archive-controls-shell.ds-c-archive-toolbar__controls {
        display: grid;
        grid-template-columns: minmax(0, 32rem) 1fr;
        gap: var(--ds-space-gap-md) var(--ds-space-gap-lg);
        align-items: center;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__search {
        width: min(100%, 32rem);
        margin-bottom: 0;
        grid-column: 1;
        grid-row: 1;
        flex: none;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__summary {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: var(--ds-space-gap-md);
        grid-column: 1 / -1;
        grid-row: 2;
        min-width: 0;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__count {
        white-space: nowrap;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__sort {
        display: inline-flex;
        align-items: center;
        gap: var(--ds-space-gap-sm);
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__sort label {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        margin: 0;
        white-space: nowrap;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__sort .ds-c-select {
        min-width: 9.5rem;
        margin: 0;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__actions {
        margin-left: auto;
        align-items: center;
        justify-content: flex-end;
        flex: 0 0 auto;
    }
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__sort {
    margin: 0;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__sort .ds-c-select {
    min-height: 44px;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
    box-shadow: none;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__view {
    background: var(--ds-color-bg-surface-muted);
}

body.page-template-page-qa-posts .archive-view__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: var(--ds-space-2);
    border: 1px solid transparent;
    border-radius: var(--ds-radius-md);
    background: transparent;
    transition: background-color var(--ds-motion-base) var(--ds-ease-standard),
        border-color var(--ds-motion-base) var(--ds-ease-standard);
}

body.page-template-page-qa-posts .archive-view__button.active {
    background: var(--ds-color-bg-surface);
    border-color: var(--ds-color-border-default);
}

body.page-template-page-qa-posts .archive-view__button .active_image {
    display: none;
}

body.page-template-page-qa-posts .archive-view__button .normal_image {
    display: block;
}

body.page-template-page-qa-posts .archive-view__button.active .active_image {
    display: block;
}

body.page-template-page-qa-posts .archive-view__button.active .normal_image {
    display: none;
}

body.page-template-page-qa-posts .archive-view__button:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-gap-sm);
    width: 100%;
    min-height: 44px;
    padding: var(--ds-space-4) var(--ds-space-5);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
    color: var(--ds-color-text-heading);
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
    font-weight: var(--ds-font-weight-semibold);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle:hover {
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-brand-accent);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle .arrow_icon {
    padding-right: 0;
    transition: transform var(--ds-motion-base) var(--ds-ease-standard);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle .group_sign_image {
    width: 1rem;
    height: 1rem;
    max-width: 1rem;
    max-height: 1rem;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle.is-open,
body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle.active {
    border-color: var(--ds-color-brand-accent);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle.is-open .arrow_icon,
body.page-template-page-qa-posts .ds-c-archive-toolbar__toggle.active .arrow_icon {
    transform: rotate(180deg);
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__panel[hidden] {
    display: none !important;
}

body.page-template-page-qa-posts .ds-c-archive-toolbar__panel .archive-filters {
    padding: var(--ds-space-inset-lg);
    box-shadow: var(--ds-shadow-sm);
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] {
    gap: var(--ds-space-gap-lg);
}

body.page-template-page-qa-posts .ds-c-pagination-shell {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: var(--ds-space-8);
    margin-bottom: var(--ds-space-section-md);
}

body.page-template-page-qa-posts .ds-c-pagination-shell .ds-c-pagination {
    margin-top: 0;
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card.ds-c-card {
    border-radius: var(--ds-radius-xl);
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .qa-card__body.ds-c-card__body {
    padding: var(--ds-space-4);
    gap: var(--ds-space-stack-sm);
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .qa-card__header {
    margin-bottom: var(--ds-space-2);
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .qa-card__content {
    gap: var(--ds-space-stack-sm);
}

body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card__meta.ds-c-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-gap-sm);
    flex-wrap: wrap;
}

body.page-template-page-qa-posts .ds-c-question-cta {
    background: var(--ds-color-brand-primary);
    border: 1px solid var(--ds-color-brand-accent);
    border-radius: var(--ds-radius-xl);
    padding: var(--ds-space-inset-xl);
    box-shadow: var(--ds-shadow-sm);
}

body.page-template-page-qa-posts .ds-c-question-cta .card {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
}

body.page-template-page-qa-posts .ds-c-question-cta .card-body {
    display: grid;
    gap: var(--ds-space-stack-md);
    padding: 0;
}

body.page-template-page-qa-posts .ds-c-question-cta h5 {
    margin: 0;
    color: var(--ds-color-text-on-primary);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

body.page-template-page-qa-posts .ds-c-question-cta p {
    margin: 0;
    color: color-mix(in srgb, var(--ds-color-text-on-primary) 88%, transparent);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

body.page-template-page-qa-posts .ds-c-question-cta a.btn-gold {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    width: 100%;
    padding: var(--ds-space-4) var(--ds-space-6);
    border: 1px solid transparent;
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-brand-accent);
    color: var(--ds-color-text-on-accent);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    font-weight: var(--ds-font-weight-semibold);
    text-decoration: none;
}

body.page-template-page-qa-posts .ds-c-question-cta a.btn-gold:hover,
body.page-template-page-qa-posts .ds-c-question-cta a.btn-gold:focus-visible {
    background: var(--ds-color-brand-accent-deep);
    color: var(--ds-color-text-on-primary);
}

@media (max-width: 767.98px) {
    .ds-c-pagination {
        margin-top: var(--ds-space-4);
    }

    .ds-c-pagination__list {
        gap: 0;
    }

    .pagination .page-link,
    .pagination .page-link.page-numbers.dots {
        min-width: 2.5rem;
        min-height: 2.5rem;
        margin: 0;
        padding: var(--ds-space-2) var(--ds-space-3);
        border-radius: var(--ds-radius-sm);
        font-size: var(--ds-font-size-sm);
        line-height: var(--ds-line-height-tight);
    }

    .pagination .page-item + .page-item {
        margin-left: var(--ds-space-1);
    }

    .pagination .page-item:last-child .page-link,
    .pagination .page-item:first-child .page-link {
        padding-inline: var(--ds-space-3);
    }

    body.page-template-page-qa-posts .archive-header h1 {
        font-size: var(--ds-heading-h1-size);
        line-height: var(--ds-heading-h1-line-height);
    }

    body.page-template-page-qa-posts .archive-header p {
        max-width: none;
        margin-bottom: 0;
        font-size: var(--ds-font-size-body-lg);
        line-height: var(--ds-type-body-lg-line-height);
    }

    body.page-template-page-qa-posts .archive-controls-shell.ds-c-archive-toolbar__controls {
        display: grid;
        gap: var(--ds-space-gap-md);
        padding: var(--ds-space-inset-md);
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__summary {
        align-items: flex-start;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__actions {
        width: 100%;
        margin-left: 0;
        justify-content: space-between;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__sort {
        flex: 1 1 12rem;
        min-width: 0;
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__sort label {
        margin-bottom: var(--ds-space-2);
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__view {
        margin-left: auto;
    }

    body.page-template-page-qa-posts .archive-grid[attr="qa"] {
        grid-template-columns: 1fr;
        margin-top: var(--ds-space-gap-lg);
    }

    body.page-template-page-qa-posts .ds-c-pagination-shell {
        margin-top: var(--ds-space-gap-lg);
        margin-bottom: var(--ds-space-section-sm);
    }

    body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .qa-card__body.ds-c-card__body {
        padding: var(--ds-space-4);
    }

    body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .ds-c-card__title,
    body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .ds-c-card__title a.ds-c-link {
        font-size: var(--ds-heading-h3-size);
        line-height: var(--ds-heading-h3-line-height);
    }

    body.page-template-page-qa-posts .archive-grid[attr="qa"] .qa-card .ds-c-card__excerpt {
        font-size: var(--ds-font-size-body-lg);
        line-height: var(--ds-type-body-lg-line-height);
    }

    .archive_qa-featured .qa-featured__body.ds-c-card__body {
        padding: var(--ds-space-inset-lg);
    }

    body.page-template-page-qa-posts .ds-c-archive-toolbar__panel .archive-filters {
        padding: var(--ds-space-inset-md);
    }

    body.page-template-page-qa-posts .filter-list {
        display: grid;
        gap: var(--ds-space-gap-sm);
    }

    body.page-template-page-qa-posts .filter-list li {
        margin-bottom: 0;
    }

    body.page-template-page-qa-posts .ds-c-question-cta {
        padding: var(--ds-space-inset-lg);
    }
}

@media (max-width: 419.98px) {
    
    body:not(.home) a.btn.btn-primary.btn-custom, body:not(.home) button.btn.btn-primary.btn-custom,
    body:not(.home) a.btn.btn-outline-primary.btn-outline-custom
    {
        padding: var(--ds-space-4) var(--ds-space-6);
    }
    body:not(.home) .section-title {
        font-size: 32px;
        line-height: 36px;
        text-align: left;
    }

    body:not(.home) .about-page-academic .section-title {
        text-align: center;
    }

    body:not(.home) .about-page-major .section-title {
        text-align: center;
    }

    body:not(.home) .profile-section h4 a, body:not(.home) .profile-info h1 a, .fa-main-content h3 a, .fa-card-content h5 a, .qa-title a, .qa-title-sm a, body:not(.home) .book-title a, .course-card h3 a,
    .qa-title {
        font-size: 22px;
        line-height: 114%;
    }
    body:not(.home) .featured-articles p, p.majordescription, .about_us_mission_data p, section.featured-archive_featured p
 {
    text-align: left;
        line-height: 150%;
        font-size: 16px;
    }

    body.single-post #main-article-content .details-artical,
    body.single-post #main-article-content .ds-c-rich-text {
        font-size: var(--ds-font-size-body-md);
        line-height: var(--ds-type-body-md-line-height);
    }

    body.single-post #main-article-content .ds-c-rich-text--formatted {
        font-size: var(--ds-font-size-body-lg);
        line-height: var(--ds-type-body-lg-line-height);
    }
}

/* Static page design-system overrides */
.ds-page-section {
    background: var(--ds-color-bg-canvas);
    padding: var(--ds-space-section-lg) 0;
}

.ds-page-section .container-sm {
    max-width: 960px;
}

.ds-page-shell {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-xl);
    box-shadow: var(--ds-shadow-sm);
    padding: var(--ds-space-inset-xl);
}

.ds-page-article {
    margin: 0;
}

.ds-page-header,
.singular .ds-page-header {
    margin: 0 0 var(--ds-space-section-sm);
    padding: 0 0 var(--ds-space-6);
    border-bottom: 1px solid var(--ds-color-border-default);
}

.ds-page-header .entry-title {
    margin: 0;
    font-size: var(--ds-heading-h1-size);
    line-height: var(--ds-heading-h1-line-height);
    font-weight: var(--ds-heading-h1-weight);
    text-align: center;
    color: var(--ds-color-text-heading);
}

.ds-page-prose {
    max-width: 720px;
    margin: 0 auto;
    color: var(--ds-color-text-body);
}

.ds-page-prose > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.wp-block-separator) {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.ds-page-prose p,
.about_us_page_data .ds-page-prose p {
    margin: 0;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

.ds-page-prose h2,
.ds-page-prose h3,
.ds-page-prose h4,
.ds-page-prose h5,
.ds-page-prose h6 {
    margin: 0;
    color: var(--ds-color-text-heading);
}

.ds-page-prose h2 {
    font-size: var(--ds-heading-h2-size);
    line-height: var(--ds-heading-h2-line-height);
    font-weight: var(--ds-heading-h2-weight);
}

.ds-page-prose h3 {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
}

.ds-page-prose h4 {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

.ds-page-prose ul,
.ds-page-prose ol {
    margin: 0;
    padding-left: var(--ds-space-6);
    color: var(--ds-color-text-body);
}

.ds-page-prose li {
    margin: var(--ds-space-2) 0;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

.ds-page-prose a:not(.wp-block-button__link),
.about_us_page_data .ds-page-prose a:not(.wp-block-button__link) {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, var(--ds-color-link) 35%, transparent);
    text-decoration-thickness: 1px;
}

.ds-page-prose a:not(.wp-block-button__link):hover,
.ds-page-prose a:not(.wp-block-button__link):focus-visible,
.about_us_page_data .ds-page-prose a:not(.wp-block-button__link):hover,
.about_us_page_data .ds-page-prose a:not(.wp-block-button__link):focus-visible {
    color: var(--ds-color-link-hover);
    text-decoration-color: currentColor;
}

.ds-page-prose strong {
    color: var(--ds-color-text-strong);
}

.ds-page-prose blockquote,
.about_us_page_data blockquote {
    margin: 0;
    padding: var(--ds-space-inset-lg);
    border-left: 4px solid var(--ds-color-brand-accent);
    border-radius: 0 var(--ds-radius-lg) var(--ds-radius-lg) 0;
    background: var(--ds-color-bg-surface-muted);
}

.ds-page-prose blockquote p,
.about_us_page_data blockquote p {
    font-style: italic;
    color: var(--ds-color-text-heading);
}

.about_us_page_data blockquote:before {
    color: color-mix(in srgb, var(--ds-color-brand-accent) 32%, transparent);
}

.ds-page-prose table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    display: block;
    overflow-x: auto;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
}

.ds-page-prose th,
.ds-page-prose td {
    padding: var(--ds-space-3) var(--ds-space-4);
    border-bottom: 1px solid var(--ds-color-border-default);
    text-align: left;
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    color: var(--ds-color-text-body);
}

.ds-page-prose th {
    font-weight: var(--ds-font-weight-semibold);
    color: var(--ds-color-text-heading);
    background: var(--ds-color-bg-surface-muted);
}

.ds-page-prose tr:last-child td {
    border-bottom: 0;
}

.ds-page-prose pre,
.ds-page-prose code {
    font-family: ui-monospace, "SFMono-Regular", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

.ds-page-prose pre {
    padding: var(--ds-space-4);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-brand-primary);
    color: var(--ds-color-text-on-primary);
    overflow-x: auto;
}

.ds-page-prose :not(pre) > code {
    padding: 0.15rem 0.35rem;
    border-radius: var(--ds-radius-sm);
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-strong);
}

.ds-page-prose .wp-block-button__link {
    border-radius: var(--ds-radius-md);
    padding: 0.8rem 1rem;
    min-height: 44px;
}

.ds-page-prose .wp-block-button.is-style-outline .wp-block-button__link {
    border-color: var(--ds-color-brand-primary);
    color: var(--ds-color-brand-primary);
}

.ds-page-prose hr {
    margin: var(--ds-space-8) 0;
    border: 0;
    border-top: 1px solid var(--ds-color-border-default);
}

body:not(.home) section.about_us_info,
body:not(.home) .question_page_info,
body:not(.home) section.question_form,
body:not(.home) section.contact-section,
body:not(.home) section.about_us_page_data,
body:not(.home) section.about_us_academic,
body:not(.home) section.about_us_major_data,
body:not(.home) section.about_us_mission_data,
body:not(.home) section.faq-secton {
    padding: var(--ds-space-section-md) 0;
}

body:not(.home) section.about_us_info,
body:not(.home) section.about_us_page_data,
body:not(.home) section.about_us_major_data,
body:not(.home) section.question_form,
body:not(.home) section.contact-section,
body:not(.home) .question_page_info {
    background: var(--ds-color-bg-canvas);
}

body:not(.home) section.about_us_academic,
body:not(.home) section.about_us_mission_data,
body:not(.home) section.faq-secton {
    background: var(--ds-color-bg-surface);
}

body:not(.home) section.about_us_info .container-sm,
body:not(.home) .question_page_info .container-sm {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

body:not(.home) section.about_us_info h1,
body:not(.home) .question_page_info h1 {
    font-size: var(--ds-heading-h1-size);
    line-height: var(--ds-heading-h1-line-height);
    font-weight: var(--ds-heading-h1-weight);
    text-align: center;
    color: var(--ds-color-text-heading);
}

body:not(.home) .about_us_info p,
body:not(.home) .question_page_info p {
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
    color: var(--ds-color-text-body);
}

body:not(.home) p.onlybg {
    background: var(--ds-color-brand-accent);
    min-height: 3px;
    max-width: 100px;
    margin: var(--ds-space-6) auto 0;
}

body:not(.home) .about-page-hero {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-10);
}

body:not(.home) .about-page-hero__content,
body:not(.home) .about-page-mission .col-12 {
    display: grid;
    gap: var(--ds-space-stack-md);
    justify-items: center;
    text-align: center;
}

body:not(.home) .about-page-hero__content {
    max-width: 52rem;
    margin: 0 auto;
}

body:not(.home) .about-page-hero h1,
body:not(.home) .about-page-hero p,
body:not(.home) .about-page-mission h2,
body:not(.home) .about-page-mission p {
    margin: 0;
}

body:not(.home) .about-page-hero h1,
body:not(.home) .about-page-academic .section-title,
body:not(.home) .about-page-major .section-title,
body:not(.home) .about-page-mission .section-title {
    text-wrap: balance;
}

body:not(.home) .about-page-intro {
    padding-top: var(--ds-space-6);
}

body:not(.home) .about-page-intro .ds-page-prose {
    display: grid;
    gap: var(--ds-space-stack-md);
    max-width: 47.5rem;
}

body:not(.home) .about-page-intro .ds-page-prose > * {
    margin: 0;
}

body:not(.home) .about-page-intro blockquote {
    padding: var(--ds-space-inset-lg);
    box-shadow: var(--ds-shadow-sm);
}

body:not(.home) .about-page-intro blockquote p {
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

body.page-template-page-about .about-page-website,
body.page-template-page-research-centre .about-page-research-centre {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-section-md);
}

body.page-template-page-about .about-page-website .ds-page-prose,
body.page-template-page-research-centre .about-page-research-centre .ds-page-prose {
    display: grid;
    gap: var(--ds-space-stack-lg);
    max-width: 47.5rem;
    margin: 0 auto;
}

body.page-template-page-about .about-page-website .ds-page-prose > *,
body.page-template-page-research-centre .about-page-research-centre .ds-page-prose > * {
    margin: 0;
}

body.page-template-page-research-centre .about-page-research-centre .ds-page-prose h2 {
    margin-top: var(--ds-space-8);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    color: var(--ds-color-text-heading);
    text-wrap: balance;
}

body.page-template-page-about .about-page-website .ds-page-prose a,
body.page-template-page-research-centre .about-page-research-centre .ds-page-prose a {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-decoration-color: var(--ds-color-brand-accent-deep);
    text-underline-offset: var(--ds-space-1);
}

body.page-template-page-about .about-page-website .ds-page-prose a:hover,
body.page-template-page-research-centre .about-page-research-centre .ds-page-prose a:hover {
    color: var(--ds-color-link-hover);
}

/* ---------------------------------------------------------------------------
   Support the Work: shared landing-page hero, quiet funding list and status.
   --------------------------------------------------------------------------- */

body.page-template-page-support-the-work .about-page-hero {
    padding-bottom: var(--ds-space-section-md);
}

.support-page-content {
    padding: var(--ds-space-section-md) 0 var(--ds-space-section-lg);
    background: var(--ds-color-bg-surface);
}

.support-page-content .container-sm {
    max-width: var(--ds-container-max-md);
}

.support-page-prose {
    display: grid;
    gap: var(--ds-space-stack-xl);
    max-width: var(--ds-container-max-md);
}

.support-page-prose > * {
    margin: 0;
}

.support-page-prose > h2:first-child {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    text-wrap: balance;
}

.support-page-prose > ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ds-space-gap-md) var(--ds-space-gap-xl);
    padding: 0;
    list-style: none;
}

.support-page-prose > ul li {
    position: relative;
    margin: 0;
    padding: var(--ds-space-4) 0 var(--ds-space-4) var(--ds-space-6);
    border-top: 1px solid var(--ds-color-border-default);
    color: var(--ds-color-text-strong);
}

.support-page-prose > ul li::before {
    content: '';
    position: absolute;
    top: calc(var(--ds-space-4) + 0.55em);
    left: 0;
    width: var(--ds-space-2);
    height: var(--ds-space-2);
    border-radius: var(--ds-radius-pill);
    background: var(--ds-color-brand-accent);
}

.support-page-status {
    display: grid;
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface-muted);
}

.support-page-status h2,
.support-page-status p {
    margin: 0;
}

.support-page-status h2 {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    text-wrap: balance;
}

@media (max-width: 767.98px) {
    body.page-template-page-support-the-work .about-page-hero {
        padding-top: var(--ds-space-section-sm);
        padding-bottom: var(--ds-space-section-sm);
    }

    .support-page-content {
        padding: var(--ds-space-section-sm) 0 var(--ds-space-section-md);
    }

    .support-page-content .container-sm {
        padding-right: var(--ds-container-padding-x);
        padding-left: var(--ds-container-padding-x);
    }

    .support-page-prose {
        gap: var(--ds-space-stack-lg);
    }

    .support-page-prose > ul {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .support-page-status {
        padding: var(--ds-space-inset-md);
    }
}

/* ---------------------------------------------------------------------------
   About-me bio restructure: headed sections, lede, portrait intro.
   Scoped to the about-me template only. Use a grid intro instead of float
   wrapping so the portrait never squeezes the lede or leaves a cleared gap.
   --------------------------------------------------------------------------- */
body.page-template-page-about-me .about-page-intro .ds-page-prose {
    display: grid;
    grid-template-columns: minmax(20rem, 1fr) minmax(15rem, 18rem);
    column-gap: var(--ds-space-gap-lg);
    row-gap: var(--ds-space-stack-md);
    align-items: start;
    max-width: 62rem;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > * {
    margin: 0;
    grid-column: 1 / -1;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > :last-child {
    margin-bottom: 0;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose h2 {
    margin-top: var(--ds-space-8);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
    color: var(--ds-color-text-heading);
    clear: none;
    text-wrap: balance;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > .about-bio-lede {
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
    text-align: left;
    grid-column: 1;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > .about-bio-portrait {
    float: none;
    grid-column: 2;
    grid-row: 1 / span 4;
    width: 100%;
    max-width: 18rem;
    margin: 0;
    justify-self: end;
    clear: none;
}

body.page-template-page-about-me .about-bio-portrait img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 0;
    border: 1px solid var(--ds-color-border-default);
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > h2:nth-of-type(1),
body.page-template-page-about-me .about-page-intro .ds-page-prose > p:nth-of-type(2),
body.page-template-page-about-me .about-page-intro .ds-page-prose > p:nth-of-type(3) {
    grid-column: 1;
}

body.page-template-page-about-me .about-page-intro .ds-page-prose > h2:nth-of-type(1) {
    margin-top: var(--ds-space-4);
}

@media (max-width: 991.98px) {
    body.page-template-page-about-me .about-page-intro .ds-page-prose {
        grid-template-columns: minmax(19rem, 1fr) minmax(12rem, 15rem);
        max-width: 47.5rem;
    }
}

@media (max-width: 767.98px) {
    body.page-template-page-about-me .about-page-intro .ds-page-prose {
        display: block;
    }

    body.page-template-page-about-me .about-page-intro .ds-page-prose > * {
        margin: 0 0 var(--ds-space-4);
    }

    body.page-template-page-about-me .about-page-intro .ds-page-prose > .about-bio-portrait {
        display: block;
        width: 100%;
        max-width: 18rem;
        margin: 0 auto var(--ds-space-6);
        justify-self: center;
    }

    body.page-template-page-about-me .about-page-intro .ds-page-prose h2 {
        margin: var(--ds-space-8) 0 var(--ds-space-4);
    }
}

body:not(.home) .about-page-academic-grid {
    row-gap: var(--ds-space-gap-lg);
}

body:not(.home) .about-page-academic .card {
    max-width: none;
    width: 100%;
    height: 100%;
}

body:not(.home) .about-page-academic .card .card-body {
    height: 100%;
    align-items: flex-start;
    text-align: left;
}

body:not(.home) .about-page-academic .card-body img {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
}

body:not(.home) .about-page-academic h5,
body:not(.home) .about-page-academic p {
    text-align: left;
}

body:not(.home) .about-page-major .row {
    --bs-gutter-y: var(--ds-space-5);
    row-gap: var(--ds-space-gap-md);
}

body:not(.home) .about-page-major {
    padding-top: var(--ds-space-10);
    padding-bottom: var(--ds-space-10);
}

body:not(.home) .about-page-major .row.mt-3 {
    margin-top: var(--ds-space-4) !important;
}

body:not(.home) .about-page-major .card {
    padding: 0;
    overflow: hidden;
}

body:not(.home) .about-page-major .ds-c-card__body {
    display: grid;
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-inset-xl);
}

body:not(.home) .about-page-major .majortitle {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

body:not(.home) .about-page-mission p.onlybg {
    margin-top: var(--ds-space-4);
}

/* ---------------------------------------------------------------------------
   M6 About restructure: shared section nav, Organisations, Publications.
   --------------------------------------------------------------------------- */
.about-section-nav {
    background: var(--ds-color-bg-canvas);
    border-bottom: 1px solid var(--ds-color-border-default);
}

.about-section-nav__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--ds-space-2);
    margin: 0;
    padding: var(--ds-space-3) 0;
    list-style: none;
}

.about-section-nav__link {
    display: inline-flex;
    align-items: center;
    min-height: 2.5rem;
    padding: var(--ds-space-2) var(--ds-space-3);
    border-radius: var(--ds-radius-pill);
    color: var(--ds-color-text-body);
    text-decoration: none;
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-semibold);
}

.about-section-nav__link:hover,
.about-section-nav__link:focus-visible,
.about-section-nav__link.is-current {
    color: var(--ds-color-link-hover);
    background: var(--ds-color-bg-surface-muted);
}

.about-page-organisations,
.about-page-publications,
.about-page-links {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-section-md);
}

body.page-template-page-publications .about-page-publications {
    background: var(--ds-color-bg-canvas);
}

body.page-template-page-publications .about-page-publications > .container-sm {
    max-width: var(--ds-container-max-xl);
}

body.page-template-page-organisations .about-page-organisations {
    background: var(--ds-color-bg-canvas);
}

body.page-template-page-organisations .about-page-organisations > .container-sm {
    max-width: var(--ds-container-max-xl);
}

.about-page-organisations__intro,
.about-page-publications__intro,
.about-page-links__body {
    max-width: 47.5rem;
    margin-bottom: var(--ds-space-8);
}

body.page-template-page-organisations .about-page-organisations__intro {
    max-width: 52rem;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

body.page-template-page-organisations .about-page-organisations__intro > * {
    margin-bottom: var(--ds-space-stack-md);
}

body.page-template-page-organisations .about-page-organisations__intro > :last-child {
    margin-bottom: 0;
}

.about-organisation-tier {
    margin-top: var(--ds-space-section-md);
}

.about-organisation-tier:first-of-type {
    margin-top: 0;
}

.about-organisation-tier .section-title {
    margin-bottom: var(--ds-space-4);
}

body.page-template-page-organisations .about-organisation-tier .section-title {
    margin-bottom: var(--ds-space-6);
    text-align: center;
}

body.page-template-page-organisations .about-organisation-tier--primary .about-card-grid--organisations {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-template-page-organisations .about-organisation-tier--primary .about-org-card {
    text-align: center;
}

body.page-template-page-organisations .about-organisation-tier--primary .about-org-card .ds-c-card__body {
    justify-items: center;
}

body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__logo-wrap {
    width: 100%;
    justify-content: center;
}

body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__description {
    margin-right: auto;
    margin-left: auto;
}

body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__link {
    justify-self: center;
}

.about-card-grid--tier-two {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-organisation-tier__note {
    max-width: 48rem;
    margin: calc(var(--ds-space-2) * -1) 0 var(--ds-space-4);
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.about-organisation-names {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-sm) var(--ds-space-gap-lg);
    margin: 0;
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-strong);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

.about-organisation-names li {
    margin-left: var(--ds-space-4);
}

.about-page-links__intro {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(12rem, 16rem);
    gap: var(--ds-space-gap-lg);
    align-items: start;
    margin-bottom: var(--ds-space-8);
}

.about-page-links__intro .ds-page-prose > :last-child,
.about-page-links__body > :last-child {
    margin-bottom: 0;
}

.about-page-links__stat {
    display: grid;
    gap: var(--ds-space-2);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
}

.about-page-links__stat-number {
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h2-size);
    line-height: var(--ds-heading-h2-line-height);
    font-weight: var(--ds-heading-h2-weight);
    color: var(--ds-color-text-heading);
}

.about-page-links__stat-label {
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-sm);
}

.about-card-grid {
    display: grid;
    gap: var(--ds-space-gap-lg);
}

.about-link-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ds-space-gap-lg);
}

.about-card-grid--organisations {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-card-grid--major-works {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: var(--ds-space-4);
}

.about-org-card,
.about-link-card,
.about-card-grid .ds-c-card {
    height: 100%;
}

.about-org-card,
.about-link-card {
    color: inherit;
    text-decoration: none;
}

body.page-template-page-organisations .about-org-card {
    padding: var(--ds-space-inset-xl);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

body.page-template-page-organisations .about-org-card--linked {
    border-top: 3px solid var(--ds-color-brand-accent);
}

body.page-template-page-organisations .about-org-card--quiet {
    background: var(--ds-color-bg-surface-muted);
    box-shadow: none;
}

body.page-template-page-organisations .about-org-card__logo-wrap {
    justify-content: flex-start;
    min-height: 5.5rem;
    padding-bottom: var(--ds-space-2);
}

body.page-template-page-organisations .about-org-card__meta {
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-caption);
    font-weight: var(--ds-font-weight-semibold);
    letter-spacing: var(--ds-type-overline-letter-spacing);
    line-height: var(--ds-type-overline-line-height);
    text-transform: uppercase;
}

body.page-template-page-organisations .about-org-card__title {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
}

body.page-template-page-organisations .about-org-card__description {
    max-width: 60ch;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

body.page-template-page-organisations .about-org-card__link {
    color: var(--ds-color-link);
    font-size: var(--ds-font-size-sm);
}

.about-org-card--linked,
.about-link-card--linked {
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.about-org-card--linked:hover,
.about-org-card--linked:focus-visible,
.about-link-card--linked:hover,
.about-link-card--linked:focus-visible {
    color: inherit;
    text-decoration: none;
    transform: translateY(-2px);
    box-shadow: var(--ds-shadow-md);
    border-color: var(--ds-color-link-hover);
}

.about-org-card .ds-c-card__body,
.about-link-card .ds-c-card__body,
.about-card-grid .ds-c-card__body {
    display: grid;
    gap: var(--ds-space-stack-sm);
    height: 100%;
}

.about-org-card__logo-wrap {
    display: flex;
    align-items: center;
    min-height: 5.75rem;
    margin-bottom: var(--ds-space-2);
}

.about-org-card__logo {
    display: block;
    width: auto;
    max-width: 11rem;
    max-height: 4.75rem;
    object-fit: contain;
}

.about-org-card__logo--portrait {
    max-height: 7rem;
}

.about-org-card__meta,
.about-org-card__title,
.about-org-card__description,
.about-link-card__meta,
.about-link-card__title,
.about-link-card__description,
.about-card-grid .ds-c-card__title,
.about-card-grid .ds-c-card__excerpt {
    margin: 0;
}

.about-org-card__title,
.about-link-card__title,
.about-card-grid .ds-c-card__title {
    text-wrap: balance;
}

.about-org-card__link,
.about-link-card__cta {
    align-self: end;
    margin-top: var(--ds-space-2);
    font-weight: var(--ds-font-weight-semibold);
}

.about-org-card--quiet,
.about-link-card--quiet {
    background: var(--ds-color-bg-surface-muted);
}

.about-publications-overview {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--ds-space-gap-md);
    margin-bottom: var(--ds-space-8);
}

.about-publications-overview__item {
    display: grid;
    align-content: start;
    gap: var(--ds-space-2);
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

.about-publications-overview__number {
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h2-size);
    line-height: var(--ds-heading-h2-line-height);
    font-weight: var(--ds-heading-h2-weight);
    color: var(--ds-color-text-heading);
}

.about-publications-overview__label {
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-sm);
}

.about-publications-featured,
.about-books-list,
.about-latest-list {
    margin-top: var(--ds-space-10);
}

body.page-template-page-publications .about-publications-featured {
    margin-top: var(--ds-space-section-sm);
}

body.page-template-page-publications .about-card-grid--major-works {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.page-template-page-publications .about-card-grid--major-works .ds-c-card {
    height: 100%;
    padding: var(--ds-space-inset-lg);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

body.page-template-page-publications .about-card-grid--major-works .ds-c-card__body {
    display: grid;
    align-content: start;
    gap: var(--ds-space-stack-sm);
    height: 100%;
}

body.page-template-page-publications .about-card-grid--major-works .ds-c-card__title,
body.page-template-page-publications .about-card-grid--major-works .ds-c-card__excerpt {
    margin: 0;
}

body.page-template-page-publications .about-card-grid--major-works .ds-c-card__title {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
    text-wrap: balance;
}

body.page-template-page-publications .about-card-grid--major-works .ds-c-card__excerpt {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

/* Key work landing pages use the same restrained reading surface as the
   Publications cards, while giving each work enough space to rank and read
   as an independent page. */
body.page-template-page-key-work,
body.page-template-page-key-works-index {
    background: var(--ds-color-bg-canvas);
}

.key-work-page {
    padding-top: var(--ds-space-section-md);
    padding-bottom: var(--ds-space-section-lg);
}

.key-work-page__container {
    max-width: var(--ds-container-max-md);
}

.key-work-page__breadcrumbs {
    margin-bottom: var(--ds-space-6);
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-body-sm);
}

.key-work-page__surface {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

.key-work-page__body {
    padding: var(--ds-space-inset-xl);
}

.key-work-page__title {
    max-width: 18ch;
    margin: 0 0 var(--ds-space-6);
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h1-size);
    line-height: var(--ds-heading-h1-line-height);
    font-weight: var(--ds-heading-h1-weight);
    text-wrap: balance;
}

.key-work-page__prose {
    max-width: 65ch;
}

.key-work-page__prose p,
.key-work-page__intro {
    font-size: var(--ds-font-size-body-lg);
    line-height: var(--ds-type-body-lg-line-height);
}

.key-work-page__details {
    margin-top: var(--ds-space-section-sm);
    padding-top: var(--ds-space-6);
    border-top: 1px solid var(--ds-color-border-default);
}

.key-work-page__details h2 {
    margin: 0 0 var(--ds-space-3);
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
}

.key-work-page__details ul {
    display: grid;
    gap: var(--ds-space-2);
    margin: 0;
    padding-left: var(--ds-space-6);
    color: var(--ds-color-text-body);
}

.key-work-page__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ds-space-gap-md);
    margin-top: var(--ds-space-section-sm);
}

.key-work-page__actions .ds-c-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: var(--ds-space-3) var(--ds-space-4);
    border: 1px solid transparent;
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-brand-primary);
    color: var(--ds-color-text-on-primary);
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-semibold);
    text-decoration: none;
    transition: background var(--ds-motion-base) var(--ds-ease-standard),
        box-shadow var(--ds-motion-base) var(--ds-ease-standard);
}

.key-work-page__actions .ds-c-button:hover {
    background: var(--ds-color-link-hover);
    color: var(--ds-color-text-strong);
}

.key-work-page__actions .ds-c-button:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

@media (prefers-reduced-motion: reduce) {
    .key-work-page__actions .ds-c-button {
        transition: none;
    }
}

.key-work-page__source-note {
    margin: var(--ds-space-6) 0 0;
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
}

.key-work-page--index .key-work-page__container {
    max-width: var(--ds-container-max-xl);
}

.key-work-page--index .key-work-page__title {
    max-width: none;
}

.key-work-page--index .about-card-grid--major-works {
    margin-top: var(--ds-space-8);
}

@media (max-width: 575.98px) {
    .key-work-page__body {
        padding: var(--ds-space-inset-lg);
    }

    .key-work-page__title {
        font-size: var(--ds-heading-h2-size);
        line-height: var(--ds-heading-h2-line-height);
    }

    .key-work-page__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .key-work-page__actions .ds-c-button {
        text-align: center;
    }
}

.about-books-list__header,
.about-latest-list__header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--ds-space-gap-md);
    margin-bottom: var(--ds-space-4);
}

.about-books-list__header .section-title,
.about-latest-list__header .section-title {
    margin-bottom: 0;
}

.about-books-grid,
.about-latest-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.about-books-list__empty {
    margin: 0;
    color: var(--ds-color-text-muted);
}

.about-publications-bibliography,
.about-publications-translation {
    margin-top: var(--ds-space-section-md);
}

.about-publications-bibliography__note {
    max-width: 65ch;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.about-publications-language {
    margin-top: var(--ds-space-section-sm);
}

.about-publications-language h3 {
    margin: 0 0 var(--ds-space-3);
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
}

.about-publications-list {
    display: grid;
    gap: var(--ds-space-3);
    margin: 0;
    padding-left: var(--ds-space-6);
}

.about-publications-list__item {
    padding-left: var(--ds-space-2);
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.about-publications-list__title {
    color: var(--ds-color-text-strong);
    font-weight: var(--ds-font-weight-semibold);
}

body.page-template-page-publications .about-publications-list__title a.ds-c-link {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-decoration-color: color-mix(in srgb, var(--ds-color-link) 35%, transparent);
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

body.page-template-page-publications .about-publications-list__title a.ds-c-link:hover,
body.page-template-page-publications .about-publications-list__title a.ds-c-link:focus-visible {
    color: var(--ds-color-link-hover);
    text-decoration-color: currentColor;
}

.about-publications-list__details {
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
}

@media (max-width: 991.98px) {
    .about-card-grid--organisations,
    .about-card-grid--major-works,
    .about-link-grid,
    .about-publications-overview,
    .about-latest-grid,
    .about-books-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .about-card-grid--tier-two {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.page-template-page-organisations .about-organisation-tier--primary .about-card-grid--organisations {
        grid-template-columns: 1fr;
    }

    .about-page-links__intro {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    body.page-template-page-organisations .about-organisation-names {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: var(--ds-space-stack-sm);
    }

    body.page-template-page-organisations .about-organisation-names li {
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .about-card-grid--organisations,
    .about-card-grid--major-works,
    .about-link-grid,
    .about-publications-overview,
    .about-latest-grid,
    .about-books-grid {
        grid-template-columns: 1fr;
    }

    .about-card-grid--tier-two {
        grid-template-columns: 1fr;
    }

    body.page-template-page-publications .about-card-grid--major-works,
    body.page-template-page-publications .about-publications-overview {
        grid-template-columns: 1fr;
    }

    body.page-template-page-organisations .about-org-card {
        padding: var(--ds-space-inset-lg);
    }

    body.page-template-page-organisations .about-org-card__description {
        font-size: var(--ds-font-size-body-sm);
        line-height: var(--ds-type-body-sm-line-height);
    }

    .about-books-list__header,
    .about-latest-list__header {
        align-items: flex-start;
        flex-direction: column;
    }
}

body:not(.home) .contact-page-hero {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-10);
}

body:not(.home) .contact-page-hero__content {
    display: grid;
    gap: var(--ds-space-stack-md);
    justify-items: center;
}

body:not(.home) .contact-page-hero h1,
body:not(.home) .contact-page-hero p {
    margin: 0;
}

body:not(.home) .contact-page-hero p.onlybg {
    margin: 0;
}

body:not(.home) .contact-page-hero p:last-child {
    max-width: 780px;
}

body:not(.home) .question-page-hero {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-10);
}

body:not(.home) .question-page-hero__content {
    display: grid;
    gap: var(--ds-space-stack-md);
    justify-items: center;
}

body:not(.home) .question-page-hero__content h1,
body:not(.home) .question-page-hero__content p,
body:not(.home) .question-page-form-shell .ds-c-help,
body:not(.home) .question-page-search-card p {
    margin: 0;
}

body:not(.home) .question-page-search-card {
    padding: var(--ds-space-inset-xl);
}

body:not(.home) .question-page-search-card__row {
    justify-content: space-between;
}

body:not(.home) .question-page-search-card .col-lg-auto {
    display: flex;
    align-items: center;
}

body:not(.home) .question-page-search-form {
    margin: 0;
    min-width: min(100%, 22rem);
}

body:not(.home) .question-page-search-form__control {
    display: flex;
    align-items: center;
    min-height: 44px;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
    overflow: hidden;
    transition: border-color var(--ds-motion-fast) var(--ds-ease-standard),
        box-shadow var(--ds-motion-fast) var(--ds-ease-standard);
}

body:not(.home) .question-page-search-form__control:focus-within {
    border-color: var(--ds-state-focus-ring-color);
    box-shadow: 0 0 0 1px var(--ds-state-focus-ring-color);
}

body:not(.home) .question-page-search-form__icon,
body:not(.home) .question-page-search-form__submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    width: 44px;
    height: 44px;
    color: var(--ds-color-text-heading);
}

body:not(.home) .question-page-search-form__icon {
    color: var(--ds-color-text-body);
}

body:not(.home) .question-page-search-form__input.ds-c-input {
    height: auto;
    min-height: 44px;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

body:not(.home) .question-page-search-form__input.ds-c-input:focus,
body:not(.home) .question-page-search-form__input.ds-c-input:focus-visible {
    border: 0;
    box-shadow: none;
    outline: none;
}

body:not(.home) .question-page-search-form__input::placeholder {
    color: var(--ds-color-text-body);
    opacity: 1;
}

body:not(.home) .question-page-search-form__submit {
    border: 0;
    border-left: 1px solid var(--ds-color-border-default);
    background: var(--ds-color-bg-surface-muted);
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard),
        color var(--ds-motion-fast) var(--ds-ease-standard);
}

body:not(.home) .question-page-search-form__submit:hover,
body:not(.home) .question-page-search-form__submit:focus-visible {
    background: var(--ds-color-brand-primary);
    color: var(--ds-color-text-on-primary);
}

body:not(.home) .before-you-ask-box {
    background: var(--ds-color-bg-surface-muted);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
}

body:not(.home) .before-you-ask .icon-wrap {
    background: var(--ds-color-pill-category-bg);
    color: var(--ds-color-brand-accent-deep);
}

body:not(.home) .before-you-ask h3 {
    color: var(--ds-color-text-heading);
}

body:not(.home) .before-you-ask .btn-outline-primary {
    --bs-btn-color: var(--ds-color-brand-primary);
    --bs-btn-border-color: var(--ds-color-border-default);
    --bs-btn-hover-bg: var(--ds-color-brand-primary);
    --bs-btn-hover-border-color: var(--ds-color-brand-primary);
    --bs-btn-hover-color: var(--ds-color-text-on-primary);
    border-radius: var(--ds-radius-md);
    box-shadow: none;
}

body:not(.home) .question-page-form-shell {
    display: grid;
    gap: var(--ds-space-stack-lg);
}

body:not(.home) .question-page-form-shell > .ds-c-help {
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

body:not(.home) .cqf-form {
    display: grid;
    gap: var(--ds-space-stack-lg);
}

body:not(.home) .cqf-required-marker {
    color: var(--ds-color-danger);
}

body:not(.home) .cqf-form .ds-c-input,
body:not(.home) .cqf-form .ds-c-textarea {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
}

body:not(.home) .cqf-form .ds-c-input {
    height: auto;
    padding: var(--ds-space-4) var(--ds-space-4);
}

body:not(.home) .cqf-form .ds-c-textarea {
    min-height: calc(var(--ds-space-1) * 40);
    padding: var(--ds-space-4);
}

body:not(.home) .cqf-form .input-group {
    align-items: stretch;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
    background: var(--ds-color-bg-surface);
    overflow: hidden;
    transition: border-color var(--ds-motion-fast) var(--ds-ease-standard),
        box-shadow var(--ds-motion-fast) var(--ds-ease-standard);
}

body:not(.home) .cqf-form .input-group:focus-within {
    border-color: var(--ds-state-focus-ring-color);
    box-shadow: 0 0 0 1px var(--ds-state-focus-ring-color);
}

body:not(.home) .cqf-form .input-group-text {
    min-width: calc(var(--ds-space-1) * 12);
    justify-content: center;
    border: 0;
    border-right: 1px solid var(--ds-color-border-default);
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-heading);
}

body:not(.home) .cqf-form .input-group .ds-c-input {
    border: 0;
    box-shadow: none;
}

body:not(.home) .cqf-form .ds-c-field.is-error .input-group {
    border-color: var(--ds-color-border-danger);
    background: var(--ds-color-bg-danger-subtle);
}

body:not(.home) .cqf-form__grid {
    row-gap: var(--ds-space-gap-md);
}

body:not(.home) .cqf-form__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-gap-md);
    align-items: center;
}

body:not(.home) .cqf-form__actions .btn-outline-custom {
    margin-left: 0;
}

body:not(.home) .cqf-form__actions .btn-custom,
body:not(.home) .cqf-form__actions .btn-outline-custom {
    min-height: 44px;
}

body:not(.home) .social-icons {
    gap: var(--ds-space-3);
}

body:not(.home) .contact-socials {
    margin-top: var(--ds-space-8);
    padding-top: var(--ds-space-4);
    gap: var(--ds-space-gap-md);
}

body:not(.home) .contact-socials .follow-text {
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    font-weight: var(--ds-font-weight-medium);
    color: var(--ds-color-text-heading);
}

body:not(.home) .social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.25rem;
    height: 3.25rem;
    padding: 0;
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: 50%;
    box-shadow: var(--ds-shadow-sm);
    transition: transform var(--ds-motion-base) var(--ds-ease-standard), background-color var(--ds-motion-base) var(--ds-ease-standard), border-color var(--ds-motion-base) var(--ds-ease-standard), box-shadow var(--ds-motion-base) var(--ds-ease-standard);
}

body:not(.home) .social-icons .socile_icon {
    width: 1.125rem;
    height: 1.125rem;
    object-fit: contain;
    opacity: 0.9;
}

body:not(.home) .social-icons a > i {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-lg);
    line-height: 1;
}

body:not(.home) .social-icons a:hover {
    background: var(--ds-color-brand-accent);
    border-color: var(--ds-color-brand-accent);
    box-shadow: var(--ds-shadow-md);
    transform: translateY(-2px);
}

body:not(.home) .social-icons a:hover .socile_icon,
body:not(.home) .social-icons a:focus-visible .socile_icon {
    opacity: 1;
}

body:not(.home) .social-icons a:focus-visible > i {
    color: var(--ds-color-text-heading);
}

body:not(.home) section.contact-section .container-sm {
    max-width: 1140px;
    background: transparent;
}

body:not(.home) .contact-section .ds-form-shell {
    height: 100%;
}

body:not(.home) .contact-section form input,
body:not(.home) .contact-section form textarea {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
}

body:not(.home) .contact-information {
    position: sticky;
    top: calc(var(--ds-space-8) + 5rem);
    right: auto;
    transform: none;
    min-width: 0;
    max-height: none;
    padding: var(--ds-space-6);
    border-radius: var(--ds-radius-xl);
    background: var(--ds-color-brand-primary);
    box-shadow: var(--ds-shadow-md);
}

body:not(.home) .contact-information h2 {
    margin-bottom: var(--ds-space-5);
    color: var(--ds-color-text-on-primary);
}

body:not(.home) .contact-information .contact-card {
    max-width: none;
    margin-bottom: var(--ds-space-4);
    padding: var(--ds-space-4);
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: none;
    gap: var(--ds-space-4);
}

body:not(.home) .contact-information .contact-card .content,
body:not(.home) .contact-information .contact-card .ds-c-card__body {
    display: grid;
    gap: var(--ds-space-1);
    padding: 0;
    text-align: left;
    align-items: start;
    justify-items: start;
}

body:not(.home) .contact-information .contact-card h5 {
    margin: 0;
    color: var(--ds-color-text-heading);
}

body:not(.home) .contact-information .contact-card p {
    margin: 0;
    color: var(--ds-color-text-body);
}

body:not(.home) .contact-information .contact-card small {
    display: block;
    margin: 0;
    color: var(--ds-color-brand-accent-deep);
}

body:not(.home) section.about_us_major_data .card,
body:not(.home) .about_us_academic .card {
    padding: var(--ds-space-6);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

body:not(.home) .about_us_academic .card .card-body {
    gap: var(--ds-space-3);
}

body:not(.home) .about_us_academic h5,
body:not(.home) .contact-information .contact-card h5 {
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
}

body:not(.home) .about_us_academic p,
body:not(.home) p.majordescription,
body:not(.home) .about_us_mission_data p {
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

body:not(.home) section.question_form input,
body:not(.home) section.question_form textarea {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-md);
}

body:not(.home) .faq-secton .accordion-item {
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    overflow: hidden;
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-sm);
}

body:not(.home) .faq-secton .accordion-header {
    margin: 0;
    font-family: var(--ds-font-family-body);
}

body:not(.home) .faq-secton .accordion-button {
    color: var(--ds-color-text-heading);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    font-weight: var(--ds-font-weight-semibold);
    letter-spacing: 0;
    background: var(--ds-color-bg-surface);
    box-shadow: none;
}

body:not(.home) .faq-secton .accordion-button:not(.collapsed) {
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-heading);
}

body:not(.home) .faq-secton .accordion-body {
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

body:not(.home) .faq-secton .accordion-body p {
    margin: 0;
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

body:not(.home) .faq-secton .accordion-body a {
    color: var(--ds-color-link);
    font-weight: var(--ds-font-weight-semibold);
}

@media (max-width: 991.98px) {
    .ds-page-shell {
        padding: var(--ds-space-inset-lg);
    }

    .ds-page-section .container-sm {
        max-width: 100%;
        padding-left: var(--ds-container-padding-x);
        padding-right: var(--ds-container-padding-x);
    }

    body:not(.home) .contact-information {
        position: static;
        top: auto;
    }
}

@media (max-width: 767.98px) {
    .ds-page-section {
        padding: var(--ds-space-section-md) 0;
    }

    .ds-page-shell {
        padding: var(--ds-space-inset-md);
        border-radius: var(--ds-radius-lg);
    }

    .ds-page-header {
        margin-bottom: var(--ds-space-6);
        padding-bottom: var(--ds-space-4);
    }

    .ds-page-header .entry-title,
    body:not(.home) section.about_us_info h1,
    body:not(.home) .question_page_info h1 {
        font-size: var(--ds-heading-h1-size);
        line-height: var(--ds-heading-h1-line-height);
    }

    .ds-page-prose p,
    .ds-page-prose li,
    body:not(.home) .about_us_info p,
    body:not(.home) .question_page_info p,
    body:not(.home) .about_us_academic p,
    body:not(.home) p.majordescription,
    body:not(.home) .about_us_mission_data p {
        font-size: var(--ds-font-size-body-md);
        line-height: var(--ds-type-body-md-line-height);
    }

    .ds-page-prose ul,
    .ds-page-prose ol {
        padding-left: var(--ds-space-5);
    }

    body:not(.home) section.about_us_info,
    body:not(.home) .question_page_info,
    body:not(.home) section.question_form,
    body:not(.home) section.contact-section,
    body:not(.home) section.about_us_page_data,
    body:not(.home) section.about_us_academic,
    body:not(.home) section.about_us_major_data,
    body:not(.home) section.about_us_mission_data,
    body:not(.home) section.faq-secton {
        padding: var(--ds-space-section-sm) 0;
    }

    body:not(.home) .contact-page-hero {
        padding-top: var(--ds-space-8);
        padding-bottom: var(--ds-space-8);
    }

    body:not(.home) .question-page-hero {
        padding-top: var(--ds-space-8);
        padding-bottom: var(--ds-space-8);
    }

    body:not(.home) .question-page-search-card,
    body:not(.home) .question-page-form-shell {
        padding: var(--ds-space-inset-lg);
    }

    body:not(.home) .question-page-search-form {
        min-width: 100%;
        width: 100%;
    }

    body:not(.home) .cqf-form__actions {
        flex-direction: column;
        align-items: stretch;
    }

    body:not(.home) .cqf-form__actions .btn-custom,
    body:not(.home) .cqf-form__actions .btn-outline-custom {
        width: 100%;
        justify-content: center;
        margin-left: 0;
    }

    body:not(.home) .about-page-hero {
        padding-top: var(--ds-space-8);
        padding-bottom: var(--ds-space-8);
    }

    body:not(.home) .about-page-intro {
        padding-top: var(--ds-space-4);
    }

    body:not(.home) .about-page-hero__content,
    body:not(.home) .about-page-mission .col-12,
    body:not(.home) .contact-page-hero__content {
        gap: var(--ds-space-stack-sm);
    }

    body:not(.home) .about-page-intro .ds-page-prose {
        gap: var(--ds-space-stack-sm);
    }

    body:not(.home) .about-page-intro blockquote {
        padding: var(--ds-space-inset-md);
    }

    body:not(.home) .about-page-intro blockquote p {
        font-size: var(--ds-font-size-body-md);
        line-height: var(--ds-type-body-md-line-height);
    }

    body:not(.home) .about-page-academic .card .card-body {
        align-items: center;
        text-align: center;
    }

    body:not(.home) .about-page-academic h5,
    body:not(.home) .about-page-academic p {
        text-align: center;
    }

    body:not(.home) .about-page-major .ds-c-card__body {
        padding: var(--ds-space-inset-lg);
    }

    body:not(.home) .about-page-major {
        padding-top: var(--ds-space-8);
        padding-bottom: var(--ds-space-8);
    }

    body:not(.home) .about-page-major .row {
        --bs-gutter-y: var(--ds-space-3);
        row-gap: var(--ds-space-gap-sm);
    }

    body:not(.home) .about-page-major .row.mt-3 {
        margin-top: var(--ds-space-2) !important;
    }

    body:not(.home) .contact-socials {
        margin-top: var(--ds-space-6);
        padding-top: var(--ds-space-2);
        flex-wrap: wrap;
    }

}

/* Category Content Hubs */
.category-hub__intro {
    max-width: 570px;
    margin: var(--ds-space-3) 0 var(--ds-space-2);
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
    color: var(--ds-color-text-body);
}

.category-hub__intro p {
    font-size: var(--ds-font-size-body-md);
    line-height: var(--ds-type-body-md-line-height);
}

.category-hub__intro p:last-child {
    margin-bottom: 0;
}

.category-hub__strip {
    margin-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-6);
}

.category-hub__strip-header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--ds-space-gap-md);
}

.category-hub__strip-header .archive_featured_article_title {
    flex: 1 1 auto;
    margin-bottom: 0;
}

.category-hub__strip-header .read-link {
    white-space: nowrap;
}

.category-hub__strip-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: var(--ds-space-gap-xl);
    margin-top: var(--ds-space-5);
}

/* The category Q&A strip renders three cards; keep its shared archive grid
   from reserving a fourth, empty column on wide screens. */
.category-hub__strip-grid.archive-grid[attr="qa"] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.category-hub__sidebar > .ds-c-sidenav {
    margin-bottom: calc(var(--ds-space-2) + (var(--ds-space-1) * 0.5));
}

.category-hub__strip-grid.archive-grid[attr="qa"] .qa-card .qa-card__body.ds-c-card__body {
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-inset-md);
}

.category-hub__strip-grid.archive-grid[attr="qa"] .qa-card .qa-card__content {
    gap: var(--ds-space-stack-sm);
}

.category-hub__strip-grid.archive-grid[attr="qa"] .qa-card .qa-card__meta.ds-c-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-gap-sm);
    flex-wrap: wrap;
    margin-top: auto;
}

@media (max-width: 991.98px) {
    .category-hub__strip-grid.archive-grid[attr="qa"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .category-hub__strip-grid.archive-grid[attr="qa"] {
        grid-template-columns: 1fr;
    }
}

/* Search results: filter/sort row (F2) */
.search-results-page__filters {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ds-space-3);
    margin-top: var(--ds-space-3);
}

.search-results-page__filters .ds-c-label {
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-1);
    font-size: 14px;
}

.search-results-page__filter {
    min-width: 160px;
}

/* Matched-term highlight inside result excerpts */
.search-results-page mark {
    background-color: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-strong);
    font-weight: 600;
    padding: 0 2px;
    border-radius: 2px;
}

/* No-results recovery card */
.search-results-page__recovery {
    padding: var(--ds-space-5);
    margin-bottom: var(--ds-space-5);
}

.search-results-page__recovery-list {
    list-style: none;
    margin: var(--ds-space-3) 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-3);
}

.search-results-page__recovery-list .ds-c-pill {
    margin: 0 var(--ds-space-1) var(--ds-space-1) 0;
}

/* ---------------------------------------------------------------------------
   Browse by topic — photographic category tiles (all-posts / Articles home)
   Straight cut edges (no rounded corners) per Oxford-brand preference.
   --------------------------------------------------------------------------- */
.ds-c-topic-browse {
    margin: var(--ds-space-section-sm) 0 var(--ds-space-section-md);
}

.ds-c-topic-browse__header {
    margin-bottom: var(--ds-space-6);
}

.ds-c-topic-grid {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--ds-space-4);
}

.ds-c-topic-grid__item {
    margin: 0;
}

.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 9) {
    display: none;
}

.ds-c-progressive-grid__toggle {
    display: inline-flex;
    min-height: calc(var(--ds-space-10) + var(--ds-space-1));
    align-items: center;
    justify-content: center;
    margin-top: var(--ds-space-6);
    border: 1px solid var(--ds-color-brand-primary);
    border-radius: var(--ds-radius-md);
    padding: var(--ds-space-2) var(--ds-space-5);
    background: var(--ds-color-bg-surface);
    color: var(--ds-color-brand-primary);
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-body-sm);
    font-weight: var(--ds-font-weight-semibold);
    line-height: var(--ds-type-body-sm-line-height);
    cursor: pointer;
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard),
        color var(--ds-motion-fast) var(--ds-ease-standard);
}

.ds-c-progressive-grid__toggle[hidden] {
    display: none;
}

.ds-c-progressive-grid__toggle:hover,
.ds-c-progressive-grid__toggle:focus-visible {
    background: var(--ds-color-brand-primary);
    color: var(--ds-color-text-on-primary);
}

.ds-c-progressive-grid__toggle:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

.ds-c-topic-tile {
    position: relative;
    display: block;
    width: 100%;
    min-height: 180px;
    aspect-ratio: 4 / 3;
    overflow: hidden;
    border-radius: 0; /* straight edges — brand preference */
    background-color: var(--ds-color-brand-primary);
    text-decoration: none;
    box-shadow: var(--ds-shadow-sm);
    transition: transform var(--ds-motion-base) var(--ds-ease-standard),
                box-shadow var(--ds-motion-base) var(--ds-ease-standard);
}

.ds-c-topic-tile:hover,
.ds-c-topic-tile:focus-visible {
    transform: translateY(-3px);
    box-shadow: var(--ds-shadow-md);
}

.ds-c-topic-tile:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

.ds-c-topic-tile__img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--ds-motion-slow) var(--ds-ease-standard);
}

.ds-c-topic-tile:hover .ds-c-topic-tile__img {
    transform: scale(1.05);
}

/* Dark gradient scrim for text contrast over any photo. */
.ds-c-topic-tile__scrim {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0, 33, 71, 0.88) 0%,
        rgba(0, 33, 71, 0.55) 38%,
        rgba(0, 33, 71, 0.12) 72%,
        rgba(0, 33, 71, 0.05) 100%
    );
}

/* Image-less fallback: solid brand gradient, still readable. */
.ds-c-topic-tile--noimage {
    background: linear-gradient(135deg, var(--ds-color-brand-primary) 0%, #013063 100%);
}

.ds-c-topic-tile--noimage .ds-c-topic-tile__scrim {
    background: linear-gradient(
        to top,
        rgba(0, 33, 71, 0.55) 0%,
        rgba(0, 33, 71, 0.10) 70%,
        rgba(0, 33, 71, 0) 100%
    );
}

.ds-c-topic-tile__body {
    position: absolute;
    inset: auto 0 0 0;
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-1);
    padding: var(--ds-space-4);
    z-index: 1;
}

.ds-c-topic-tile__name {
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-font-size-lg);
    font-weight: var(--ds-font-weight-semibold);
    line-height: var(--ds-line-height-tight);
    color: var(--ds-color-text-on-primary);
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.35);
}

.ds-c-topic-tile__count {
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-medium);
    color: var(--ds-color-brand-accent);
    letter-spacing: 0.01em;
}

/* Desktop-small / small laptop: 3 columns */
@media (max-width: 1199.98px) {
    .ds-c-topic-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .ds-c-topic-grid.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 7) {
        display: none;
    }
}

/* Tablet: 2 columns */
@media (max-width: 991.98px) {
    .ds-c-topic-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--ds-space-3);
    }

    .ds-c-topic-grid.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 5) {
        display: none;
    }
}

/* Mobile: 2 columns down to 375px — no horizontal overflow. */
@media (max-width: 575.98px) {
    .ds-c-topic-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--ds-space-2);
    }

    .ds-c-topic-tile {
        /* No min-height here: with aspect-ratio 4/3, a min-height taller than
           the track's ratio height transfers back through the ratio and WIDENS
           the tile past its grid track (187px in a 171px track at 375px),
           causing horizontal overflow. The ratio alone sizes mobile tiles. */
        min-height: 0;
    }

    .ds-c-topic-tile__body {
        padding: var(--ds-space-3);
    }
}

/* ===========================================================================
   M3 D1/D2 — breadcrumb, topic side-nav, All Articles landing shell.
   Tokens only (design-system/tokens.css); no new colour/spacing literals.
   =========================================================================== */

/* ---------------------------------------------------------------------------
   Breadcrumb (D1 / AN-80). Visible trail; JSON-LD emitted separately on head.
   --------------------------------------------------------------------------- */
.ds-breadcrumb__inner {
    padding-top: var(--ds-space-2);
    padding-bottom: var(--ds-space-1);
}

.ds-breadcrumb__list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ds-space-1);
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: var(--ds-font-size-caption);
    line-height: var(--ds-type-caption-line-height);
}

.ds-breadcrumb__item {
    display: flex;
    align-items: center;
    gap: var(--ds-space-1);
    margin: 0;
}

.ds-breadcrumb__item + .ds-breadcrumb__item::before {
    content: "\203A";
    color: var(--ds-color-text-muted);
}

.ds-breadcrumb__link {
    color: var(--ds-color-text-muted);
    text-decoration: none;
}

.ds-breadcrumb__link:hover,
.ds-breadcrumb__link:focus-visible {
    color: var(--ds-color-link-hover);
    text-decoration: underline;
}

.ds-breadcrumb__current {
    color: var(--ds-color-text-heading);
    font-weight: var(--ds-font-weight-medium);
}

.ds-breadcrumb__text {
    color: var(--ds-color-text-muted);
}

@media (max-width: 767.98px) {
    .ds-breadcrumb__inner {
        padding-top: var(--ds-space-1);
    }
}

/* ---------------------------------------------------------------------------
   Topic side-nav (D1 / ds-c-sidenav) — shared by /all-post/ (mode=all) and
   category hubs (mode=group). Gold-accented current state matches the hub.
   Distinct class namespace from the header .articles-nav-dropdown.
   --------------------------------------------------------------------------- */
.ds-c-sidenav {
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-radius: var(--ds-radius-lg);
    box-shadow: var(--ds-shadow-sm);
    padding: var(--ds-space-inset-lg);
}

.ds-c-sidenav__heading {
    margin: 0 0 var(--ds-space-3);
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    color: var(--ds-color-text-heading);
}

.ds-c-sidenav-group {
    border-top: 1px solid var(--ds-color-border-default);
}

.ds-c-sidenav-group:first-of-type {
    border-top: 0;
}

.ds-c-sidenav-group__toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-2);
    width: 100%;
    padding: var(--ds-space-3) 0;
    background: transparent;
    border: 0;
    cursor: pointer;
    text-align: left;
    font-family: var(--ds-font-family-body);
    font-size: var(--ds-font-size-md);
    font-weight: var(--ds-font-weight-semibold);
    color: var(--ds-color-text-heading);
}

.ds-c-sidenav-group__toggle:focus-visible,
.ds-c-sidenav-group__solo:focus-visible,
.ds-c-sidenav-group__link:focus-visible,
.ds-c-sidenav__all:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

.ds-c-sidenav-group__chevron {
    flex: 0 0 auto;
    width: 0.5rem;
    height: 0.5rem;
    border-right: 2px solid var(--ds-color-text-body);
    border-bottom: 2px solid var(--ds-color-text-body);
    transform: rotate(45deg);
    transition: transform var(--ds-motion-fast) var(--ds-ease-standard);
}

.ds-c-sidenav-group__toggle[aria-expanded="false"] .ds-c-sidenav-group__chevron {
    transform: rotate(-45deg);
}

.ds-c-sidenav-group__list {
    list-style: none;
    margin: 0 0 var(--ds-space-3);
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--ds-space-1);
}

.ds-c-sidenav-group__item {
    margin: 0;
}

.ds-c-sidenav-group__link,
.ds-c-sidenav-group__solo {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: var(--ds-space-2);
    padding: var(--ds-space-2) var(--ds-space-3);
    border-left: 2px solid transparent;
    text-decoration: none;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-sm);
    line-height: var(--ds-line-height-normal);
    transition:
        background var(--ds-motion-fast) var(--ds-ease-standard),
        color var(--ds-motion-fast) var(--ds-ease-standard);
}

.ds-c-sidenav-group__solo {
    padding: var(--ds-space-3);
    font-weight: var(--ds-font-weight-semibold);
    color: var(--ds-color-text-heading);
}

.ds-c-sidenav-group__link:hover,
.ds-c-sidenav-group__link:focus-visible,
.ds-c-sidenav-group__solo:hover,
.ds-c-sidenav-group__solo:focus-visible {
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-link-hover);
}

.ds-c-sidenav-group__link.is-current,
.ds-c-sidenav-group__solo.is-current {
    border-left-color: var(--ds-color-brand-accent);
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-heading);
    font-weight: var(--ds-font-weight-semibold);
}

.ds-c-sidenav__count {
    flex: 0 0 auto;
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-xs);
    font-variant-numeric: tabular-nums;
}

.ds-c-sidenav__all {
    display: inline-block;
    margin-top: var(--ds-space-3);
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-semibold);
    color: var(--ds-color-brand-accent-deep);
    text-decoration: none;
}

.ds-c-sidenav__all:hover,
.ds-c-sidenav__all:focus-visible {
    text-decoration: underline;
}

/* Desktop: every group open regardless of aria state; buttons act as labels. */
@media (min-width: 992px) {
    .ds-c-sidenav-group__list {
        display: flex !important;
    }

    .ds-c-sidenav-group__toggle {
        cursor: default;
    }

    .ds-c-sidenav-group__chevron {
        display: none;
    }
}

/* Mobile: single-open accordion — collapsed groups hide their list. */
@media (max-width: 991.98px) {
    .ds-c-sidenav-group__toggle[aria-expanded="false"] + .ds-c-sidenav-group__list {
        display: none;
    }
}

/* ---------------------------------------------------------------------------
   All Articles landing shell (D2). Two-column layout reuses .archive-page /
   .archive-body; these rules add the side-nav column + Editor's picks row.
   --------------------------------------------------------------------------- */
.articles-landing .archive-body {
    align-items: start;
}

.articles-landing__sidenav {
    margin-bottom: var(--ds-space-6);
}

.articles-landing__filters {
    margin-top: 0;
}

.articles-landing__filters .archive-filters {
    position: sticky;
    top: calc(var(--ds-space-20) + var(--ds-space-4));
    padding: var(--ds-space-inset-md);
    box-shadow: var(--ds-shadow-sm);
}

.articles-landing__list-title {
    margin-top: 0;
}

.articles-landing .articles-landing__list-title span {
    background-color: var(--light-gray);
}

.articles-landing__featured .archive_featured_article_title span {
    background-color: var(--light-gray);
}

.ds-c-topic-browse .archive_featured_article_title,
.articles-landing__featured .archive_featured_article_title,
.articles-landing .articles-landing__list-title {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
}

.articles-landing__featured.archive-page .archive-grid.archive-grid--featured .article-card .article-card__title.ds-c-card__title,
.articles-landing__featured.archive-page .archive-grid.archive-grid--featured .article-card .article-card__title.ds-c-card__title a.ds-c-link,
.articles-landing .archive-grid[attr="normal"] .article-card .article-card__title.ds-c-card__title,
.articles-landing .archive-grid[attr="normal"] .article-card .article-card__title.ds-c-card__title a.ds-c-link {
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
}

.articles-landing__featured.archive-page .archive-grid.archive-grid--featured .article-card .article-card__excerpt.ds-c-card__excerpt,
.articles-landing .archive-grid[attr="normal"] .article-card .article-card__excerpt.ds-c-card__excerpt {
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
}

.articles-landing .archive-grid[attr="normal"] .article-card .article-card__excerpt.ds-c-card__excerpt {
    min-height: calc(var(--ds-font-size-body-sm) * var(--ds-type-body-sm-line-height) * 4);
    -webkit-line-clamp: 5;
}

.articles-landing__featured.archive-page .archive-grid.archive-grid--featured .article-card .article-card__categories .ds-c-pill,
.articles-landing .archive-grid[attr="normal"] .article-card .article-card__categories .ds-c-pill {
    font-size: var(--ds-font-size-2xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: normal;
    text-transform: none;
    color: var(--ds-color-text-muted);
    background: var(--ds-color-bg-surface-muted);
    border-color: var(--ds-color-border-default);
}

/* Editor's picks featured row. Carries .archive-page so the shared archive
   card styling applies; spacing is tuned here so it reads as one zone with
   the article list below it. */
.articles-landing__featured {
    padding-top: var(--ds-space-8);
    padding-bottom: 0;
}

.articles-landing .archive-controls-shell {
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.articles-landing .archive-toolbar__meta {
    align-items: center;
    padding: var(--ds-space-1) 0;
}

.articles-landing .archive-count,
.articles-landing .archive-page-label {
    margin-top: 0;
}

.archive-grid.archive-grid--featured {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ds-space-gap-xl);
    margin-top: var(--ds-space-6);
}

.archive-grid.archive-grid--featured.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 7) {
    display: none;
}

@media (max-width: 991.98px) {
    .archive-grid.archive-grid--featured {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .archive-grid.archive-grid--featured.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 5) {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .archive-grid.archive-grid--featured {
        grid-template-columns: 1fr;
    }

    .archive-grid.archive-grid--featured.ds-c-progressive-grid:not(.is-expanded) > :nth-child(n + 3) {
        display: none;
    }

    .articles-landing .archive-toolbar__meta {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: var(--ds-space-gap-sm);
    }

    .articles-landing .archive-count,
    .articles-landing .archive-page-label {
        white-space: nowrap;
    }
}

/* ---------------------------------------------------------------------------
   Biography: Awards and honours ("honours wall" plaques), restored 2026-09-28.
   Straight edges, hairline border with a thin gold top rule; titles reserve
   two lines so the gold rule and descriptions align across a row.
   --------------------------------------------------------------------------- */
.about-page-awards {
    padding-top: var(--ds-space-section-sm);
    padding-bottom: var(--ds-space-section-md);
}

.about-card-grid--awards {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: var(--ds-space-4);
}

.about-award-card {
    height: 100%;
    background: var(--ds-color-bg-surface);
    border: 1px solid var(--ds-color-border-default);
    border-top: 2px solid var(--ds-color-brand-accent);
    border-radius: 0;
    padding: var(--ds-space-inset-lg);
}

.about-award-card .ds-c-card__body {
    display: grid;
    gap: 0;
    align-content: start;
    height: 100%;
}

.about-award-card__title {
    margin: 0;
    text-wrap: balance;
    font-family: var(--ds-font-family-heading);
    font-size: var(--ds-heading-h5-size);
    line-height: var(--ds-heading-h5-line-height);
    font-weight: var(--ds-heading-h5-weight);
    color: var(--ds-color-text-heading);
    min-height: calc(var(--ds-heading-h5-line-height) * 2em);
}

.about-award-card__description {
    margin: 0;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    max-width: 34ch;
}

.about-award-card__description::before {
    content: "";
    display: block;
    width: 2.25rem;
    height: 2px;
    margin: var(--ds-space-3) 0 var(--ds-space-4);
    background: var(--ds-color-brand-accent);
}

@media (max-width: 991.98px) {
    .about-card-grid--awards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575.98px) {
    .about-card-grid--awards {
        grid-template-columns: 1fr;
    }

    .about-award-card__title {
        min-height: 0;
    }
}

/* ==========================================================================
   Mobile/tablet spacing & typography pass (DS v1.64)
   Scoped to <= 991.98px; desktop is unchanged.
   ========================================================================== */

/* Phone + tablet */
@media (max-width: 991.98px) {
    /* Page titles share one H1 scale (phone 32px, tablet 40px) */
    .archive-header h1,
    body.page-template-page-qa-posts .archive-header h1,
    body:not(.home) .about-page-hero h1,
    .article-details-wrapper .ds-c-article-title,
    body.single-qa .single-qa-title.ds-c-card__title {
        font-size: var(--ds-heading-h1-size);
        line-height: var(--ds-heading-h1-line-height);
    }

    /* Section headings sit clearly below the page H1 */
    body:not(.home) .section-title,
    body.single-qa #releted_post_wrapper .section-title {
        font-size: var(--ds-heading-section-size);
        line-height: var(--ds-heading-section-line-height);
        letter-spacing: normal;
    }

    /* Tighter gap between the archive/topic H1 and its first block */
    .featured-archive_featured > .container > .row.mt-5 {
        margin-top: var(--ds-space-section-sm) !important;
    }

    /* Related article cards: date left, "Read More" right */
    body.single-post .related-articles-grid .article-card .article-card__meta,
    body.single-post .related-articles-grid .article-card .article-card__meta.ds-c-meta,
    body.single-post .related-articles-grid .article-card__meta,
    body.single-post .related-articles-grid .article-card__meta.ds-c-meta {
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        gap: var(--ds-space-2);
    }

    /* Single Q&A: one divider under the answer author, not two */
    body.single-qa .single-qa-answer-author {
        border-bottom: 0;
    }

    /* Long-form prose: stronger reading colour */
    #main-article-content .ds-c-rich-text p,
    #main-article-content .ds-c-rich-text li,
    body.single-qa .single-qa-answer-content p,
    body.single-qa .single-qa-answer-content li,
    .about_us_page_data .ds-page-prose p,
    .about_us_page_data .ds-page-prose li {
        color: var(--ds-color-text-prose);
    }

    /* Related-courses widget copy was hardcoded to 11.71px via #course_wrapper p */
    #course_wrapper .ds-c-widget--related-courses .ds-c-widget__text {
        font-size: var(--ds-font-size-body-sm);
    }

    /* "Answer from" overline: <small> inside a 12px caption rendered at 10.5px */
    body.single-qa .single-qa-answer-label small {
        font-size: 1em;
    }

    /* Minimum 24px touch targets (WCAG 2.2 AA 2.5.8) */
    .ds-breadcrumb__link {
        display: inline-block;
        padding-block: calc(var(--ds-space-1) * 1.5);
    }

    .read-link {
        display: inline-flex;
        align-items: center;
        min-height: var(--ds-pill-height-sm);
    }

    /* The parent theme paints every <button> black; restore the DS outline buttons */
    body button.ds-c-read-mode-toggle:not(:hover):not(:active):not(:focus-visible):not([aria-pressed="true"]) {
        background: transparent;
        color: var(--ds-color-link);
    }

    body button.ds-c-progressive-grid__toggle:not(:hover):not(:active):not(:focus-visible) {
        background: var(--ds-color-bg-surface);
        color: var(--ds-color-brand-primary);
    }
}

/* Tablet only: cap the reading measure */
@media (min-width: 768px) and (max-width: 991.98px) {
    .ds-c-rich-text > p,
    .ds-c-rich-text > ul,
    .ds-c-rich-text > ol,
    .ds-c-rich-text > blockquote,
    .ds-c-rich-text > h2,
    .ds-c-rich-text > h3,
    body.single-qa .single-qa-answer-content p,
    .about_us_page_data .ds-page-prose p,
    .about_us_page_data .ds-page-prose h2 {
        max-width: var(--ds-measure-prose);
    }
}

/* Phone only */
@media (max-width: 767.98px) {
    /* One page gutter everywhere (16px), matching the homepage */
    body:not(.home) main .container,
    body:not(.home) main .container-sm,
    body:not(.home) main .container-xl {
        padding-inline: var(--ds-container-padding-x);
    }

    /* Article: drop the card-in-card so the text column uses the full width */
    .ds-c-article-shell {
        margin-top: 0;
        margin-inline: calc(var(--ds-container-padding-x) * -1);
        padding: var(--ds-space-inset-lg) var(--ds-container-padding-x);
        border-width: 1px 0;
        border-radius: 0;
        box-shadow: none;
    }

    /* Organisations: left-align primary cards so multi-line text is easy to read */
    body.page-template-page-organisations .about-organisation-tier--primary .about-org-card {
        text-align: left;
    }

    body.page-template-page-organisations .about-organisation-tier--primary .about-org-card .ds-c-card__body {
        justify-items: start;
    }

    body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__logo-wrap {
        justify-content: flex-start;
    }

    body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__description {
        margin-left: 0;
    }

    body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__link {
        justify-self: start;
    }
}

/* DS v1.66: Organisations cards. Everything centred on both tiers and every breakpoint,
   equal logo frames so titles line up across a row, CTA pinned to the card foot, and a
   clearer tier hierarchy (tier-one titles h3, tier-two h4 under a lighter tier heading). */
body.page-template-page-organisations .about-organisation-tier .about-org-card {
    text-align: center;
}

body.page-template-page-organisations .about-organisation-tier .about-org-card .ds-c-card__body {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-items: center;
    gap: var(--ds-space-2);
}

body.page-template-page-organisations .about-organisation-tier .about-org-card__logo-wrap {
    justify-content: center;
    align-items: center;
    width: 100%;
    height: calc(var(--ds-space-1) * 24);
    min-height: 0;
    margin-bottom: var(--ds-space-2);
    padding-bottom: 0;
}

body.page-template-page-organisations .about-organisation-tier .about-org-card__meta {
    margin-top: 0;
}

/* Tier one leads: h3 title with more air above the description. */
body.page-template-page-organisations .about-organisation-tier--primary .about-org-card__title {
    margin-bottom: var(--ds-space-1);
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
    font-weight: var(--ds-heading-h3-weight);
}

body.page-template-page-organisations .about-organisation-tier .about-org-card__description {
    flex: 1 1 auto;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

/* Tier two: reserve two meta lines on the 3-up grid so titles align despite long date ranges. */
@media (min-width: 992px) {
    body.page-template-page-organisations .about-card-grid--tier-two .about-org-card__meta {
        min-height: calc(var(--ds-type-overline-line-height) * 2em);
    }
}

/* Lighter second tier heading so the primary tier reads first. */
body.page-template-page-organisations .about-organisation-tier--associate .section-title {
    font-size: var(--ds-heading-h3-size);
    line-height: var(--ds-heading-h3-line-height);
}

/* CTA reads as an action: gold-deep arrow that nudges on hover/focus. */
body.page-template-page-organisations .about-organisation-tier .about-org-card__link {
    align-self: center;
    margin-top: var(--ds-space-3);
    color: var(--ds-color-link);
}

body.page-template-page-organisations .about-organisation-tier .about-org-card__link::after {
    content: "→";
    display: inline-block;
    margin-left: var(--ds-space-1);
    color: var(--ds-color-brand-accent-deep);
    transition: transform 0.18s ease;
}

body.page-template-page-organisations .about-org-card--linked:hover .about-org-card__link::after,
body.page-template-page-organisations .about-org-card--linked:focus-visible .about-org-card__link::after {
    transform: translateX(var(--ds-space-1));
}

@media (prefers-reduced-motion: reduce) {
    body.page-template-page-organisations .about-organisation-tier .about-org-card__link::after {
        transition: none;
    }

    body.page-template-page-organisations .about-org-card--linked:hover .about-org-card__link::after,
    body.page-template-page-organisations .about-org-card--linked:focus-visible .about-org-card__link::after {
        transform: none;
    }
}

/* DS v1.70: phone-only copy of the translation badge in the chip row. */
.ds-c-article-taxonomy__translation {
    display: none;
}

/* ==========================================================================
   DS v1.70: phone declutter for single article + single Q&A.
   Hierarchy: title > meta/topics > (question) > body. Body text gets the
   full 16px-gutter column; secondary blocks shrink to compact lists.
   Scoped to <= 767.98px; tablet and desktop are unchanged.
   ========================================================================== */
@media (max-width: 767.98px) {

    /* ---- Shared: topic chips on one line, swipeable, edge to edge ---- */
    body.single-post .ds-c-article-taxonomy,
    body.single-qa .single-qa-taxonomy {
        display: flex;
        flex-wrap: nowrap;
        gap: var(--ds-space-2);
        margin-inline: calc(var(--ds-container-padding-x) * -1);
        padding-inline: var(--ds-container-padding-x);
        scroll-padding-inline: var(--ds-container-padding-x);
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        /* Fade the trailing gutter so a clipped chip reads as "more to swipe". */
        -webkit-mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-space-6)), transparent);
        mask-image: linear-gradient(to right, #000 calc(100% - var(--ds-space-6)), transparent);
    }

    body.single-post .ds-c-article-taxonomy::-webkit-scrollbar,
    body.single-qa .single-qa-taxonomy::-webkit-scrollbar {
        display: none;
    }

    body.single-post .ds-c-article-taxonomy .ds-c-pill,
    body.single-qa .single-qa-taxonomy .ds-c-pill {
        flex: 0 0 auto;
        max-width: none;
        margin: 0;
        white-space: nowrap;
        scroll-snap-align: start;
    }

    /* ---- Article: no toolbar, no date/reading time; lighter author name ---- */
    body.single-post .ds-c-article-toolbar,
    body.single-post .ds-c-article-meta__item--date,
    body.single-post .ds-c-article-meta__item--reading-time {
        display: none;
    }

    /* The translation badge moves into the chip row, so the meta row goes entirely. */
    body.single-post .ds-c-article-meta {
        display: none;
    }

    body.single-post .ds-c-article-taxonomy__translation {
        display: inline-flex;
        flex: 0 0 auto;
        scroll-snap-align: start;
    }

    body.single-post .ds-c-article-taxonomy__translation .ds-c-pill {
        white-space: nowrap;
    }

    body.single-post .ds-c-article-author__name,
    body.single-post .ds-c-article-author__name strong {
        font-weight: var(--ds-font-weight-medium);
    }

    /* ---- Shared: compact author avatar; name and role stay visible ---- */
    body.single-post .ds-c-article-author__avatar,
    body.single-qa .single-qa-author-image {
        width: var(--ds-space-10);
        height: var(--ds-space-10);
        flex: 0 0 var(--ds-space-10);
        object-fit: cover;
    }


    /* ---- Article: related articles become a thumbnail list ---- */
    body.single-post #releted_post_wrapper .releted_post_info p {
        display: none;
    }

    body.single-post #releted_post_wrapper .related-articles-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        border-top: 1px solid var(--ds-color-border-default);
    }

    body.single-post #releted_post_wrapper .article-card.ds-c-card {
        display: grid;
        grid-template-columns: calc(var(--ds-space-1) * 24) minmax(0, 1fr);
        align-items: start;
        gap: var(--ds-space-gap-md);
        padding-block: var(--ds-space-4);
        background: transparent;
        border: 0;
        border-bottom: 1px solid var(--ds-color-border-default);
        border-radius: 0;
        box-shadow: none;
        overflow: visible;
        transform: none;
    }

    body.single-post #releted_post_wrapper .article-card.ds-c-card:is(:hover, :focus-within) {
        transform: none;
        box-shadow: none;
        border-color: var(--ds-color-border-default);
    }

    body.single-post #releted_post_wrapper .article-card .ds-c-card__image {
        overflow: hidden;
        border-radius: var(--ds-radius-md);
    }

    body.single-post #releted_post_wrapper .article-card .ds-c-card__image img {
        width: 100%;
        height: calc(var(--ds-space-1) * 18);
        object-fit: cover;
    }

    body.single-post #releted_post_wrapper .article-card .ds-c-card__body {
        gap: var(--ds-space-1);
        padding: 0;
    }

    body.single-post #releted_post_wrapper .article-card :is(.article-card__categories, .ds-c-card__excerpt, .read-link, .badge-featured) {
        display: none;
    }

    body.single-post #releted_post_wrapper .article-card .ds-c-card__title,
    body.single-post #releted_post_wrapper .article-card .ds-c-card__title a {
        font-size: var(--ds-heading-h5-size);
        line-height: var(--ds-heading-h5-line-height);
    }

    body.single-post #releted_post_wrapper .article-card__meta.ds-c-meta {
        margin-top: 0;
        color: var(--ds-color-text-muted);
        font-size: var(--ds-font-size-body-sm);
    }

    /* ---- Q&A: one white reading surface, question subordinate to answer ---- */
    body.single-qa .qa_article_wrapper {
        background: var(--ds-color-bg-surface);
        padding-block: var(--ds-space-section-sm) var(--ds-space-section-md);
    }

    body.single-qa .qa_article_wrapper .article_wrapper,
    body.single-qa .qa_article_wrapper .qa-details-page {
        padding: 0;
        background: transparent;
        border: 0;
        box-shadow: none;
    }

    /* Title > asked date > topics > question */
    body.single-qa .single-qa-intro .container-wrapper {
        display: flex;
        flex-direction: column;
        gap: var(--ds-space-stack-sm);
    }

    body.single-qa .single-qa-intro .single-qa-title-row { order: 1; margin-bottom: 0; }
    body.single-qa .single-qa-intro .single-qa-meta { order: 2; margin-bottom: 0; }
    body.single-qa .single-qa-intro .single-qa-taxonomy-row { order: 3; }
    body.single-qa .single-qa-intro .single-qa-question-card { order: 4; margin: var(--ds-space-stack-sm) 0 0; }

    body.single-qa .single-qa-title-icon {
        display: none;
    }

    body.single-qa .single-qa-meta {
        color: var(--ds-color-text-muted);
        font-size: var(--ds-font-size-body-sm);
    }

    /* Topic chips: quiet category pills instead of filled navy */
    body.single-qa .single-qa-taxonomy-row,
    body.single-qa .single-qa-taxonomy-wrap {
        min-width: 0;
        width: 100%;
    }

    body.single-qa .single-qa-taxonomy .ds-c-pill.is-selected {
        color: var(--ds-color-pill-category-text);
        background: var(--ds-color-pill-category-bg);
        border-color: var(--ds-color-pill-category-border);
        text-transform: none;
        letter-spacing: normal;
        font-weight: var(--ds-font-weight-medium);
    }

    /* Question: quoted block, not a competing card */
    body.single-qa .qa_article_wrapper .single-qa-question-card {
        background: var(--ds-color-bg-surface-muted);
        border: 0;
        border-left: var(--ds-space-1) solid var(--ds-color-brand-accent);
        border-radius: 0 var(--ds-radius-md) var(--ds-radius-md) 0;
        box-shadow: none;
    }

    body.single-qa .qa_article_wrapper .single-qa-question-card .ds-c-card__body {
        padding: var(--ds-space-inset-md) var(--ds-space-inset-md) var(--ds-space-inset-md) var(--ds-space-4);
    }

    body.single-qa .single-qa-question-text,
    body.single-qa .single-qa-question-text p {
        color: var(--ds-color-text-body);
        font-size: var(--ds-font-size-body-md);
        line-height: var(--ds-type-body-md-line-height);
    }

    body.single-qa .single-qa-question-text.is-clamped {
        max-height: calc(var(--ds-type-body-md-line-height) * 7em);
        overflow: hidden;
        -webkit-mask-image: linear-gradient(to bottom, #000 65%, transparent);
        mask-image: linear-gradient(to bottom, #000 65%, transparent);
    }

    /* Parent theme paints every <button> black, in every state. */
    body.single-qa .single-qa-question-card button.single-qa-question-toggle,
    body.single-qa .single-qa-question-card button.single-qa-question-toggle:not(:hover):not(:active):not(.has-text-color),
    body.single-qa .single-qa-question-card button.single-qa-question-toggle:is(:hover, :active, :focus) {
        display: inline-flex;
        align-items: center;
        min-height: var(--ds-space-10);
        margin-top: var(--ds-space-1);
        padding: 0;
        color: var(--ds-color-link);
        background: transparent;
        border: 0;
        font-family: var(--ds-font-family-body);
        font-size: var(--ds-font-size-body-sm);
        font-weight: var(--ds-font-weight-semibold);
        text-decoration: underline;
        text-underline-offset: 3px;
    }

    body.single-qa .single-qa-question-toggle[hidden] {
        display: none;
    }

    body.single-qa .single-qa-question-card button.single-qa-question-toggle:is(:hover, :active) {
        color: var(--ds-color-brand-accent-deep);
    }

    body.single-qa .single-qa-question-toggle:focus-visible {
        outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
        outline-offset: var(--ds-state-focus-ring-offset);
    }

    /* Answer: no card chrome, full column width */
    body.single-qa .qa_article_wrapper article.single-qa-answer-card {
        margin-top: var(--ds-space-stack-lg);
        padding: 0;
        background: transparent;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        overflow: visible;
    }

    body.single-qa .qa_article_wrapper .single-qa-answer-card__body {
        padding: 0;
    }

    body.single-qa .single-qa-answer-author {
        padding-bottom: 0;
    }

    body.single-qa .single-qa-answer-author-row {
        align-items: flex-start;
        gap: var(--ds-space-gap-sm);
    }

    body.single-qa .single-qa-answer-label {
        margin-bottom: 0;
    }

    body.single-qa .single-qa-author-name {
        margin: 0;
    }

    body.single-qa .single-qa-author-meta {
        gap: 0;
        font-size: var(--ds-font-size-body-sm);
    }

    body.single-qa .single-qa-divider {
        margin: var(--ds-space-stack-md) 0 var(--ds-space-stack-lg);
    }

    body.single-qa .single-qa-answer-content,
    body.single-qa .single-qa-answer-content p,
    body.single-qa .single-qa-answer-content li {
        color: var(--ds-color-text-prose);
        font-size: var(--ds-font-size-body-lg);
        line-height: var(--ds-type-body-lg-line-height);
        overflow-wrap: break-word;
    }

    /* ---- Q&A: related questions become a divided list ---- */
    body.single-qa #releted_post_wrapper .related-articles-grid {
        display: flex;
        flex-direction: column;
        gap: 0;
        border-top: 1px solid var(--ds-color-border-default);
    }

    body.single-qa #releted_post_wrapper .qa-card.ds-c-card {
        background: transparent;
        border: 0;
        border-bottom: 1px solid var(--ds-color-border-default);
        border-radius: 0;
        box-shadow: none;
    }

    body.single-qa #releted_post_wrapper .qa-card__body.ds-c-card__body {
        gap: var(--ds-space-1);
        padding: var(--ds-space-4) 0;
    }

    body.single-qa #releted_post_wrapper :is(.qa-card__header, .qa-card .read-link) {
        display: none;
    }

    body.single-qa #releted_post_wrapper .qa-card__content {
        display: flex;
        flex-direction: column;
        gap: var(--ds-space-1);
    }

    /* the_excerpt() nests its own <p> inside .qa-card__excerpt, so the browser
       splits it into an empty excerpt <p>, the text <p>, and a trailing empty <p>. */
    body.single-qa #releted_post_wrapper .qa-card__content > p:empty,
    body.single-qa #releted_post_wrapper .qa-card__content > p.qa-card__excerpt:has(+ p) {
        display: none;
    }

    body.single-qa #releted_post_wrapper .qa-card__content > p {
        margin: 0;
        color: var(--ds-color-text-body);
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: var(--ds-font-size-body-sm);
        line-height: var(--ds-type-body-sm-line-height);
    }

    body.single-qa #releted_post_wrapper .qa-card .fa-card-meta.ds-c-meta {
        display: flex;
        margin-top: var(--ds-space-1);
        color: var(--ds-color-text-muted);
        font-size: var(--ds-font-size-body-sm);
    }

    body.single-qa #releted_post_wrapper .qa-card .article-card__meta-info {
        display: inline-flex;
        flex-wrap: wrap;
        align-items: center;
        gap: var(--ds-space-2);
    }
}

/* ==========================================================================
   DS v1.70: Related Courses widget, all breakpoints.
   One clear order: heading > supporting line > primary button > quiet link.
   #course_wrapper raises specificity over the legacy base.css
   `#course_wrapper p` (11.71px gold) and `#course_wrapper a` rules, which
   had flattened the CTA into plain text.
   ========================================================================== */
#course_wrapper .ds-c-widget--related-courses .ds-c-widget__body {
    gap: var(--ds-space-stack-sm);
    padding: var(--ds-space-inset-lg);
    text-align: left;
}

#course_wrapper .ds-c-widget--related-courses .ds-c-widget__title {
    margin: 0;
    font-size: var(--ds-heading-h4-size);
    line-height: var(--ds-heading-h4-line-height);
    font-weight: var(--ds-heading-h4-weight);
    color: var(--ds-color-text-heading);
}

#course_wrapper .ds-c-widget--related-courses .ds-c-widget__text {
    margin: 0 0 var(--ds-space-2);
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    font-weight: var(--ds-font-weight-regular);
    letter-spacing: normal;
}

#course_wrapper .ds-c-widget--related-courses a.ds-c-widget__action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: var(--ds-space-3) var(--ds-space-4);
    color: var(--ds-color-text-on-primary);
    background: var(--ds-color-brand-primary);
    border: 1px solid var(--ds-color-brand-primary);
    border-radius: var(--ds-radius-md);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    font-weight: var(--ds-font-weight-semibold);
    text-decoration: none;
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard), border-color var(--ds-motion-fast) var(--ds-ease-standard);
}

#course_wrapper .ds-c-widget--related-courses a.ds-c-widget__action:is(:hover, :focus-visible) {
    color: var(--ds-color-text-on-primary);
    background: var(--ds-color-link);
    border-color: var(--ds-color-brand-accent);
}

#course_wrapper .ds-c-widget--related-courses a.ds-c-widget__secondary-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: var(--ds-space-8);
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-body-sm);
    line-height: var(--ds-type-body-sm-line-height);
    text-decoration: none;
}

#course_wrapper .ds-c-widget--related-courses a.ds-c-widget__secondary-link:is(:hover, :focus-visible) {
    color: var(--ds-color-link);
    text-decoration: underline;
    text-underline-offset: 3px;
}

#course_wrapper .ds-c-widget--related-courses a:focus-visible {
    outline: var(--ds-state-focus-ring-width) solid var(--ds-state-focus-ring-color);
    outline-offset: var(--ds-state-focus-ring-offset);
}

/* ==========================================================================
   DS v1.70: related articles as a one-row slider on tablet + desktop.
   Tablet: ~2.25 cards per view so the next card peeks. Desktop: full-width
   row of three.
   Phones keep the v1.70 thumbnail list.
   ========================================================================== */
@media (min-width: 768px) {
    body.single-post #releted_post_wrapper .related-articles-grid {
        display: grid;
        grid-auto-flow: column;
        grid-template-columns: none;
        grid-auto-columns: calc((100% - var(--ds-space-gap-lg) * 2) / 2.25);
        gap: var(--ds-space-gap-lg);
        overflow-x: auto;
        overscroll-behavior-x: contain;
        scroll-snap-type: x mandatory;
        scroll-padding-inline: 0;
        padding: var(--ds-space-1) var(--ds-space-1) var(--ds-space-4);
        margin-inline: calc(var(--ds-space-1) * -1);
        scrollbar-width: thin;
        scrollbar-color: var(--ds-color-border-default) transparent;
    }

    body.single-post #releted_post_wrapper .related-article-item {
        display: flex;
        scroll-snap-align: start;
        min-width: 0;
    }

    /* Equal-height cards so every date / "Read More" row lines up. */
    body.single-post #releted_post_wrapper .related-article-item > .article-card.ds-c-card {
        flex: 1 1 auto;
    }

    /* Hover lift would be clipped by the scroller. */
    body.single-post #releted_post_wrapper .article-card.ds-c-card:is(:hover, :focus-within) {
        transform: none;
    }

    /* Desktop: the section spans main + sidebar (content-single.php), so three
       cards fit in the row; more than three scroll. */
    @media (min-width: 992px) {
        body.single-post #releted_post_wrapper .related-articles-grid {
            grid-auto-columns: calc((100% - var(--ds-space-gap-lg) * 2) / 3);
        }
    }

    /* Date and "Read More" were butted together. */
    body.single-post #releted_post_wrapper .article-card__meta.ds-c-meta {
        justify-content: space-between;
        align-items: center;
        gap: var(--ds-space-3);
        margin-top: auto;
    }
}

/* ==========================================================================
   Search palette (header search overlay + homepage hero search results)
   Desktop: centred card over a dimmed page. Phones: full-screen sheet.
   ========================================================================== */
.mobile-search-overlay.ds-c-search-overlay {
    inset: 0;
    width: auto;
    padding: var(--ds-space-16) var(--ds-space-4) var(--ds-space-4);
    background: color-mix(in srgb, var(--ds-color-brand-primary) 40%, transparent);
    border: 0;
    box-shadow: none;
    backdrop-filter: blur(2px);
    transform: none;
    overflow-y: auto;
}

body.admin-bar .mobile-search-overlay.ds-c-search-overlay {
    top: 32px;
}

#mobileSearchOverlay .mobile-search-inner {
    position: relative;
    display: block;
    max-width: var(--ds-container-max-md);
    margin: 0 auto;
    border-radius: var(--ds-radius-xl);
    background: var(--ds-color-bg-surface);
    box-shadow: var(--ds-shadow-lg);
    overflow: hidden;
    transform: translateY(calc(var(--ds-space-2) * -1));
    transition: transform var(--ds-motion-enter) var(--ds-ease-standard);
}

#mobileSearchOverlay.active .mobile-search-inner {
    transform: none;
}

#mobileSearchOverlay .homepage-search-form {
    gap: 0;
}

#mobileSearchOverlay .input_wrapper {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}

#mobileSearchOverlay .input_wrapper:focus-within {
    border: 0;
    box-shadow: inset 0 -2px 0 var(--ds-color-brand-accent);
}

#mobileSearchOverlay #mobile-search {
    min-height: calc(var(--ds-space-16));
    padding: 0 var(--ds-space-16) 0 var(--ds-space-12);
    border-radius: 0;
    color: var(--ds-color-text-heading);
    font-size: var(--ds-font-size-lg);
}

#mobileSearchOverlay #mobile-search:focus {
    outline: none;
}

#mobileSearchOverlay #mobile-search::-webkit-search-cancel-button {
    display: none;
}

#mobileSearchOverlay .input_wrapper span {
    left: var(--ds-space-5);
    line-height: 0;
}

button#mobileSearchClose {
    position: absolute;
    top: var(--ds-space-3);
    right: var(--ds-space-3);
    width: var(--ds-space-10);
    min-width: var(--ds-space-10);
    height: var(--ds-space-10);
    border-radius: var(--ds-radius-md);
    background: transparent;
    box-shadow: none;
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-md);
    transition: background-color var(--ds-motion-fast) var(--ds-ease-standard);
}

button#mobileSearchClose:hover {
    background: var(--ds-color-bg-surface-muted);
    color: var(--ds-color-text-heading);
}

/* Results list */
#mobile-search-results .ui-autocomplete.ds-c-search-results {
    margin: 0;
    padding: var(--ds-space-2);
    max-height: min(60vh, calc(var(--ds-space-20) * 6));
    border: 0;
    border-top: 1px solid var(--ds-color-border-default);
    border-radius: 0;
    box-shadow: none;
    scrollbar-gutter: auto;
}

.ds-c-search-results .ui-menu-item + .ui-menu-item {
    border-top: 0;
}

.ds-c-search-results li .ds-c-search-results__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ds-space-gap-md);
    margin: 0;
    padding: var(--ds-space-3) var(--ds-space-4);
    border: 0;
    border-radius: var(--ds-radius-md);
    cursor: pointer;
}

.ds-c-search-results__title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-width: 0;
    color: var(--ds-color-text-heading);
    font-size: var(--ds-font-size-md);
    font-weight: var(--ds-font-weight-medium);
    line-height: var(--ds-line-height-normal);
}

.ds-c-search-results__meta {
    flex-shrink: 0;
    color: var(--ds-color-text-muted);
    font-size: var(--ds-font-size-xs);
    font-weight: var(--ds-font-weight-medium);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.ds-c-search-results li .ds-c-search-results__row.ui-state-active,
.ds-c-search-results li .ds-c-search-results__row:hover {
    margin: 0;
    border: 0;
    background: var(--ds-color-bg-surface-muted);
}

.ds-c-search-results li .ds-c-search-results__row.ui-state-active .ds-c-search-results__title,
.ds-c-search-results li .ds-c-search-results__row:hover .ds-c-search-results__title {
    text-decoration: underline;
    text-underline-offset: 0.15em;
}

/* "See all results" footer row */
.ds-c-search-results .ds-c-search-results__item--all {
    margin-top: var(--ds-space-2);
    padding-top: var(--ds-space-2);
    border-top: 1px solid var(--ds-color-border-default);
}

.ds-c-search-results__item--all .ds-c-search-results__title {
    color: var(--ds-color-text-body);
    font-size: var(--ds-font-size-sm);
    font-weight: var(--ds-font-weight-regular);
}

.ds-c-search-results__item--all .ds-c-search-results__title strong {
    color: var(--ds-color-text-heading);
    font-weight: var(--ds-font-weight-semibold);
}

.ds-c-search-results__item--all .ds-c-search-results__meta {
    color: var(--ds-color-brand-accent-deep);
    font-size: var(--ds-font-size-md);
}

@media (prefers-reduced-motion: reduce) {
    #mobileSearchOverlay .mobile-search-inner {
        transition: none;
    }
}

/* Phones: full-screen sheet, results fill the rest of the screen */
@media (max-width: 767.98px) {
    .mobile-search-overlay.ds-c-search-overlay {
        padding: 0;
        background: var(--ds-color-bg-surface);
        backdrop-filter: none;
    }

    #mobileSearchOverlay .mobile-search-inner {
        max-width: none;
        min-height: 100%;
        border-radius: 0;
        box-shadow: none;
        transform: none;
    }

    #mobile-search-results .ui-autocomplete.ds-c-search-results {
        max-height: calc(100dvh - var(--ds-space-16));
    }

    .ds-c-search-results li .ds-c-search-results__row {
        align-items: flex-start;
        flex-direction: column;
        gap: var(--ds-space-1);
        padding: var(--ds-space-3);
    }

    .ds-c-search-results__meta {
        order: -1;
    }

    .ds-c-search-results li.ds-c-search-results__item--all .ds-c-search-results__row {
        flex-direction: row;
        align-items: center;
    }

    .ds-c-search-results__item--all .ds-c-search-results__meta {
        order: 0;
    }
}

@media (max-width: 782px) {
    body.admin-bar .mobile-search-overlay.ds-c-search-overlay {
        top: 46px;
    }
}
