/* Global button shape requested for the Preflight website. */
.btn,
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
a.btn {
    border-radius: 6px !important;
}

html,
body,
#pb-page-content {
    max-width: 100%;
    /*overflow-x: hidden;*/
}

.dataTables_wrapper,
.preflight-articles-container {
    max-width: 100%;
}

@media (max-width: 1024px) {
    .preflight-results-toolbar,
    .preflight-search-summary__top,
    .preflight-article-card__actions,
    .preflight-result-actions {
        flex-wrap: wrap;
    }

    .preflight-results-main,
    .preflight-default-main,
    .preflight-results-sidebar,
    .preflight-volume-sidebar {
        min-width: 0;
    }
}

@media (max-width: 767.98px) {
    .ready-publication-section,
    .preflight-articles-container,
    .browse-page,
    .preflight-abstract-page,
    .preflight-fulltext-page {
        max-width: 100%;
    }

    .ready-publication-inner,
    .browse-shell,
    .preflight-abstract-wrap,
    .preflight-fulltext-wrap {
        width: calc(100% - 24px) !important;
        max-width: 100% !important;
    }

    .preflight-results-toolbar {
        align-items: flex-start !important;
        gap: 10px;
    }

    .preflight-sort-form,
    .preflight-page-size-control {
        max-width: 100%;
    }

    .preflight-sort-form select,
    .preflight-page-size-control select {
        max-width: 100%;
    }

    .preflight-article-card__actions,
    .preflight-result-actions {
        flex-wrap: wrap;
        gap: 7px !important;
    }

    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn {
        flex: 0 0 auto;
        width: auto !important;
        min-width: 74px;
    }

    /* Keep the existing cover style; only prevent overflow on small screens. */
    .browse-title-journal-card__cover-wrap,
    .browse-subject-journal-card__cover-wrap {
        overflow: hidden;
    }

    .browse-title-journal-card__cover,
    .browse-subject-journal-card__cover {
        width: 100% !important;
        max-width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        object-position: center top !important;
    }

    .browse-title-journal-card__title,
    .browse-subject-journal-card__title {
        overflow-wrap: anywhere;
    }

    .footer__bottom .row,
    .footer__copyright,
    .footer__social-media {
        text-align: center;
        justify-content: center;
    }
}

@media (max-width: 479.98px) {
    .preflight-abstract-actions,
    .preflight-fulltext-actions {
        width: 100%;
    }
}


/* =====================================================
   MOBILE JOURNAL CARD REFINEMENT
   Keep portrait covers readable and give the text enough width.
   Background artwork is already hidden on mobile by browse-pages.css.
===================================================== */
@media (max-width: 767.98px) {
    .browse-title-journal-list,
    .browse-subject-journal-list {
        gap: 14px !important;
    }

    .browse-title-journal-card,
    .browse-subject-journal-card {
        grid-template-columns: 105px minmax(0, 1fr) !important;
        min-height: 188px !important;
        border-radius: 9px !important;
    }

    .browse-title-journal-card__cover-wrap,
    .browse-subject-journal-card__cover-wrap,
    .browse-title-journal-card__cover,
    .browse-subject-journal-card__cover,
    .browse-title-journal-card__cover-placeholder,
    .browse-subject-journal-card__cover-placeholder {
        min-height: 188px !important;
        height: 100% !important;
    }

    .browse-title-journal-card__body,
    .browse-subject-journal-card__body {
        min-width: 0 !important;
        min-height: 188px !important;
        padding: 14px 12px 12px 14px !important;
    }

    .browse-title-journal-card__title,
    .browse-subject-journal-card__title {
        margin: 0 0 8px !important;
        font-size: 16px !important;
        line-height: 1.2 !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .browse-title-journal-card__meta,
    .browse-subject-journal-card__meta {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 3px 10px !important;
        margin-bottom: 0 !important;
        font-size: 10.5px !important;
        line-height: 1.35 !important;
    }

    .browse-title-journal-card__divider,
    .browse-subject-journal-card__divider {
        margin: 10px 0 !important;
    }

    .browse-title-journal-card__label,
    .browse-subject-journal-card__label {
        font-size: 10px !important;
        line-height: 1.3 !important;
    }

    .browse-title-journal-card__scope p,
    .browse-subject-journal-card__info p {
        margin: 6px 0 8px !important;
        font-size: 11px !important;
        line-height: 1.42 !important;
    }

    .browse-title-journal-card__action,
    .browse-subject-journal-card__action {
        margin-top: auto !important;
        text-align: left !important;
    }

    .browse-title-journal-card__link,
    .browse-subject-journal-card__link {
        font-size: 10px !important;
        line-height: 1.25 !important;
        white-space: normal !important;
    }
}

@media (max-width: 420px) {
    .browse-title-journal-card,
    .browse-subject-journal-card {
        grid-template-columns: 94px minmax(0, 1fr) !important;
        min-height: 174px !important;
    }

    .browse-title-journal-card__cover-wrap,
    .browse-subject-journal-card__cover-wrap,
    .browse-title-journal-card__cover,
    .browse-subject-journal-card__cover,
    .browse-title-journal-card__cover-placeholder,
    .browse-subject-journal-card__cover-placeholder {
        min-height: 174px !important;
    }

    .browse-title-journal-card__body,
    .browse-subject-journal-card__body {
        min-height: 174px !important;
        padding: 12px 10px 10px 12px !important;
    }

    .browse-title-journal-card__title,
    .browse-subject-journal-card__title {
        font-size: 14.5px !important;
    }

    .browse-title-journal-card__meta,
    .browse-subject-journal-card__meta {
        font-size: 10px !important;
        gap: 2px 8px !important;
    }

    .browse-title-journal-card__scope p,
    .browse-subject-journal-card__info p {
        font-size: 10.5px !important;
    }
}


/* =====================================================
   HEADER / MOBILE NAV / HERO RESPONSIVE FIX
   Keeps the existing desktop design while making the
   header, navigation and hero form usable on small screens.
===================================================== */

/* Header banner: never exceed 1200px and never use the old oversized/negative offsets. */
.main-header .main-navbar .header-row,
.main-header .main-navbar .navbar-in {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.main-header .navbar-brand__wrapper,
.main-header .navbar-brand {
    min-width: 0 !important;
}

.main-header .navbar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

.main-header .navbar-brand img.h-logo1,
.main-header .navbar-brand img {
    display: block !important;
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 1200px !important;
    height: auto !important;
    margin: 0 auto !important;
    object-fit: contain !important;
}

/* Mobile/Tablet off-canvas navigation. */
.preflight-mobile-nav,
.preflight-mobile-nav-overlay {
    display: none;
}

@media (max-width: 1280px) {
    .main-header .main-navbar {
        min-height: 76px;
        padding: 0 12px !important;
    }

    .main-header .main-navbar .header-row,
    .main-header .main-navbar .navbar-in {
        max-width: 100% !important;
        min-height: 76px;
        align-items: center !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        flex: 0 0 48px !important;
        max-width: 48px !important;
        width: 48px !important;
    }

    .main-header .navbar-brand__wrapper {
        flex: 1 1 auto !important;
        max-width: calc(100% - 96px) !important;
        width: calc(100% - 96px) !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        width: 100% !important;
        max-width: 760px !important;
        max-height: 72px !important;
    }

    .main-header .navbar-toggler {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        width: 42px;
        height: 42px;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #d7e2ea !important;
        background: #fff !important;
        color: #123f6d !important;
    }

    .preflight-mobile-nav-overlay {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 9998;
        background: rgba(7, 30, 52, .46);
        opacity: 0;
        visibility: hidden;
        transition: opacity .22s ease, visibility .22s ease;
    }

    .preflight-mobile-nav-overlay.is-open {
        opacity: 1;
        visibility: visible;
    }

    .preflight-mobile-nav {
        display: flex;
        position: fixed;
        z-index: 9999;
        top: 0;
        left: 0;
        bottom: 0;
        flex-direction: column;
        width: min(330px, 88vw);
        max-width: 88vw;
        background: #fff;
        box-shadow: 14px 0 40px rgba(9, 37, 61, .18);
        transform: translateX(-105%);
        transition: transform .24s ease;
        overflow-y: auto;
    }

    .preflight-mobile-nav.is-open {
        transform: translateX(0);
    }

    body.preflight-nav-open {
        overflow: hidden !important;
    }

    .preflight-mobile-nav__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 68px;
        padding: 0 18px;
        border-bottom: 1px solid #e1e8ee;
        background: #123f6d;
        color: #fff;
    }

    .preflight-mobile-nav__title {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: .8px;
        text-transform: uppercase;
    }

    .preflight-mobile-nav__close {
        width: 38px;
        height: 38px;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #fff !important;
        font-size: 30px;
        line-height: 1;
    }

    .preflight-mobile-nav__body {
        display: flex;
        flex-direction: column;
        padding: 10px 0 24px;
    }

    .preflight-mobile-nav__link,
    .preflight-mobile-nav__toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 48px;
        padding: 10px 18px !important;
        border: 0 !important;
        border-bottom: 1px solid #eef2f5 !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #123f6d !important;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: .35px;
        text-align: left;
        text-decoration: none !important;
        text-transform: uppercase;
    }

    .preflight-mobile-nav__toggle > span:last-child {
        font-size: 20px;
        font-weight: 400;
        transition: transform .2s ease;
    }

    .preflight-mobile-nav__toggle.is-open > span:last-child {
        transform: rotate(45deg);
    }

    .preflight-mobile-nav__submenu {
        display: none;
        padding: 5px 0 8px;
        background: #f7fafc;
    }

    .preflight-mobile-nav__submenu.is-open {
        display: block;
    }

    .preflight-mobile-nav__submenu a {
        display: block;
        padding: 10px 28px;
        color: #3f5870;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 12px;
        line-height: 1.35;
        text-decoration: none !important;
    }

    .preflight-mobile-nav__submenu a:hover,
    .preflight-mobile-nav__submenu a:focus {
        color: #f78118;
        background: #fff;
    }

    /* The desktop secondary nav stays out of the way on tablet/mobile. */
    .main-header__secondary {
        display: none !important;
    }
}

/* The sticky article bar (Abstract / Fulltext pages) shows the menu button on
   wide screens too, so the off-canvas navigation must also work above 1280px. */
@media (min-width: 1281px) {
    .preflight-mobile-nav-overlay {
        display: block;
        position: fixed;
        inset: 0;
        z-index: 9998;
        background: rgba(7, 30, 52, .46);
        opacity: 0;
        visibility: hidden;
        transition: opacity .22s ease, visibility .22s ease;
    }

    .preflight-mobile-nav-overlay.is-open {
        opacity: 1;
        visibility: visible;
    }

    .preflight-mobile-nav {
        display: flex;
        position: fixed;
        z-index: 9999;
        top: 0;
        left: 0;
        bottom: 0;
        flex-direction: column;
        width: min(330px, 88vw);
        max-width: 88vw;
        background: #fff;
        box-shadow: 14px 0 40px rgba(9, 37, 61, .18);
        transform: translateX(-105%);
        transition: transform .24s ease;
        overflow-y: auto;
    }

    .preflight-mobile-nav.is-open {
        transform: translateX(0);
    }

    body.preflight-nav-open {
        overflow: hidden !important;
    }

    .preflight-mobile-nav__header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 68px;
        padding: 0 18px;
        border-bottom: 1px solid #e1e8ee;
        background: #123f6d;
        color: #fff;
    }

    .preflight-mobile-nav__title {
        font-family: Arial, Helvetica, sans-serif;
        font-size: 15px;
        font-weight: 700;
        letter-spacing: .8px;
        text-transform: uppercase;
    }

    .preflight-mobile-nav__close {
        width: 38px;
        height: 38px;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
        color: #fff !important;
        font-size: 30px;
        line-height: 1;
    }

    .preflight-mobile-nav__body {
        display: flex;
        flex-direction: column;
        padding: 10px 0 24px;
    }

    .preflight-mobile-nav__link,
    .preflight-mobile-nav__toggle {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 48px;
        padding: 10px 18px !important;
        border: 0 !important;
        border-bottom: 1px solid #eef2f5 !important;
        border-radius: 0 !important;
        background: #fff !important;
        color: #123f6d !important;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 13px;
        font-weight: 700;
        letter-spacing: .35px;
        text-align: left;
        text-decoration: none !important;
        text-transform: uppercase;
    }

    .preflight-mobile-nav__toggle > span:last-child {
        font-size: 20px;
        font-weight: 400;
        transition: transform .2s ease;
    }

    .preflight-mobile-nav__toggle.is-open > span:last-child {
        transform: rotate(45deg);
    }

    .preflight-mobile-nav__submenu {
        display: none;
        padding: 5px 0 8px;
        background: #f7fafc;
    }

    .preflight-mobile-nav__submenu.is-open {
        display: block;
    }

    .preflight-mobile-nav__submenu a {
        display: block;
        padding: 10px 28px;
        color: #3f5870;
        font-family: Arial, Helvetica, sans-serif;
        font-size: 12px;
        line-height: 1.35;
        text-decoration: none !important;
    }

    .preflight-mobile-nav__submenu a:hover,
    .preflight-mobile-nav__submenu a:focus {
        color: #f78118;
        background: #fff;
    }
}


@media (max-width: 767.98px) {
    .main-header .main-navbar {
        min-height: 66px;
        padding: 0 8px !important;
    }

    .main-header .main-navbar .header-row,
    .main-header .main-navbar .navbar-in {
        min-height: 66px;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        flex-basis: 44px !important;
        max-width: 44px !important;
        width: 44px !important;
    }

    .main-header .navbar-brand__wrapper {
        max-width: calc(100% - 88px) !important;
        width: calc(100% - 88px) !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        max-width: 100% !important;
        max-height: 58px !important;
    }

    /* Hero spacing and search controls. */
    .ready-publication-section {
        padding: 28px 12px 30px !important;
    }

    .ready-publication-inner {
        width: 100% !important;
        max-width: 100% !important;
    }

    .ready-publication-title {
        font-size: clamp(27px, 8vw, 34px) !important;
        line-height: 1.14 !important;
    }

    .ready-publication-description {
        margin-bottom: 18px !important;
        font-size: 13px !important;
    }

    .ready-publication-search-box {
        width: 100%;
        padding: 15px 13px 14px !important;
        border-radius: 10px !important;
    }

    .ready-search-wrapper {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 9px !important;
        margin-bottom: 14px !important;
    }

    .ready-search-wrapper .ready-search-criteria,
    .ready-search-wrapper input,
    .ready-search-wrapper button {
        grid-column: 1 !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        margin: 0 !important;
        border: 1px solid #c9d1d8 !important;
        border-radius: 6px !important;
    }

    .ready-search-wrapper button {
        background: #2b5b8a !important;
        border-color: #2b5b8a !important;
    }

    .ready-filter-row,
    .ready-filter-row--with-criteria {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 11px !important;
    }

    .ready-form-group,
    .ready-form-group select {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .ready-form-group select {
        height: 40px !important;
    }
}

@media (max-width: 420px) {
    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        max-height: 50px !important;
    }

    .ready-publication-section {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .ready-publication-search-box {
        padding: 13px 10px !important;
    }
}


/* =====================================================
   FINAL RESPONSIVE PASS - 2026-09-17
   Header max 1200px + cards/forms/readers across devices.
   Appended last intentionally so it only resolves layout conflicts.
===================================================== */
*, *::before, *::after { box-sizing: border-box; }
html, body { width: 100%; max-width: 100%; overflow-x: hidden; }
img, svg, video, canvas { max-width: 100%; }

/* Header banner: preserve artwork, cap desktop width at 1200px. */
.main-header .main-navbar { width: 100%; }
.main-header .main-navbar .header-row,
.main-header .main-navbar .navbar-in {
    width: 100% !important;
    max-width: 1200px !important;
    margin-inline: auto !important;
}
.main-header .navbar-brand__wrapper { min-width: 0 !important; flex: 1 1 auto !important; }
.main-header .navbar-brand {
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
.main-header .navbar-brand img.h-logo1,
.main-header .navbar-brand img {
    width: 100% !important;
    max-width: 1200px !important;
    height: auto !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
    position: static !important;
    transform: none !important;
    margin: 0 auto !important;
}

/* Containers never exceed viewport. */
.ready-publication-inner,
.preflight-articles-container,
.browse-shell,
.preflight-abstract-wrap,
.preflight-fulltext-shell,
.preflight-results-layout,
.preflight-default-layout { min-width: 0; max-width: 1200px; }

/* Overview/live statistics cards. */
.preflight-overview-strip__inner { grid-template-columns: repeat(3, minmax(0,1fr)); }
.preflight-overview-card { min-width: 0; }

/* Search forms: protect from overflowing at intermediate tablet widths. */
.ready-search-wrapper > *,
.ready-filter-row > *,
.preflight-modify-search-grid > *,
.preflight-volume-widget * { min-width: 0; }

/* Article cards / result cards. */
.preflight-article-card,
.preflight-result-item { width: 100%; max-width: 100%; min-width: 0; }
.preflight-article-card__header,
.preflight-article-card__meta,
.preflight-result-meta { min-width: 0; }
.preflight-article-card__title,
.preflight-result-title,
.preflight-article-card__publication,
.preflight-article-card__authors,
.preflight-result-publication,
.preflight-result-authors,
.preflight-article-card__doi,
.preflight-result-doi { overflow-wrap: anywhere; }

/* Browse journal cards: preserve current desktop visual and hide decorative art on mobile. */
.browse-title-journal-card,
.browse-subject-journal-card { width: 100%; max-width: 100%; min-width: 0; overflow: hidden; }
.browse-title-journal-card__body,
.browse-subject-journal-card__body { min-width: 0; }
.browse-title-journal-card__cover,
.browse-subject-journal-card__cover { max-width: 100%; object-fit: cover; }

/* Fulltext / abstract content. */
.preflight-fulltext-article,
.preflight-abstract-card { max-width: 100%; min-width: 0; }
.preflight-fulltext-figure img,
.preflight-xsl-fulltext img { max-width: 100% !important; height: auto !important; }
.preflight-fulltext-table-wrap,
.preflight-xsl-fulltext .table-wrap,
.preflight-xsl-fulltext .collapsible-wrapper { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }

@media (max-width: 1199.98px) {
    .main-header .main-navbar { padding-inline: 14px !important; }
    .main-header .main-navbar .header-row,
    .main-header .main-navbar .navbar-in { max-width: 100% !important; }
    .ready-publication-inner,
    .preflight-articles-container,
    .browse-shell,
    .preflight-fulltext-shell { width: calc(100% - 30px) !important; max-width: 100% !important; }
}

@media (max-width: 991.98px) {
    /* Header becomes compact, side navigation handles menus. */
    .main-header .main-navbar { min-height: 72px !important; padding: 6px 12px !important; }
    .main-header .main-navbar .navbar-in { min-height: 60px !important; align-items: center !important; }
    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child { flex: 0 0 46px !important; width: 46px !important; max-width: 46px !important; }
    .main-header .navbar-brand__wrapper { width: calc(100% - 92px) !important; max-width: calc(100% - 92px) !important; }
    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img { width: 100% !important; max-width: 760px !important; }

    /* Hero search stacks more naturally on tablet. */
    .ready-search-wrapper { display: grid !important; grid-template-columns: minmax(150px, 190px) minmax(0,1fr) 108px !important; gap: 9px !important; }
    .ready-search-wrapper .ready-search-criteria,
    .ready-search-wrapper input,
    .ready-search-wrapper button { width: 100% !important; min-width: 0 !important; }
    .ready-filter-row { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
    .ready-filter-row > :first-child { grid-column: 1 / -1; }

    .preflight-default-layout,
    .preflight-results-layout,
    .preflight-abstract-layout,
    .preflight-fulltext-reader { grid-template-columns: 1fr !important; }
    .preflight-volume-sidebar,
    .preflight-results-sidebar,
    .preflight-abstract-sidebar { position: static !important; width: 100% !important; max-width: 100% !important; }
}

@media (max-width: 767.98px) {
    .main-header .main-navbar { min-height: 64px !important; padding: 5px 8px !important; }
    .main-header .main-navbar .navbar-in { min-height: 54px !important; }
    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child { flex-basis: 42px !important; width: 42px !important; max-width: 42px !important; }
    .main-header .navbar-brand__wrapper { width: calc(100% - 84px) !important; max-width: calc(100% - 84px) !important; }
    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img { max-width: 100% !important; max-height: 54px !important; }

    .ready-publication-section { padding: 28px 12px 30px !important; }
    .ready-publication-title { font-size: clamp(27px, 7.5vw, 34px) !important; }
    .ready-publication-search-box { padding: 15px 13px !important; }
    .ready-search-wrapper { grid-template-columns: 1fr !important; }
    .ready-search-wrapper .ready-search-criteria,
    .ready-search-wrapper input,
    .ready-search-wrapper button { height: 44px !important; border: 1px solid #c9d1d8 !important; border-radius: 6px !important; }
    .ready-filter-row { grid-template-columns: 1fr !important; }
    .ready-filter-row > :first-child { grid-column: auto; }
    .ready-form-group select { min-height: 40px; }

    .preflight-articles-container,
    .browse-shell,
    .preflight-abstract-wrap,
    .preflight-fulltext-shell { width: calc(100% - 20px) !important; max-width: 100% !important; margin-inline: auto !important; }
    .preflight-overview-strip__inner { gap: 10px !important; }
    .preflight-overview-card { padding: 14px 15px !important; }

    .preflight-article-card__actions,
    .preflight-result-actions { display: flex !important; flex-wrap: wrap !important; gap: 7px !important; }
    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn { min-width: 74px !important; width: auto !important; }

    /* Journal cards remain cover-left/content-right but readable. */
    .browse-title-journal-card,
    .browse-subject-journal-card { grid-template-columns: 105px minmax(0,1fr) !important; min-height: 188px !important; }
    .browse-title-journal-card::after,
    .browse-subject-journal-card::after { display: none !important; }
    .browse-title-journal-card__cover-wrap,
    .browse-subject-journal-card__cover-wrap,
    .browse-title-journal-card__cover,
    .browse-subject-journal-card__cover { min-height: 188px !important; height: 100% !important; }
    .browse-title-journal-card__body,
    .browse-subject-journal-card__body { min-height: 188px !important; padding: 14px 12px 12px 14px !important; }
    .browse-title-journal-card__title,
    .browse-subject-journal-card__title { font-size: 16px !important; line-height: 1.22 !important; overflow-wrap: anywhere; }
    .browse-title-journal-card__meta,
    .browse-subject-journal-card__meta { flex-wrap: wrap !important; font-size: 10.5px !important; }

    .preflight-abstract-card { padding: 22px 18px !important; }
    .preflight-abstract-title { font-size: 24px !important; overflow-wrap: anywhere; }
    .preflight-fulltext-section,
    .preflight-xsl-fulltext > section,
    .preflight-xsl-references { padding-left: 18px !important; padding-right: 18px !important; }
    .preflight-xsl-fulltext .figure-wrap { margin-left: 18px !important; margin-right: 18px !important; }

    .footer__bottom .row { row-gap: 12px; }
    .footer__copyright,
    .footer__social-media { text-align: center !important; justify-content: center !important; }
}

@media (max-width: 640px) {
    .preflight-overview-strip__inner { grid-template-columns: 1fr !important; }
    .preflight-overview-card__description { font-size: 12px !important; }
    .browse-subject-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 480px) {
    .main-header .main-navbar { padding-inline: 6px !important; }
    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child { flex-basis: 38px !important; width: 38px !important; max-width: 38px !important; }
    .main-header .navbar-brand__wrapper { width: calc(100% - 76px) !important; max-width: calc(100% - 76px) !important; }
    .main-header .navbar-toggler { width: 36px !important; height: 36px !important; }

    .ready-publication-section { padding-inline: 9px !important; }
    .ready-publication-search-box { padding: 13px 10px !important; }

    .preflight-articles-container,
    .browse-shell,
    .preflight-abstract-wrap,
    .preflight-fulltext-shell { width: calc(100% - 14px) !important; }

    .preflight-article-card,
    .preflight-result-item { padding: 13px !important; }
    .preflight-article-card__actions,
    .preflight-result-actions { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; width: 100%; }
    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn { width: 100% !important; min-width: 0 !important; padding-inline: 4px !important; }

    .browse-title-journal-card,
    .browse-subject-journal-card { grid-template-columns: 94px minmax(0,1fr) !important; min-height: 174px !important; }
    .browse-title-journal-card__cover-wrap,
    .browse-subject-journal-card__cover-wrap,
    .browse-title-journal-card__cover,
    .browse-subject-journal-card__cover { min-height: 174px !important; }
    .browse-title-journal-card__body,
    .browse-subject-journal-card__body { min-height: 174px !important; padding: 12px 9px 10px 11px !important; }
    .browse-title-journal-card__title,
    .browse-subject-journal-card__title { font-size: 14.5px !important; }
    .browse-title-journal-card__scope p,
    .browse-subject-journal-card__info p { font-size: 10.5px !important; line-height: 1.4 !important; }

    .preflight-fulltext-mobile-toc nav { grid-template-columns: 1fr !important; }
    .preflight-fulltext-table { min-width: 560px !important; }
    .preflight-xsl-fulltext table { min-width: 560px !important; }
}

@media (max-width: 360px) {
    .browse-title-journal-card,
    .browse-subject-journal-card { grid-template-columns: 86px minmax(0,1fr) !important; }
    .browse-title-journal-card__title,
    .browse-subject-journal-card__title { font-size: 13.5px !important; }
    .preflight-article-card__actions,
    .preflight-result-actions { gap: 5px !important; }
}


/* === FINAL HEADER BANNER CENTERING FIX ===
   Desktop: center the 1200px banner against the viewport, not the Bootstrap side columns.
   Tablet/mobile keep the existing responsive flow. */
@media (min-width: 1025px) {
    .main-header .main-navbar .header-row {
        position: relative !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 134px !important;
        margin: 0 !important;
    }

    .main-header .main-navbar .navbar-in {
        position: relative !important;
        width: 100% !important;
        max-width: none !important;
        min-height: 134px !important;
        margin: 0 !important;
    }

    .main-header .navbar-brand__wrapper {
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: min(1200px, calc(100vw - 32px)) !important;
        max-width: 1200px !important;
        height: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
        z-index: 1;
    }

    .main-header .navbar-brand {
        width: 100% !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        display: block !important;
        width: 100% !important;
        max-width: 1200px !important;
        height: auto !important;
        margin: 0 auto !important;
        object-fit: contain !important;
        object-position: center center !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        position: relative !important;
        z-index: 2;
    }
}

/* =====================================================
   COMPLETE RESPONSIVE HARDENING - FINAL DELIVERY
   Keeps the existing visual design, only normalizes layout
   behavior across desktop, laptop, tablet and mobile widths.
===================================================== */

:root {
    --preflight-page-gutter: clamp(10px, 2.2vw, 24px);
    --preflight-content-max: 1200px;
}

html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

html,
body,
#pb-page-content,
[data-pb-dropzone="main"],
main,
.content,
.browse-page,
.preflight-fulltext-page {
    width: 100%;
    max-width: 100%;
}

body {
    margin: 0;
    overflow-x: clip;
}

@supports not (overflow: clip) {
    body { overflow-x: hidden; }
}

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

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

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

pre,
code,
.preflight-article-card__title,
.preflight-result-title,
.preflight-abstract-title,
.browse-title-journal-card__title,
.browse-subject-journal-card__title,
.browse-journal-card__title,
.preflight-result-doi,
.preflight-article-card__doi,
.preflight-abstract-meta,
.preflight-fulltext-section,
.preflight-xsl-fulltext {
    overflow-wrap: anywhere;
    word-break: normal;
}

/* ---------------- Header / banner ---------------- */
.main-header,
.main-header .main-navbar,
.main-header .header-row {
    width: 100% !important;
    max-width: 100% !important;
}

.main-header .main-navbar {
    padding-inline: var(--preflight-page-gutter) !important;
}

.main-header .main-navbar .navbar-in {
    display: grid !important;
    grid-template-columns: 48px minmax(0, 1200px) 48px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1296px !important;
    min-width: 0 !important;
    margin-inline: auto !important;
}

.main-header .header-row__item,
.main-header .navbar-brand__wrapper {
    min-width: 0 !important;
}

.main-header .header-row__item:first-child,
.main-header .header-row__item:last-child {
    position: relative !important;
    z-index: 3 !important;
    width: 48px !important;
    max-width: 48px !important;
    flex: none !important;
}

.main-header .navbar-brand__wrapper {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 1200px !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
}

.main-header .navbar-brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-header .navbar-brand img.h-logo1,
.main-header .navbar-brand img {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    object-position: center center !important;
}

.main-header__secondary .navbar,
.main-header__secondary .navbar-in {
    max-width: 1200px !important;
    width: 100% !important;
    margin-inline: auto !important;
}

.main-header__secondary .navbar-nav {
    max-width: 100%;
    flex-wrap: wrap;
    justify-content: center;
}

/* ---------------- Shared content shells ---------------- */
.ready-publication-inner,
.preflight-articles-container,
.browse-shell,
.preflight-abstract-wrap,
.preflight-fulltext-shell {
    width: min(var(--preflight-content-max), calc(100% - (var(--preflight-page-gutter) * 2))) !important;
    max-width: var(--preflight-content-max) !important;
    min-width: 0 !important;
    margin-inline: auto !important;
}

.preflight-default-layout,
.preflight-results-layout,
.preflight-abstract-layout,
.preflight-fulltext-reader,
.preflight-default-main,
.preflight-results-main,
.preflight-results-sidebar,
.preflight-volume-sidebar,
.preflight-abstract-sidebar,
.preflight-fulltext-toc,
.preflight-fulltext-article {
    min-width: 0 !important;
    max-width: 100%;
}

/* ---------------- Hero/search/forms ---------------- */
.ready-publication-section {
    padding-inline: var(--preflight-page-gutter) !important;
}

.ready-publication-title {
    font-size: clamp(28px, 4vw, 40px) !important;
}

.ready-publication-description {
    max-width: 1200px !important;
}

.ready-publication-search-box,
.preflight-modify-search-panel,
.preflight-volume-widget,
.preflight-facet {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.ready-search-wrapper,
.ready-filter-row,
.preflight-modify-search-grid,
.preflight-sort-form,
.preflight-volume-form {
    max-width: 100%;
    min-width: 0;
}

.ready-search-wrapper > *,
.ready-filter-row > *,
.preflight-modify-search-grid > *,
.preflight-sort-form > *,
.preflight-volume-form > * {
    min-width: 0 !important;
}

.ready-search-wrapper input,
.ready-search-wrapper select,
.ready-search-wrapper button,
.ready-form-group select,
.preflight-modify-field input,
.preflight-modify-field select,
.preflight-sort-form select,
.preflight-volume-field select {
    max-width: 100% !important;
}

/* ---------------- Statistics/cards/results ---------------- */
.preflight-overview-strip__inner,
.browse-subject-grid,
.browse-subject-journal-list,
.browse-title-journal-list,
.browse-journal-list {
    min-width: 0;
}

.preflight-overview-card,
.preflight-total-widget,
.preflight-article-card,
.preflight-result-item,
.browse-subject-card,
.browse-journal-card,
.browse-title-journal-card,
.browse-subject-journal-card,
.preflight-abstract-card,
.preflight-fulltext-article {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.preflight-result-meta,
.preflight-article-card__meta,
.preflight-result-publication,
.preflight-result-authors,
.preflight-article-card__body,
.browse-journal-card__main,
.browse-title-journal-card__body,
.browse-subject-journal-card__body,
.browse-subject-card__content {
    min-width: 0 !important;
}

.preflight-result-actions,
.preflight-article-card__actions,
.preflight-abstract-actions {
    max-width: 100%;
}

.preflight-result-actions .btn,
.preflight-article-card__actions .btn,
.preflight-abstract-actions a,
.browse-journal-card__action .btn,
.browse-title-journal-card__link,
.browse-subject-journal-card__link {
    white-space: normal;
}

/* ---------------- Browse pages ---------------- */
.browse-hero,
.browse-title-heading,
.browse-subject-detail-heading,
.browse-title-result-header {
    max-width: 100%;
    min-width: 0;
}

.browse-alpha-nav {
    width: 100%;
    max-width: 100%;
}

.browse-title-journal-card__cover,
.browse-subject-journal-card__cover {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    object-fit: cover;
}

/* ---------------- Abstract/fulltext ---------------- */
.preflight-fulltext-table-wrap,
.preflight-xsl-fulltext .table-wrap,
.preflight-xsl-fulltext .collapsible-wrapper,
.preflight-fulltext-figure,
.preflight-xsl-fulltext .figure-wrap {
    width: 100%;
    max-width: 100%;
}

.preflight-fulltext-table-wrap,
.preflight-xsl-fulltext .table-wrap,
.preflight-xsl-fulltext .collapsible-wrapper {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}

.preflight-fulltext-figure img,
.preflight-xsl-fulltext .figure-wrap img,
.preflight-xsl-fulltext img {
    display: block;
    max-width: 100% !important;
    height: auto !important;
    margin-inline: auto;
}

/* ---------------- Tablet / small laptop ---------------- */
@media (max-width: 1024.98px) {
    .main-header .main-navbar .navbar-in {
        grid-template-columns: 46px minmax(0, 1fr) 46px !important;
        max-width: 100% !important;
        min-height: 70px !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        width: 46px !important;
        max-width: 46px !important;
    }

    .main-header .navbar-brand__wrapper {
        width: 100% !important;
        max-width: 100% !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        width: min(100%, 900px) !important;
        max-width: 100% !important;
        max-height: 70px !important;
    }

    .preflight-default-layout,
    .preflight-results-layout,
    .preflight-abstract-layout,
    .preflight-fulltext-reader {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .preflight-volume-sidebar,
    .preflight-results-sidebar,
    .preflight-abstract-sidebar,
    .preflight-fulltext-toc {
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .ready-search-wrapper {
        display: grid !important;
        grid-template-columns: minmax(145px, 190px) minmax(0, 1fr) minmax(92px, 108px) !important;
        gap: 9px !important;
    }

    .ready-filter-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .browse-hero__visual {
        flex-basis: 180px !important;
    }
}

/* ---------------- Phones / portrait tablets ---------------- */
@media (max-width: 767.98px) {
    :root { --preflight-page-gutter: 10px; }

    .main-header .main-navbar {
        min-height: 58px !important;
        padding-inline: 7px !important;
    }

    .main-header .main-navbar .navbar-in {
        grid-template-columns: 42px minmax(0, 1fr) 42px !important;
        min-height: 58px !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        width: 42px !important;
        max-width: 42px !important;
    }

    .main-header .navbar-toggler {
        width: 38px !important;
        height: 38px !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        width: 100% !important;
        max-width: 100% !important;
        max-height: 52px !important;
    }

    .ready-publication-section {
        padding-top: 26px !important;
        padding-bottom: 28px !important;
    }

    .ready-publication-search-box {
        padding: 14px 12px !important;
    }

    .ready-search-wrapper,
    .ready-filter-row,
    .ready-filter-row--with-criteria,
    .preflight-modify-search-grid,
    .preflight-modify-search-grid--main,
    .preflight-modify-search-grid--filters {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .ready-search-wrapper .ready-search-criteria,
    .ready-search-wrapper input,
    .ready-search-wrapper button {
        grid-column: 1 !important;
        width: 100% !important;
        min-width: 0 !important;
        height: 44px !important;
        margin: 0 !important;
        border: 1px solid #c9d1d8 !important;
        border-radius: 6px !important;
    }

    .ready-search-wrapper button {
        border-color: #2b5b8a !important;
    }

    .preflight-overview-strip__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .preflight-overview-card {
        padding: 14px !important;
    }

    .preflight-result-meta,
    .preflight-article-card__meta,
    .preflight-results-toolbar,
    .preflight-search-summary__top,
    .preflight-page-size-control {
        flex-wrap: wrap !important;
        gap: 8px !important;
    }

    .preflight-result-actions,
    .preflight-article-card__actions,
    .preflight-abstract-actions {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 7px !important;
    }

    .preflight-result-actions .btn,
    .preflight-article-card__actions .btn,
    .preflight-abstract-actions a {
        flex: 1 1 auto;
        min-width: 84px !important;
    }

    .browse-hero {
        padding: 24px 18px !important;
    }

    .browse-hero__visual {
        display: none !important;
    }

    .browse-subject-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .browse-journal-card {
        flex-direction: column !important;
        gap: 14px !important;
        padding: 18px !important;
    }

    .browse-journal-card__action {
        align-self: stretch !important;
    }

    .browse-journal-card__action .btn {
        width: 100% !important;
        min-width: 0 !important;
    }

    .browse-title-journal-card,
    .browse-subject-journal-card {
        grid-template-columns: 105px minmax(0, 1fr) !important;
        min-height: 180px !important;
    }

    .browse-title-journal-card::after,
    .browse-subject-journal-card::after {
        display: none !important;
    }

    .browse-title-journal-card__body,
    .browse-subject-journal-card__body {
        padding: 13px 12px !important;
        min-height: 180px !important;
    }

    .browse-alpha-nav {
        padding: 12px !important;
        gap: 6px !important;
    }

    .browse-alpha-link {
        width: 34px !important;
        height: 34px !important;
        flex: 0 0 34px;
    }

    .preflight-abstract-card {
        padding: 20px 16px !important;
    }

    .preflight-fulltext-section,
    .preflight-xsl-fulltext > section,
    .preflight-xsl-references,
    .preflight-xsl-fulltext > .bm > p,
    .preflight-xsl-fulltext > .bm > div {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .footer,
    .footer__middle,
    .footer__bottom,
    .footer .container-fluid,
    .footer .row {
        max-width: 100% !important;
    }
}

/* ---------------- Small phones ---------------- */
@media (max-width: 480px) {
    :root { --preflight-page-gutter: 7px; }

    .main-header .main-navbar .navbar-in {
        grid-template-columns: 38px minmax(0, 1fr) 38px !important;
        min-height: 52px !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        width: 38px !important;
        max-width: 38px !important;
    }

    .main-header .navbar-toggler {
        width: 34px !important;
        height: 34px !important;
    }

    .main-header .navbar-brand img.h-logo1,
    .main-header .navbar-brand img {
        max-height: 44px !important;
    }

    .ready-publication-title {
        font-size: clamp(25px, 8.5vw, 30px) !important;
    }

    .preflight-overview-strip__inner,
    .browse-subject-grid {
        grid-template-columns: 1fr !important;
    }

    .preflight-overview-card__description {
        font-size: 12px !important;
    }

    .preflight-article-card,
    .preflight-result-item {
        padding: 13px !important;
    }

    .preflight-result-actions,
    .preflight-article-card__actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        width: 100% !important;
        gap: 5px !important;
    }

    .preflight-result-actions .btn,
    .preflight-article-card__actions .btn {
        width: 100% !important;
        min-width: 0 !important;
        padding-inline: 4px !important;
        font-size: 10px !important;
    }

    .browse-title-journal-card,
    .browse-subject-journal-card {
        grid-template-columns: 92px minmax(0, 1fr) !important;
        min-height: 166px !important;
    }

    .browse-title-journal-card__body,
    .browse-subject-journal-card__body {
        min-height: 166px !important;
        padding: 11px 9px 10px 10px !important;
    }

    .browse-title-journal-card__title,
    .browse-subject-journal-card__title {
        font-size: 14px !important;
        line-height: 1.25 !important;
    }

    .browse-title-journal-card__meta,
    .browse-subject-journal-card__meta {
        font-size: 10px !important;
        gap: 4px 8px !important;
    }

    .browse-title-journal-card__scope p,
    .browse-subject-journal-card__info p {
        font-size: 10.5px !important;
        line-height: 1.38 !important;
    }

    .browse-alpha-link {
        width: 32px !important;
        height: 32px !important;
        flex-basis: 32px;
    }

    .preflight-fulltext-table,
    .preflight-xsl-fulltext table {
        min-width: 520px !important;
    }
}

@media (max-width: 360px) {
    .main-header .main-navbar {
        padding-inline: 4px !important;
    }

    .main-header .main-navbar .navbar-in {
        grid-template-columns: 36px minmax(0, 1fr) 36px !important;
    }

    .main-header .header-row__item:first-child,
    .main-header .header-row__item:last-child {
        width: 36px !important;
        max-width: 36px !important;
    }

    .browse-title-journal-card,
    .browse-subject-journal-card {
        grid-template-columns: 84px minmax(0, 1fr) !important;
    }

    .preflight-result-actions,
    .preflight-article-card__actions {
        grid-template-columns: 1fr !important;
    }

    .preflight-result-actions .btn,
    .preflight-article-card__actions .btn {
        min-height: 36px !important;
    }
}

/* ==========================================================================
   FINAL HEADER / BANNER RESPONSIVE FIX
   - banner is always centered against the viewport
   - original 1140x125 artwork is never stretched or cropped
   - desktop navigation stays horizontal only when there is enough room
   - browser zoom / tablets switch to the off-canvas menu cleanly
   ========================================================================== */
.main-header,
.main-header .main-navbar,
.main-header .preflight-header-row {
    width: 100% !important;
    max-width: none !important;
}

.main-header .main-navbar {
    position: relative !important;
    display: block !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
}

.main-header .preflight-header-row {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

.main-header .preflight-header-inner {
    position: relative !important;
    display: grid !important;
    grid-template-columns: 56px minmax(0200140px) 56px !important;
    /*grid-template-columns: 56px minmax(0, 1140px) 56px !important;*/
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 64px !important;
    margin: 0 auto !important;
    padding: 6px 16px !important;
    box-sizing: border-box !important;
}

.main-header .preflight-header-side {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    width: 56px !important;
    max-width: 56px !important;
    min-width: 56px !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
}

.main-header .preflight-header-side--left {
    justify-content: flex-start !important;
}

.main-header .preflight-header-side--right {
    justify-content: flex-end !important;
}

.main-header .preflight-header-brand {
    position: relative !important;
    inset: auto !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    /*max-width: 1140px !important;*/
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    flex: none !important;
}

.main-header .preflight-header-brand .navbar-brand {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1200px !important;
    /*max-width: 1140px !important;*/
    min-width: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    transform: none !important;
}

.main-header .preflight-header-brand .preflight-header-banner,
.main-header .preflight-header-brand img.h-logo1,
.main-header .preflight-header-brand img {
    position: static !important;
    inset: auto !important;
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    /*max-width: 1140px !important;*/
    height: auto !important;
    max-height: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    transform: none !important;
    object-fit: contain !important;
    object-position: center center !important;
}

/* Desktop menu: only keep it when there is genuinely enough horizontal room. */
@media (min-width: 1281px) {
    .main-header .togle_button1 {
        display: none !important;
    }

    .main-header__secondary {
        display: flex !important;
        justify-content: center !important;
        width: 100% !important;
    }

    .main-header__secondary .navbar,
    .main-header__secondary .navbar-in {
        width: 100% !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
    }

    .main-header__secondary .main-menu__nav,
    .main-header__secondary .navbar-nav {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        width: auto !important;
        max-width: 100% !important;
    }

    .main-header__secondary .nav-item,
    .main-header__secondary .nav-link {
        flex: 0 0 auto !important;
        white-space: nowrap !important;
    }
}

/* Zoomed desktop, small laptop and tablet: use the burger instead of breaking the nav. */
@media (max-width: 1280px) {
    .main-header .preflight-header-inner {
        grid-template-columns: 52px minmax(0, 1fr) 52px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .main-header .preflight-header-side {
        width: 52px !important;
        max-width: 52px !important;
        min-width: 52px !important;
    }

    .main-header .togle_button1 {
        display: flex !important;
        align-items: center !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .main-header .navbar-toggler {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 42px !important;
        height: 42px !important;
        min-width: 42px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 1px solid #d7e2ea !important;
        border-radius: 6px !important;
        background: #fff !important;
        color: #123f6d !important;
    }

    .main-header__secondary {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .main-header .preflight-header-inner {
        grid-template-columns: 44px minmax(0, 1fr) 44px !important;
        min-height: 60px !important;
        padding: 6px !important;
    }

    .main-header .preflight-header-side {
        width: 44px !important;
        max-width: 44px !important;
        min-width: 44px !important;
    }

    .main-header .navbar-toggler {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
    }
}

@media (max-width: 420px) {
    .main-header .preflight-header-inner {
        grid-template-columns: 40px minmax(0, 1fr) 40px !important;
        min-height: 56px !important;
        padding: 5px !important;
    }

    .main-header .preflight-header-side {
        width: 40px !important;
        max-width: 40px !important;
        min-width: 40px !important;
    }

    .main-header .navbar-toggler {
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
    }
}

/* ==========================================================================
   FINAL ARTICLE CARD RESPONSIVE FIX
   Prevent article cards/action buttons from stretching or overflowing when
   browser zoom reduces the effective viewport width.
   ========================================================================== */
.preflight-default-layout,
.preflight-results-layout {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.preflight-default-main,
.preflight-results-main,
.preflight-article-card,
.preflight-result-item,
.preflight-article-card__content,
.preflight-article-card__content > .d-flex,
.preflight-article-card__content .recet-article-cont {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.preflight-article-card__meta,
.preflight-result-meta {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    column-gap: 10px !important;
    row-gap: 7px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.preflight-article-card__type,
.preflight-result-type {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    white-space: normal !important;
}

.preflight-article-card__doi,
.preflight-result-doi {
    flex: 1 1 260px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

.preflight-article-card__doi a,
.preflight-result-doi a,
.preflight-article-card__title,
.preflight-article-card__title a,
.preflight-result-title,
.preflight-result-title a,
.preflight-article-card__publication,
.preflight-result-publication,
.preflight-article-card__authors,
.preflight-result-authors {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.preflight-article-card__actions,
.preflight-result-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-top: 14px !important;
}

.preflight-article-card__actions .btn,
.preflight-result-actions .btn,
.preflight-article-card__actions .preflight-abstract-button,
.preflight-result-actions .preflight-abstract-button,
.preflight-article-card__actions .preflight-fulltext-button,
.preflight-result-actions .preflight-fulltext-button,
.preflight-article-card__actions .preflight-pdf-button,
.preflight-result-actions .preflight-pdf-button {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 118px !important;
    max-width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 16px !important;
    font-size: 14px !important;
    line-height: 36px !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

/* Small laptop / zoomed desktop: do not squeeze the article column beside
   the volume widget. Stack the sidebar cleanly underneath instead. */
@media (max-width: 1199.98px) {
    .preflight-default-layout,
    .preflight-results-layout {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 20px !important;
    }

    .preflight-default-main,
    .preflight-results-main {
        order: 1 !important;
    }

    .preflight-volume-sidebar,
    .preflight-results-sidebar {
        order: 2 !important;
        position: static !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .preflight-volume-sidebar .preflight-volume-widget,
    .preflight-results-sidebar .preflight-volume-widget {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 767.98px) {
    .preflight-article-card,
    .preflight-result-item {
        padding: 16px !important;
    }

    .preflight-article-card__meta,
    .preflight-result-meta {
        align-items: flex-start !important;
    }

    .preflight-article-card__doi,
    .preflight-result-doi {
        flex-basis: 100% !important;
    }

    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn,
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-pdf-button {
        min-width: 96px !important;
        height: 36px !important;
        min-height: 36px !important;
        padding: 0 12px !important;
        font-size: 13px !important;
        line-height: 34px !important;
    }
}

@media (max-width: 479.98px) {
    .preflight-article-card__actions,
    .preflight-result-actions {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn,
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-pdf-button {
        width: 100% !important;
        min-width: 0 !important;
        padding: 0 6px !important;
        font-size: 12px !important;
    }
}

@media (max-width: 359.98px) {
    .preflight-article-card__actions,
    .preflight-result-actions {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   FINAL ARTICLE ACTION BUTTON SIZE FIX
   Keep Abstract / Fulltext / PDF compact at every viewport/zoom.
===================================================== */
.preflight-article-card__actions,
.preflight-result-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    width: auto !important;
    max-width: 100% !important;
}

.preflight-article-card__actions .btn,
.preflight-result-actions .btn,
.preflight-article-card__actions .preflight-abstract-button,
.preflight-result-actions .preflight-abstract-button,
.preflight-article-card__actions .preflight-fulltext-button,
.preflight-result-actions .preflight-fulltext-button,
.preflight-article-card__actions .preflight-pdf-button,
.preflight-result-actions .preflight-pdf-button {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 108px !important;
    max-width: max-content !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 14px !important;
    font-size: 13px !important;
    line-height: 34px !important;
    text-align: center !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
}

@media (max-width: 767.98px) {
    .preflight-article-card__actions,
    .preflight-result-actions {
        display: flex !important;
        grid-template-columns: none !important;
        width: auto !important;
        gap: 7px !important;
    }

    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn,
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-pdf-button {
        flex: 0 0 auto !important;
        width: auto !important;
        min-width: 96px !important;
        max-width: max-content !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 12px !important;
        font-size: 12.5px !important;
        line-height: 32px !important;
    }
}

@media (max-width: 420px) {
    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn,
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-pdf-button {
        min-width: 86px !important;
        padding: 0 10px !important;
        font-size: 12px !important;
    }
}

/* =====================================================
   FINAL ARTICLE ACTION BUTTON HEIGHT FIX
   Reduce only Abstract / Fulltext / PDF button height.
===================================================== */
.preflight-article-card__actions .btn,
.preflight-result-actions .btn,
.preflight-article-card__actions .preflight-abstract-button,
.preflight-result-actions .preflight-abstract-button,
.preflight-article-card__actions .preflight-fulltext-button,
.preflight-result-actions .preflight-fulltext-button,
.preflight-article-card__actions .preflight-pdf-button,
.preflight-result-actions .preflight-pdf-button {
    height: 30px !important;
    min-height: 30px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 28px !important;
}

@media (max-width: 767.98px) {
    .preflight-article-card__actions .btn,
    .preflight-result-actions .btn,
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-pdf-button {
        height: 28px !important;
        min-height: 28px !important;
        line-height: 26px !important;
    }
}
.main-navbar.navbar-expanded {
    overflow: visible !important;
}
/* =====================================================
   FINAL COMPACT ARTICLE FORMAT BUTTONS
   Abstract / Fulltext / PDF stay short everywhere without
   changing unrelated buttons or the Dentistry tool icons.
===================================================== */
.preflight-article-card__actions .preflight-abstract-button,
.preflight-article-card__actions .preflight-fulltext-button,
.preflight-article-card__actions .preflight-pdf-button,
.preflight-result-actions .preflight-abstract-button,
.preflight-result-actions .preflight-fulltext-button,
.preflight-result-actions .preflight-pdf-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 92px !important;
    max-width: max-content !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 11px !important;
    font-size: 12px !important;
    line-height: 26px !important;
    white-space: nowrap !important;
}

.preflight-abstract-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    margin-top: 18px !important;
}

.preflight-abstract-actions a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 72px !important;
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 10px !important;
    border: 1px solid #244f78 !important;
    border-radius: 6px !important;
    background: transparent !important;
    color: #244f78 !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 26px !important;
    text-align: center !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.preflight-abstract-actions a:hover,
.preflight-abstract-actions a:focus {
    background: #244f78 !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext #core-collateral-download .btn {
    min-height: 28px !important;
    height: 28px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 26px !important;
}

@media (max-width: 767.98px) {
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-pdf-button,
    .preflight-abstract-actions a {
        min-width: 78px !important;
        height: 26px !important;
        min-height: 26px !important;
        padding: 0 9px !important;
        font-size: 11.5px !important;
        line-height: 24px !important;
    }
}

/* =====================================================
   FINAL BOS PREFLIGHT THEME + COMPACT ARTICLE CONTROLS
   -----------------------------------------------------
   Keep the Dentistry article structure/functionality,
   but use the BOS Preflight navy/blue/orange palette.
===================================================== */
.preflight-dentistry-fulltext {
    --bos-primary: #2b5b8a;
    --bos-primary-dark: #1f4368;
    --bos-heading: #123f6d;
    --bos-accent: #f78118;
    --bos-border: #d9e1e8;
}

/* Article typography + links stay inside the BOS palette. */
.preflight-dentistry-fulltext article h1,
.preflight-dentistry-fulltext article h2,
.preflight-dentistry-fulltext article h3,
.preflight-dentistry-fulltext article h4,
.preflight-dentistry-fulltext .sections-navbar__title {
    /*color: var(--bos-heading) !important;*/
}

.preflight-dentistry-fulltext article a:not(.preflight-dentistry-orcid),
.preflight-dentistry-fulltext .core-collateral a {
    color: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext article a:not(.preflight-dentistry-orcid):hover,
.preflight-dentistry-fulltext article a:not(.preflight-dentistry-orcid):focus,
.preflight-dentistry-fulltext .core-collateral a:hover,
.preflight-dentistry-fulltext .core-collateral a:focus {
    color: var(--bos-primary-dark) !important;
}

.preflight-dentistry-fulltext .meta-panel__type,
.preflight-dentistry-fulltext .meta-panel__type span {
    color: var(--bos-primary) !important;
}

/* Top article controls + Previous / Next Article. */
.preflight-dentistry-fulltext .preflight-dentistry-formats .btn,
.preflight-dentistry-fulltext .preflight-dentistry-formats .article-tools__citation {
    color: var(--bos-primary) !important;
    border-color: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext .preflight-dentistry-formats .btn-secondary {
    background: var(--bos-primary) !important;
    border-color: var(--bos-primary) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext .preflight-dentistry-formats .btn:hover,
.preflight-dentistry-fulltext .preflight-dentistry-formats .btn:focus,
.preflight-dentistry-fulltext .preflight-dentistry-formats .article-tools__citation:hover,
.preflight-dentistry-fulltext .preflight-dentistry-formats .article-tools__citation:focus {
    background: var(--bos-primary-dark) !important;
    border-color: var(--bos-primary-dark) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext .article-tools .article-tools__citation,
.preflight-dentistry-fulltext .article-tools .article-tools__citation span {
    color: var(--bos-primary) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
}

.preflight-dentistry-fulltext .article-tools .article-tools__citation i {
    color: var(--bos-primary) !important;
    font-size: 12px !important;
}

.preflight-dentistry-fulltext .article-tools .article-tools__citation:hover,
.preflight-dentistry-fulltext .article-tools .article-tools__citation:focus,
.preflight-dentistry-fulltext .article-tools .article-tools__citation:hover span,
.preflight-dentistry-fulltext .article-tools .article-tools__citation:focus span,
.preflight-dentistry-fulltext .article-tools .article-tools__citation:hover i,
.preflight-dentistry-fulltext .article-tools .article-tools__citation:focus i {
    color: var(--bos-primary-dark) !important;
}

/* Article Sections / responsive sections control. */
.preflight-dentistry-fulltext nav[data-core-nav="article"].sections-navbar ul a:hover,
.preflight-dentistry-fulltext nav[data-core-nav="article"].sections-navbar ul a:focus,
.preflight-dentistry-fulltext nav[data-core-nav="article"].sections-navbar ul a.active,
.preflight-dentistry-fulltext nav[data-core-nav="article"].sections-navbar ul a.is-active {
    color: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext .preflight-sections-float-toggle:hover,
.preflight-dentistry-fulltext .preflight-sections-float-toggle:focus,
.preflight-dentistry-fulltext .preflight-sections-float-toggle[aria-expanded="true"] {
    color: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext .preflight-sections-drawer__header,
.preflight-dentistry-fulltext .preflight-content-viewer__header {
    background: var(--bos-heading) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext .preflight-sections-drawer__body a:hover,
.preflight-dentistry-fulltext .preflight-sections-drawer__body a:focus,
.preflight-dentistry-fulltext .preflight-sections-drawer__body a.is-active {
    border-left-color: var(--bos-accent) !important;
    color: var(--bos-primary) !important;
    background: #f7fafc !important;
}

/* Dentistry collateral toolbar/drawer in BOS colors. */
.preflight-dentistry-fulltext .preflight-collateral-toolbar button:hover,
.preflight-dentistry-fulltext .preflight-collateral-toolbar button:focus,
.preflight-dentistry-fulltext .preflight-mobile-article-toolbar button:hover,
.preflight-dentistry-fulltext .preflight-mobile-article-toolbar button:focus {
    color: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext .preflight-collateral-toolbar button.is-active::before,
.preflight-dentistry-fulltext .preflight-mobile-article-toolbar button.is-active::before {
    background: var(--bos-primary) !important;
}

.preflight-dentistry-fulltext .preflight-collateral-toolbar button.is-active > i,
.preflight-dentistry-fulltext .preflight-mobile-article-toolbar button.is-active > i {
    color: #fff !important;
}

.preflight-dentistry-fulltext .preflight-collateral-toolbar .icon-lock-open,
.preflight-dentistry-fulltext .preflight-mobile-article-toolbar .icon-lock-open {
    color: #767676 !important;
}

.preflight-dentistry-fulltext .core-collateral.preflight-collateral-fallback > [role="tabpanel"] > header,
.preflight-dentistry-fulltext .preflight-collateral-tabs,
.preflight-dentistry-fulltext .preflight-collateral-tabs button {
    background: var(--bos-heading) !important;
}

.preflight-dentistry-fulltext .preflight-collateral-tabs button.active,
.preflight-dentistry-fulltext .preflight-collateral-tabs button:hover,
.preflight-dentistry-fulltext .preflight-collateral-tabs button:focus {
    background: var(--bos-primary-dark) !important;
    border-bottom-color: var(--bos-accent) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext .preflight-reference-go,
.preflight-dentistry-fulltext .preflight-collateral-go-to,
.preflight-dentistry-fulltext .preflight-collateral-open-viewer {
    border-color: var(--bos-primary) !important;
    color: var(--bos-primary) !important;
    background: #fff !important;
}

.preflight-dentistry-fulltext .preflight-reference-go:hover,
.preflight-dentistry-fulltext .preflight-reference-go:focus,
.preflight-dentistry-fulltext .preflight-collateral-go-to:hover,
.preflight-dentistry-fulltext .preflight-collateral-go-to:focus,
.preflight-dentistry-fulltext .preflight-collateral-open-viewer:hover,
.preflight-dentistry-fulltext .preflight-collateral-open-viewer:focus {
    background: var(--bos-primary) !important;
    border-color: var(--bos-primary) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext .preflight-mobile-article-toolbar {
    background: var(--bos-heading) !important;
}

/* Slightly smaller Abstract / Fulltext / PDF controls everywhere they appear. */
.preflight-article-card__actions .preflight-abstract-button,
.preflight-article-card__actions .preflight-fulltext-button,
.preflight-article-card__actions .preflight-pdf-button,
.preflight-result-actions .preflight-abstract-button,
.preflight-result-actions .preflight-fulltext-button,
.preflight-result-actions .preflight-pdf-button {
    min-width: 82px !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    border-color: var(--bos-primary, #2b5b8a) !important;
    color: var(--bos-primary, #2b5b8a) !important;
    font-size: 11.5px !important;
    line-height: 22px !important;
}

.preflight-article-card__actions .preflight-abstract-button:hover,
.preflight-article-card__actions .preflight-fulltext-button:hover,
.preflight-article-card__actions .preflight-pdf-button:hover,
.preflight-result-actions .preflight-abstract-button:hover,
.preflight-result-actions .preflight-fulltext-button:hover,
.preflight-result-actions .preflight-pdf-button:hover,
.preflight-article-card__actions .preflight-abstract-button:focus,
.preflight-article-card__actions .preflight-fulltext-button:focus,
.preflight-article-card__actions .preflight-pdf-button:focus,
.preflight-result-actions .preflight-abstract-button:focus,
.preflight-result-actions .preflight-fulltext-button:focus,
.preflight-result-actions .preflight-pdf-button:focus {
    background: #2b5b8a !important;
    border-color: #2b5b8a !important;
    color: #fff !important;
}

.preflight-abstract-actions a {
    min-width: 66px !important;
    height: 24px !important;
    min-height: 24px !important;
    padding: 0 8px !important;
    border-color: #2b5b8a !important;
    color: #2b5b8a !important;
    font-size: 11.5px !important;
    line-height: 22px !important;
}

.preflight-abstract-actions a:hover,
.preflight-abstract-actions a:focus {
    background: #2b5b8a !important;
    border-color: #2b5b8a !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext #core-collateral-download .btn {
    min-height: 24px !important;
    height: 24px !important;
    padding: 0 9px !important;
    border-color: #2b5b8a !important;
    color: #2b5b8a !important;
    font-size: 11px !important;
    line-height: 22px !important;
}

.preflight-dentistry-fulltext #core-collateral-download .btn:hover,
.preflight-dentistry-fulltext #core-collateral-download .btn:focus {
    background: #2b5b8a !important;
    color: #fff !important;
}

@media (max-width: 767.98px) {
    .preflight-article-card__actions .preflight-abstract-button,
    .preflight-article-card__actions .preflight-fulltext-button,
    .preflight-article-card__actions .preflight-pdf-button,
    .preflight-result-actions .preflight-abstract-button,
    .preflight-result-actions .preflight-fulltext-button,
    .preflight-result-actions .preflight-pdf-button {
        min-width: 74px !important;
        height: 24px !important;
        min-height: 24px !important;
        padding: 0 8px !important;
        font-size: 11px !important;
        line-height: 22px !important;
    }
}

/* =====================================================
   BOS PREFLIGHT - FINAL DOWNLOAD BUTTON THEME OVERRIDE
   Keeps Dentistry download controls in BOS colors.
   ===================================================== */
.preflight-dentistry-fulltext #core-collateral-download .btn,
.preflight-dentistry-fulltext #core-collateral-download a.btn {
    background: transparent !important;
    border: 1px solid #2b5b8a !important;
    color: #2b5b8a !important;
    box-shadow: none !important;
}

.preflight-dentistry-fulltext #core-collateral-download .btn:hover,
.preflight-dentistry-fulltext #core-collateral-download .btn:focus,
.preflight-dentistry-fulltext #core-collateral-download a.btn:hover,
.preflight-dentistry-fulltext #core-collateral-download a.btn:focus {
    background: #f78118 !important;
    border-color: #f78118 !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* =====================================================
   BOS PREFLIGHT - SUPPLEMENTARY DOWNLOAD BUTTON FIX
   -----------------------------------------------------
   The generic article-link hover rule above was forcing
   the button text back to --bos-primary-dark. Keep the
   supplementary download control dark navy with white
   text on hover/focus.
===================================================== */
.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:hover,
.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:focus,
.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:active {
    background-color: var(--bos-primary-dark) !important;
    border-color: var(--bos-primary-dark) !important;
    color: #fff !important;
}

.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:hover *,
.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:focus *,
.preflight-dentistry-fulltext article a.btn.btn-outline-primary.mini-title:active * {
    color: #fff !important;
}

/* Older abstract/XSL markup uses .oabutton / .oabutton_reverse inside the link. */
.preflight-dentistry-fulltext article a:hover .oabutton,
.preflight-dentistry-fulltext article a:focus .oabutton,
.preflight-dentistry-fulltext article a .oabutton_reverse,
.preflight-dentistry-fulltext article a:hover .oabutton_reverse,
.preflight-dentistry-fulltext article a:focus .oabutton_reverse {
    background-color: var(--bos-primary-dark) !important;
    border-color: var(--bos-primary-dark) !important;
    color: #fff !important;
}

/* ---------- Article page: submission record badge, note box and footnote ---------- */
.meta-panel__left-content { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; }
.pf-review-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 4px;
    border: 1px solid #f1c27d;
    background: #fff5e3;
    color: #9a5a0c;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: .3px;
    text-transform: uppercase;
    line-height: 1.5;
}
.pf-record-note {
    margin: 14px 0 4px;
    padding: 12px 16px;
    border: 1px solid #f0d7ad;
    border-left: 4px solid #e8940f;
    border-radius: 6px;
    background: #fffaf2;
    color: #5b4a2e;
    font-size: 14px;
    line-height: 1.6;
}
.pf-record-note b { color: #3f2f14; }
.pf-record-footnote {
    margin: 0 0 12px;
    font-size: 11.5px;
    line-height: 1.5;
    font-weight: 400;
    color: #8a7a5c;
}

/* Stats strip: 3 boxes on desktop, 1 per row on tablet / mobile */
@media (max-width: 991px) {
    .preflight-overview-strip__inner { grid-template-columns: 1fr !important; }
}

/* ---------- Footer ---------- */
.pf-foot {
    position: relative;
    overflow: hidden;
    color: #c9d6e6;
    background:
        radial-gradient(700px 240px at 50% -60%, rgba(247, 129, 24, .22), transparent 70%),
        radial-gradient(600px 300px at 100% 130%, rgba(90, 150, 220, .22), transparent 60%),
        linear-gradient(120deg, #0f2f52 0%, #16426f 55%, #1d4f82 100%);
    border-top: 3px solid #f78118;
}
.pf-foot::before {
    content: ""; position: absolute; inset: 0; pointer-events: none; opacity: .5;
    background-image: radial-gradient(rgba(255, 255, 255, .07) 1px, transparent 1.5px);
    background-size: 22px 22px;
}
.pf-foot__inner {
    position: relative;
    max-width: 1240px;
    margin: 0 auto;
    padding: 40px 24px 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 18px;
}
.pf-foot__brand { display: flex; align-items: center; gap: 14px; text-align: left; }
.pf-foot__mark {
    flex: 0 0 50px; width: 50px; height: 50px; border-radius: 14px;
    display: flex; align-items: center; justify-content: center;
    background: linear-gradient(135deg, #f9a24a, #f78118); color: #fff;
    font: 700 22px/1 Georgia, "Times New Roman", serif;
    box-shadow: 0 10px 24px rgba(247, 129, 24, .35);
}
.pf-foot__name b { display: block; color: #fff; font-size: 20px; letter-spacing: .2px; }
.pf-foot__name b span { color: #f9a24a; }
.pf-foot__name p { margin: 4px 0 0; color: #b8c8dc; font-size: 14px; line-height: 1.5; }
.pf-foot__badge {
    display: inline-flex; align-items: center; gap: 8px;
    padding: 7px 16px; border-radius: 999px;
    background: rgba(247, 129, 24, .14); border: 1px solid rgba(249, 162, 74, .45);
    color: #ffd3a3; font-size: 13px; font-weight: 600; letter-spacing: .2px;
}
.pf-foot__social { display: flex; gap: 12px; }
.pf-foot__social a {
    width: 40px; height: 40px; border-radius: 50%;
    display: inline-flex; align-items: center; justify-content: center;
    color: #fff !important; text-decoration: none !important;
    background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .22);
    transition: background-color .2s ease, transform .2s ease, border-color .2s ease;
}
.pf-foot__social a:hover { background: #f78118; border-color: #f78118; transform: translateY(-3px); }
.pf-foot__social i { font-size: 15px; }
.pf-foot__bottom {
    position: relative;
    max-width: 1240px; margin: 0 auto; padding: 14px 24px 18px;
    border-top: 1px solid rgba(255, 255, 255, .12);
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 20px;
    font-size: 13px; color: #aebfd4;
}
.pf-foot__legal { display: flex; align-items: center; gap: 12px; }
.pf-foot__legal i { width: 4px; height: 4px; border-radius: 50%; background: rgba(255, 255, 255, .35); }
.pf-foot__legal a { color: #dbe6f2 !important; text-decoration: none !important; }
.pf-foot__legal a:hover { color: #fff !important; text-decoration: underline !important; }
@media (max-width: 767px) {
    .pf-foot__brand { flex-direction: column; text-align: center; }
    .pf-foot__bottom { justify-content: center; text-align: center; }
    .pf-foot__badge { font-size: 12px; }
}

/* Homepage: footnote under the disclaimer box */
.pf-disclaimer-footnote {
    margin: 8px 4px 4px;
    font-size: 12px;
    line-height: 1.55;
    font-weight: 400;
    color: #7b8794;
}


/* =====================================================
   BOS PREFLIGHT - COMPACT LIGHT FOOTER (Design 6)
   ===================================================== */
.pf-foot {
    position: relative !important;
    overflow: hidden !important;
    color: #173b66 !important;
    background: linear-gradient(105deg, #eaf5ff 0%, #ffffff 48%, #fffaf3 100%) !important;
    /*background: linear-gradient(105deg, #eaf5ff 0%, #ffffff 48%, #fff1df 100%) !important;*/
    border-top: 3px solid #f78118 !important;
}
.pf-foot::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    opacity: .42 !important;
    background: radial-gradient(420px 120px at 4% 100%, rgba(79,157,220,.14), transparent 72%), radial-gradient(440px 130px at 96% 0%, rgba(247,129,24,.12), transparent 72%) !important;
}
.pf-foot__inner {
    position: relative !important;
    z-index: 1 !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    padding: 26px 24px !important;
    display: grid !important;
    grid-template-columns: minmax(420px, 1.65fr) 1px auto 1px minmax(260px, 1fr) !important;
    align-items: center !important;
    gap: 28px !important;
    text-align: left !important;
}
.pf-foot__brand { display: flex !important; align-items: center !important; gap: 18px !important; text-align: left !important; }
.pf-foot__book { width: 58px !important; min-width: 58px !important; color: #f78118 !important; display: flex !important; }
.pf-foot__book svg { width: 58px !important; height: 48px !important; fill: none !important; stroke: currentColor !important; stroke-width: 2.5 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }
.pf-foot__name b { display: block !important; color: #123a67 !important; font-size: 20px !important; line-height: 1.2 !important; letter-spacing: .1px !important; }
.pf-foot__name b span { color: #f78118 !important; }
.pf-foot__name p { margin: 5px 0 0 !important; color: #46647f !important; font-size: 12.5px !important; line-height: 1.45 !important; }
.pf-foot__divider { width: 1px !important; height: 58px !important; background: #d6e0e9 !important; }
.pf-foot__social { display: flex !important; align-items: center !important; justify-content: center !important; gap: 10px !important; }
.pf-foot__social a { width: 38px !important; height: 38px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; border: 1px solid #d8e2eb !important; border-radius: 8px !important; background: rgba(255,255,255,.72) !important; color: #123a67 !important; box-shadow: 0 2px 8px rgba(20,55,90,.04) !important; transition: .2s ease !important; }
.pf-foot__social a:hover { color: #fff !important; background: #f78118 !important; border-color: #f78118 !important; transform: translateY(-2px) !important; }
.pf-foot__social i { font-size: 14px !important; }
.pf-foot__social svg { width: 15px !important; height: 15px !important; fill: currentColor !important; }
.pf-foot__meta { color: #385875 !important; font-size: 11.5px !important; line-height: 1.45 !important; }
.pf-foot__legal { margin-top: 7px !important; display: flex !important; align-items: center !important; flex-wrap: wrap !important; gap: 9px !important; }
.pf-foot__legal i { width: 4px !important; height: 4px !important; border-radius: 50% !important; background: #f78118 !important; }
.pf-foot__legal a { color: #173b66 !important; text-decoration: none !important; }
.pf-foot__legal a:hover { color: #f78118 !important; text-decoration: none !important; }
.pf-foot__bottom, .pf-foot__badge, .pf-foot__mark { display: none !important; }
@media (max-width: 991px) {
    .pf-foot__inner { grid-template-columns: 1fr !important; gap: 16px !important; text-align: center !important; padding: 24px 20px !important; }
    .pf-foot__brand { justify-content: center !important; text-align: left !important; }
    .pf-foot__divider { width: 100% !important; height: 1px !important; }
    .pf-foot__meta { text-align: center !important; }
    .pf-foot__legal { justify-content: center !important; }
}
@media (max-width: 575px) {
    .pf-foot__brand { flex-direction: column !important; text-align: center !important; gap: 10px !important; }
    .pf-foot__name b { font-size: 18px !important; }
    .pf-foot__social { gap: 7px !important; }
    .pf-foot__social a { width: 35px !important; height: 35px !important; }
}

/* ==========================================================================\n   BOS PREFLIGHT - FULL WIDTH CODED MASTHEAD (2026-09-30)\n   Banner artwork is built with HTML/CSS; only logo + subtle molecule SVG are assets.\n   ========================================================================== */
.main-header .main-navbar {
    border: 0 !important;
    background: #fff !important;
}
.main-header .preflight-header-row {
    position: relative !important;
    overflow: hidden !important;
    border-top: 1px solid #d7e3ec !important;
    border-bottom: 1px solid #c9d9e5 !important;
    background:
        linear-gradient(90deg, rgba(255,255,255,.76) 0%, rgba(255,255,255,.70) 48%, rgba(250,252,254,.72) 100%),
        url('../../pb-assets/images/styleguide/preflight-header-molecules.svg') center / cover no-repeat !important;
}
.main-header .preflight-header-row::after {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .16;
    background:
        radial-gradient(circle at 4% 72%, rgba(23,116,184,.20) 0 5px, transparent 6px),
        radial-gradient(circle at 94% 22%, rgba(247,129,24,.22) 0 5px, transparent 6px);
}
.main-header .preflight-header-inner {
    position: relative !important;
    z-index: 1 !important;
    grid-template-columns: 56px minmax(0, 1fr) 56px !important;
    width: 100% !important;
    max-width: 1500px !important;
    min-height: 124px !important;
    padding: 10px 28px !important;
}
.main-header .preflight-header-brand {
    max-width: none !important;
}
.main-header .preflight-header-brand .navbar-brand.preflight-masthead {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1180px !important;
    min-height: 100px !important;
    gap: 34px !important;
    text-decoration: none !important;
}
.preflight-masthead__logo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 1 390px;
    min-width: 0;
}
.main-header .preflight-header-brand img.preflight-masthead__logo {
    display: block !important;
    width: 100% !important;
    max-width: 390px !important;
    height: auto !important;
    max-height: 100px !important;
    object-fit: contain !important;
    margin: 0 !important;
}
.preflight-masthead__divider {
    width: 1px;
    height: 72px;
    flex: 0 0 1px;
    background: #cbd9e4;
}
.preflight-masthead__title {
    position: relative;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0 14px;
    flex: 0 1 650px;
    min-width: 0;
    padding-bottom: 16px;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(36px, 3.15vw, 58px);
    font-weight: 700;
    line-height: .98;
    letter-spacing: -.8px;
    text-transform: uppercase;
    white-space: nowrap;
}
.preflight-masthead__title-blue { color: #0b3f78; }
.preflight-masthead__title-orange { color: #f4770b; }
.preflight-masthead__underline {
    position: absolute;
    left: 0;
    bottom: 0;
    width: min(480px, 78%);
    height: 3px;
    background: linear-gradient(90deg, #f4770b 0 24%, #dce5ec 24% 100%);
}

@media (max-width: 1100px) {
    .main-header .preflight-header-inner {
        min-height: 104px !important;
        padding: 8px 16px !important;
    }
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead {
        min-height: 86px !important;
        gap: 22px !important;
    }
    .preflight-masthead__logo-wrap { flex-basis: 315px; }
    .main-header .preflight-header-brand img.preflight-masthead__logo { max-width: 315px !important; max-height: 82px !important; }
    .preflight-masthead__divider { height: 60px; }
    .preflight-masthead__title { font-size: clamp(29px, 3.3vw, 42px); gap: 0 9px; }
}

@media (max-width: 767.98px) {
    .main-header .preflight-header-row {
        background:
            linear-gradient(rgba(255,255,255,.94), rgba(255,255,255,.94)),
            url('../../pb-assets/images/styleguide/preflight-header-molecules.svg') center / cover no-repeat !important;
    }
    .main-header .preflight-header-inner {
        grid-template-columns: 44px minmax(0, 1fr) 44px !important;
        min-height: 78px !important;
        padding: 7px 8px !important;
    }
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead {
        min-height: 62px !important;
        gap: 0 !important;
    }
    .preflight-masthead__logo-wrap {
        flex: 0 1 300px;
        width: 100%;
    }
    .main-header .preflight-header-brand img.preflight-masthead__logo {
        width: 100% !important;
        max-width: 300px !important;
        max-height: 62px !important;
    }
    .preflight-masthead__divider,
    .preflight-masthead__title { display: none !important; }
}

@media (max-width: 420px) {
    .main-header .preflight-header-inner {
        grid-template-columns: 40px minmax(0, 1fr) 40px !important;
        min-height: 70px !important;
        padding: 6px 5px !important;
    }
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead { min-height: 56px !important; }
    .main-header .preflight-header-brand img.preflight-masthead__logo { max-width: 245px !important; max-height: 54px !important; }
}

/* 2026-10-01 masthead desktop/mobile refinement */
.main-header .preflight-header-row {
    background-color: #fff !important;
    background-image: url('../../pb-assets/images/styleguide/preflight-header-molecules.svg') !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
}
.main-header .preflight-header-row::after {
    display: none !important;
}

@media (min-width: 768px) {
    .main-header .preflight-header-row {
        min-height: 108px !important;
    }
    .main-header .preflight-header-inner {
        display: grid !important;
        grid-template-columns: 56px minmax(0, 1fr) 56px !important;
        align-items: center !important;
        max-width: 100% !important;
        min-height: 108px !important;
        padding: 8px 26px !important;
    }
    .main-header .preflight-header-brand {
        max-width: none !important;
    }
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        max-width: 1260px !important;
        min-height: 88px !important;
        gap: 24px !important;
        padding: 0 10px !important;
        margin: 0 auto !important;
    }
    .preflight-masthead__logo-wrap {
        flex: 0 0 300px !important;
        width: 300px !important;
        min-width: 300px !important;
    }
    .main-header .preflight-header-brand img.preflight-masthead__logo {
        width: 300px !important;
        max-width: 300px !important;
        /*max-height: 74px !important;*/
        height: auto !important;
    }
    .preflight-masthead__divider {
        display: block !important;
        flex: 0 0 1px !important;
        width: 1px !important;
        height: 58px !important;
    }
    .preflight-masthead__title {
        display: flex !important;
        align-items: baseline !important;
        flex: 0 1 auto !important;
        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;
        flex-wrap: nowrap !important;
        white-space: nowrap !important;
        font-size: clamp(32px, 2.7vw, 50px) !important;
        line-height: 1 !important;
        gap: 0 12px !important;
        padding-bottom: 14px !important;
    }
    .preflight-masthead__underline {
        width: min(470px, 78%) !important;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .main-header .preflight-header-inner {
        padding: 8px 18px !important;
    }
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead {
        max-width: 1080px !important;
        gap: 18px !important;
        padding: 0 6px !important;
    }
    .preflight-masthead__logo-wrap {
        flex: 0 0 250px !important;
        width: 250px !important;
        min-width: 250px !important;
    }
    .main-header .preflight-header-brand img.preflight-masthead__logo {
        width: 250px !important;
        max-width: 250px !important;
        max-height: 64px !important;
    }
    .preflight-masthead__divider {
        height: 50px !important;
    }
    .preflight-masthead__title {
        font-size: clamp(26px, 3vw, 38px) !important;
        gap: 0 8px !important;
    }
}

@media (min-width: 1200px) {
    .main-header .preflight-header-brand .navbar-brand.preflight-masthead {
        max-width: 1320px !important;
    }
}


/* 2026-10-01 final masthead background fix: same side molecules/waves at every width */
.main-header .preflight-header-row {
    background-color: #fff !important;
    background-image: url('../../pb-assets/images/styleguide/preflight-header-molecules.svg') !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
}
.main-header .preflight-header-row::before,
.main-header .preflight-header-row::after {
    display: none !important;
}

@media (max-width: 767.98px) {
    .main-header .preflight-header-row {
        background-color: #fff !important;
        background-image: url('../../pb-assets/images/styleguide/preflight-header-molecules.svg') !important;
        background-position: center center !important;
        background-size: 100% 100% !important;
        background-repeat: no-repeat !important;
    }
}
