/* === CASE STUDIES HEADER === */

body[data-sitename="casestudies"] .journal-header,
body[data-sitename="casestudies"] .widget-SitePageFooter .journal-footer.journal-bg {
    background: unset;
    background-color: #dcdd2c;
}

body[data-sitename="casestudies"] .journal-header .journal-header_content .journal-logo_wrap a.journal-logo-link {
    color: #000000;
    font-size: 2rem;
}

body[data-sitename="casestudies"] .journal-header .journal-header_content .journal-logo_wrap a.journal-logo-link:hover {
    text-decoration: none;
}

body[data-sitename="casestudies"] .journal-header .site-menu .nav-link {
    color: #000000;
}

@media (max-width: 899px) {
    body[data-sitename="casestudies"] .journal-header .journal-header_content .navbar-menu_wrap .mobile-site-menu-toggle {
        color: #000000;
    }
}

body[data-sitename="casestudies"] .widget-SitePageFooter .journal-footer .journal-footer_content .journal-footer-affiliations a img {
    max-height: 2rem;
}

/* =========================================================
   CASE STUDIES GATEWAY HOMEPAGE
   ========================================================= */


/* =========================================================
   HERO BACKGROUND / SPACING
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row {
    background-color: #dcdd2c33 !important;
    padding: 22px 0 24px !important;
}


/* =========================================================
   HERO TWO-COLUMN LAYOUT
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row
.widget-dynamic-inner-wrap {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(480px, 0.95fr) !important;
    gap: 48px !important;
    align-items: end !important;
}


/* =========================================================
   LEFT SIDE - HERO FEATURE
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-feature {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}


/* Remove inherited SelfServe styling */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-feature
.homepage-hero-wrap,
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-feature
.homepage-hero-text {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    background: transparent !important;
}


/* Hero heading */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-feature
.homepage-hero-text h1 {
    margin: 0 0 10px !important;
    padding: 0 !important;

    font-size: 2rem;
    line-height: 1.1;
    font-weight: 400;

    color: #111111;
}


/* Hero introduction */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-feature
.homepage-hero-text p {
    max-width: 760px;

    margin: 0 !important;
    padding: 0 !important;

    font-size: 0.95rem;
    line-height: 1.35;

    color: #222222;
}


/* =========================================================
   RIGHT SIDE - SEARCH WIDGET
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;

    align-self: end;
}


/* Remove SelfServe background / borders */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar,
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.homepage-panel-wrap,
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.homepage-panel-text {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;

    background: transparent !important;
}


/* =========================================================
   SEARCH CONTAINER
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.hero-search-container {
    display: grid !important;

    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
        "search advanced"
        "button button";

    column-gap: 14px;
    row-gap: 16px;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
}


/* =========================================================
   SEARCH BAR
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.navbar-search {
    grid-area: search;

    width: 100% !important;
    margin: 0 !important;
}


/* Actual Silverchair search form */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
#MicrositeSearch {
    display: flex !important;

    width: 100% !important;
    max-width: none !important;
}


/* Input fills remaining space */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.navbar-search-input_wrap {
    flex: 1 1 auto;
    min-width: 0;
}


/* Filter and submit retain natural width */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.navbar-search-filter_wrap,
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.navbar-search-submit_wrap {
    flex: 0 0 auto;
}


/* =========================================================
   ADVANCED SEARCH
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.navbar-search-advanced {
    grid-area: advanced;

    display: flex !important;
    align-items: center;

    margin: 0 !important;
}


body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.advanced-search {
    font-size: 0.85rem;
    line-height: 1.15;

    color: #222222;

    text-decoration: none;
}


/* =========================================================
   CTA BUTTON
   ========================================================= */

body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.home-btn-wrap {
    grid-area: button;

    margin: 0 !important;
}


/* View all case studies button */
body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.home-btn-wrap
.button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 40px;

    padding: 8px 22px;

    border: 0 !important;
    border-radius: 24px;

    background: #14555d;

    color: #ffffff !important;

    font-size: 0.9rem;
    line-height: 1;

    text-decoration: none !important;
}


body[data-sitename="casestudies"]
.widget-instance-case-studies_home-hero-search-bar
.home-btn-wrap
.button:hover {
    background: #0e4751;

    color: #ffffff !important;
}


/* =========================================================
   GENERIC HOMEPAGE PANEL HEADER
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.widget-SelfServeContent
.homepage-panel-header {
    background-color: transparent;
}


/* =========================================================
   EXISTING CONTENT CARD SHADOWS
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.home-row2
.widget-SelfServeContent,
body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.home-row3
.widget-SelfServeContent,
body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.home-row4
.widget-SelfServeContent {
    box-shadow:
        0 0 2rem rgba(0, 0, 0, 0.1),
        1.25em 1.25em 0 -0.5em #dcdd2c33;
}


/* =========================================================
   ROW HEADINGS
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.theme-homepage-layout
div[class*="home-row"]
> .widget-dynamic__header {
    text-align: left;
}


/* =========================================================
   PARTNER LOGOS
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.widget-SelfServeContent
.partner-logos-row {
    display: flex;
    flex-wrap: wrap;
}


body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway
.widget-SelfServeContent
.partner-logos-row img {
    height: fit-content;

    max-height: 3rem;

    margin: 1rem;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1000px) {

    body[data-sitename="casestudies"].pg_index
    .widget-instance-Home_MainContentB0B0
    .hero-row
    .widget-dynamic-inner-wrap {
        grid-template-columns: 1fr !important;

        gap: 24px !important;
    }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    body[data-sitename="casestudies"]
    .widget-instance-case-studies_home-hero-search-bar
    .hero-search-container {
        grid-template-columns: 1fr;

        grid-template-areas:
            "search"
            "advanced"
            "button";

        gap: 12px;
    }


    body[data-sitename="casestudies"]
    .widget-instance-case-studies_home-hero-feature
    .homepage-hero-text h1 {
        font-size: 1.65rem;
    }

}


/* Existing logo mobile behaviour */
@media (max-width: 899px) {

    body[data-sitename="casestudies"].pg_index
    .theme-homepage-layout.gateway
    .widget-SelfServeContent
    .partner-logos-row img {
        max-height: 1.5rem;

        margin: 0.5rem;
    }

}

/* =========================================================
   CASE STUDIES - WHAT DO YOU WANT TO DO?
   ========================================================= */

body[data-sitename="casestudies"]
.case-actions {
    width: 100%;
    margin-top: 26px;
}


body[data-sitename="casestudies"]
.case-actions > h2 {
    margin: 0 0 16px;
    padding: 0;

    font-size: 1.75rem;
    line-height: 1.2;
    font-weight: 400;

    color: #111111;
}


/* =========================================================
   THREE COLUMN GRID
   ========================================================= */

body[data-sitename="casestudies"]
.case-actions__grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 16px;

    align-items: stretch;
}


/* =========================================================
   BASE CARD
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card {
    display: flex;
    flex-direction: column;

    min-width: 0;
    height: 100%;

    background: #ffffff;

    box-sizing: border-box;
}


/* =========================================================
   HEADER
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card__header {
    padding: 20px 20px 18px;
}


body[data-sitename="casestudies"]
.case-action-card__header h3 {
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    font-size: 1.15rem;
    line-height: 1.25;
    font-weight: 500;
}


/* =========================================================
   CONTENT
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card__content {
    display: grid;

    grid-template-rows: 78px 5px auto;

    row-gap: 14px;

    flex: 1;

    padding: 14px 20px 16px;
}


/* =========================================================
   LINK LISTS
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-links {
    list-style: none !important;

    margin: 0 !important;
    padding: 0 !important;
}


body[data-sitename="casestudies"]
.case-action-links li {
    position: relative;

    margin: 0 0 3px;

    padding-left: 20px;

    line-height: 1.2;
}


body[data-sitename="casestudies"]
.case-action-links li::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0.5em;

    width: 9px;
    height: 6px;

    transform: translateY(-50%);
}


body[data-sitename="casestudies"]
.case-action-links a {
    color: #0e4751;

    font-size: 0.82rem;
    line-height: 1.25;

    text-decoration: underline;
    text-underline-offset: 2px;
}


body[data-sitename="casestudies"]
.case-action-links a:hover {
    text-decoration-thickness: 2px;
}


/* =========================================================
   DIVIDER
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-divider {
    width: 100%;
    height: 5px;

    margin: 0;
}


/* =========================================================
   BROWSE
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card--browse {
    border: 1px solid #dcdd2c;
}


body[data-sitename="casestudies"]
.case-action-card--browse
.case-action-card__header {
    background: #e6e521;
}


body[data-sitename="casestudies"]
.case-action-card--browse
.case-action-divider {
    background: #dcdd2c;
}


body[data-sitename="casestudies"]
.case-action-card--browse
.case-action-links li::before {
    background: #dcdd2c;
}


body[data-sitename="casestudies"]
.case-action-card--browse
.case-action-links li:nth-child(3)::before {
    background: #14555d;
}


/* =========================================================
   PUBLISH
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card--publish {
    border: 1px solid #14555d;
}


body[data-sitename="casestudies"]
.case-action-card--publish
.case-action-card__header {
    background: #14555d;

    color: #ffffff;
}


body[data-sitename="casestudies"]
.case-action-card--publish
.case-action-divider {
    background: #14555d;
}


body[data-sitename="casestudies"]
.case-action-card--publish
.case-action-links--primary li::before {
    background: #dcdd2c;
}


body[data-sitename="casestudies"]
.case-action-card--publish
.case-action-links--primary li:nth-child(4)::before {
    background: #14555d;
}


body[data-sitename="casestudies"]
.case-action-card--publish
.case-action-links--secondary li::before {
    background: #14555d;
}


/* =========================================================
   LIBRARIANS
   ========================================================= */

body[data-sitename="casestudies"]
.case-action-card--librarians {
    border: 1px solid #98cf2d;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-card__header {
    background: #98cf2d;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-divider {
    background: #98cf2d;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-links--primary li:nth-child(1)::before {
    background: #dcdd2c;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-links--primary li:nth-child(2)::before {
    background: #8b86f6;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-links--primary li:nth-child(3)::before {
    background: #14555d;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-links--secondary li:nth-child(1)::before {
    background: #008dd2;
}


body[data-sitename="casestudies"]
.case-action-card--librarians
.case-action-links--secondary li:nth-child(2)::before {
    background: #14555d;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 900px) {

    body[data-sitename="casestudies"]
    .case-actions__grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }


    body[data-sitename="casestudies"]
    .case-action-card__content {
        grid-template-rows: auto 5px auto;
    }

}

/* =========================================================
   CASE STUDIES GATEWAY - REMOVE OUTER SILVERCHAIR BORDERS
   ========================================================= */

body[data-sitename="casestudies"]
.theme-homepage-layout.gateway
.widget-SelfServeContent {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Remove borders/shadows from inherited panel wrappers */
body[data-sitename="casestudies"]
.theme-homepage-layout.gateway
.widget-SelfServeContent
.homepage-panel-wrap,
body[data-sitename="casestudies"]
.theme-homepage-layout.gateway
.widget-SelfServeContent
.homepage-panel-text,
body[data-sitename="casestudies"]
.theme-homepage-layout.gateway
.widget-SelfServeContent
.homepage-hero-wrap,
body[data-sitename="casestudies"]
.theme-homepage-layout.gateway
.widget-SelfServeContent
.homepage-hero-text {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Remove outer border around custom action section */
body[data-sitename="casestudies"]
.case-actions {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}


/* Remove outer border around collections section */
body[data-sitename="casestudies"]
.case-collections {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}
/* =========================================================
   CASE STUDIES - FULL WIDTH HERO BAND
   Match Journals Gateway behaviour
   ========================================================= */

body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row {
    width: 100vw !important;
    max-width: none !important;

    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;

    padding: 0 !important;

    background: #dcdd2c33 !important;
}


/* Keep the actual hero content centred */
body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row
> .widget-dynamic-inner-wrap {
    width: 100% !important;
    max-width: 1630px !important;

    margin: 0 auto !important;
    padding: 34px 40px 36px !important;

    box-sizing: border-box;
}


/* Tablet */
@media (max-width: 1000px) {

    body[data-sitename="casestudies"].pg_index
    .widget-instance-Home_MainContentB0B0
    .hero-row
    > .widget-dynamic-inner-wrap {
        padding: 30px 28px !important;
    }

}

/* =========================================================
   CASE STUDIES - REMOVE GAP ABOVE HERO
   ========================================================= */

/* Remove top spacing from the main homepage layout */
body[data-sitename="casestudies"].pg_index
.theme-homepage-layout.gateway {
    padding-top: 0 !important;
    margin-top: 0 !important;
}


/* Remove spacing from the B0 hero wrapper */
body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Make sure the hero itself starts immediately */
body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row {
    margin-top: 0 !important;
    padding-top: 0 !important;
}


/* Keep internal content padding,
   without recreating the white strip */
body[data-sitename="casestudies"].pg_index
.widget-instance-Home_MainContentB0B0
.hero-row
> .widget-dynamic-inner-wrap {
    padding-top: 34px !important;
}


/* Mobile */
@media (max-width: 600px) {

    body[data-sitename="casestudies"].pg_index
    .widget-instance-Home_MainContentB0B0
    .hero-row
    > .widget-dynamic-inner-wrap {
        padding: 26px 20px 28px !important;
    }

}

/* =========================================================
   CASE STUDIES - OUR COLLECTIONS
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections {
    width: 100%;
    max-width: 860px;
    margin: 0;
    padding: 0;
}


/* =========================================================
   SECTION TITLE
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections > h2 {
    margin: 0 0 14px;
    padding: 0;

    font-size: 1.75rem;
    line-height: 1.2;
    font-weight: 400;

    color: #111111;
}


/* =========================================================
   MAIN COLLECTION CARD
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__card {
    width: 100%;

    background: #ffffff;

    border: 1px solid #8581f3;

    box-sizing: border-box;
}


/* =========================================================
   PURPLE HEADER
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__header {
    padding: 12px 18px;

    background: #8581f3;
}


body[data-sitename="casestudies"]
.case-collections__header h3 {
    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;

    font-size: 1.1rem;
    line-height: 1.25;
    font-weight: 500;

    color: #000000;
}


/* =========================================================
   CARD CONTENT
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__content {
    padding: 14px 18px 18px;
}


/* Intro sentence */
body[data-sitename="casestudies"]
.case-collections__intro {
    margin: 0 0 14px !important;

    font-size: 0.82rem;
    line-height: 1.4;

    color: #333333;
}


/* =========================================================
   TWO COLLECTION COLUMNS
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__options {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 34px;
}


/* =========================================================
   INDIVIDUAL COLLECTION
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__option {
    min-width: 0;
}


/* Collection heading */
body[data-sitename="casestudies"]
.case-collections__option h4 {
    margin: 0 0 4px !important;
    padding: 0 !important;

    font-size: 0.86rem;
    line-height: 1.3;
    font-weight: 600;

    color: #111111;
}


/* Collection description */
body[data-sitename="casestudies"]
.case-collections__option p {
    margin: 0 0 12px !important;

    font-size: 0.78rem;
    line-height: 1.4;

    color: #555555;
}


/* =========================================================
   BULLET LISTS
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__option ul {
    margin: 0 0 10px;
    padding-left: 18px;
}


body[data-sitename="casestudies"]
.case-collections__option li {
    margin: 0 0 3px;

    font-size: 0.77rem;
    line-height: 1.35;

    color: #555555;
}


/* =========================================================
   LINKS
   ========================================================= */

body[data-sitename="casestudies"]
.case-collections__option a {
    color: #0e4751;

    font-size: 0.78rem;
    line-height: 1.3;

    text-decoration: underline;
    text-underline-offset: 2px;
}


body[data-sitename="casestudies"]
.case-collections__option a:hover,
body[data-sitename="casestudies"]
.case-collections__option a:focus {
    text-decoration-thickness: 2px;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media (max-width: 800px) {

    body[data-sitename="casestudies"]
    .case-collections {
        max-width: none;
    }


    body[data-sitename="casestudies"]
    .case-collections__options {
        grid-template-columns: 1fr;

        gap: 24px;
    }

}


@media (max-width: 600px) {

    body[data-sitename="casestudies"]
    .case-collections__header {
        padding: 12px 16px;
    }


    body[data-sitename="casestudies"]
    .case-collections__content {
        padding: 14px 16px 18px;
    }

}

/* =========================================================
   CASE STUDIES PURCHASING PAGE
========================================================= */

.case-purchasing-page {
    --case-lime: #e3e51a;
    --case-pale: #f7f7cf;
    --case-teal: #074f5b;
    --case-text: #171717;
    --case-muted: #555555;
    --case-max-width: 1500px;
    --case-gutter: 32px;

    width: 100%;
    color: var(--case-text);
}


/* =========================================================
   PAGE WIDTH / SILVERCHAIR OVERRIDES
========================================================= */

/*
   The purchasing page sits inside a Silverchair content column.
   Do not use the 100vw / -50vw breakout here as it pulls the
   page off the left side of the viewport.
*/
.case-purchasing-title,
.case-purchasing-hero,
.case-purchasing-content {
    position: relative;
    width: 100%;
    max-width: none;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    box-sizing: border-box;
}

/* Remove the right-hand Silverchair sidebar on this page */
body[data-sitename="casestudies"] #Sidebar {
    display: none !important;
}

/* Allow the Silverchair main content column to use the full width */
body[data-sitename="casestudies"] .content-main_content {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
}

/* Override common Silverchair grid column widths */
body[data-sitename="casestudies"] .content-main_content.col-md-8,
body[data-sitename="casestudies"] .content-main_content.col-lg-9,
body[data-sitename="casestudies"] .content-main_content.col-xl-9 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

/* Prevent surrounding widgets from constraining the custom page */
body[data-sitename="casestudies"] .case-purchasing-page .widget-instance,
body[data-sitename="casestudies"] .case-purchasing-page .widget-SelfServeContent {
    max-width: none !important;
}

/* Keep all inner content centred and aligned */
.case-purchasing-title__inner,
.case-purchasing-hero__inner,
.case-purchasing-content__inner {
    width: 100%;
    max-width: var(--case-max-width);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}


/* =========================================================
   TITLE BAR
========================================================= */

.case-purchasing-title {
    background: var(--case-lime);
}

.case-purchasing-title__inner {
    max-width: var(--case-max-width);
    margin: 0 auto;
    padding: 15px var(--case-gutter);
}

.case-purchasing-title h1 {
    margin: 0;
    padding: 0;
    font-size: clamp(24px, 2vw, 31px);
    line-height: 1.25;
    font-weight: 400;
    color: #000;
}


/* =========================================================
   HERO
========================================================= */

.case-purchasing-hero {
    background: var(--case-pale);
}

.case-purchasing-hero__inner {
    max-width: var(--case-max-width);
    margin: 0 auto;
    padding: 22px var(--case-gutter) 25px;
}

.case-purchasing-hero h2 {
    margin: 0 0 14px;
    font-size: clamp(28px, 2.5vw, 36px);
    line-height: 1.25;
    font-weight: 400;
    color: #111;
}

.case-purchasing-hero p {
    max-width: 1200px;
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
}

.case-purchasing-hero__actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
    margin-top: 20px;
}


/* =========================================================
   BUTTONS
========================================================= */

.case-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 9px 36px;
    border-radius: 999px;
    font-size: 15px;
    line-height: 1.25;
    font-weight: 500;
    text-decoration: none !important;
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

.case-btn--primary {
    background: var(--case-teal);
    border: 1px solid var(--case-teal);
    color: #fff !important;
}

.case-btn--primary:hover,
.case-btn--primary:focus {
    background: #053f48;
    border-color: #053f48;
    color: #fff !important;
}

.case-btn--secondary,
.case-btn--outline-wide {
    background: #fff;
    border: 1px solid var(--case-teal);
    color: var(--case-teal) !important;
}

.case-btn--secondary:hover,
.case-btn--secondary:focus,
.case-btn--outline-wide:hover,
.case-btn--outline-wide:focus {
    background: var(--case-teal);
    color: #fff !important;
}

.case-btn--outline-wide {
    min-width: 480px;
    max-width: 100%;
}


/* =========================================================
   MAIN CONTENT
========================================================= */

.case-purchasing-content {
    background: #fff;
}

.case-purchasing-content__inner {
    max-width: var(--case-max-width);
    margin: 0 auto;
    padding: 38px var(--case-gutter) 80px;

    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 42px;
    align-items: start;
}


/* =========================================================
   CASE STUDIES - ON THIS PAGE / SKIPNAV
========================================================= */

.case-purchasing-nav {
    align-self: start;
}

.case-purchasing-nav__inner {
    position: sticky;
    top: 24px;

    max-height: calc(100vh - 48px);
    overflow-y: auto;

    padding: 20px 18px 18px;

    background: #f5f7f7;
    border-left: 4px solid var(--case-teal);
}


/* =========================================================
   SKIPNAV HEADING
========================================================= */

.case-purchasing-nav__inner h2 {
    margin: 0 0 14px;
    padding: 0;

    font-size: 18px;
    line-height: 1.25;
    font-weight: 500;

    color: var(--case-text);
}


/* =========================================================
   SKIPNAV LINKS
========================================================= */

.case-purchasing-nav nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.case-purchasing-nav nav li {
    margin: 0;
    padding: 0;
}

.case-purchasing-nav nav a {
    display: block;

    padding: 10px 2px;

    border-bottom: 1px solid #d7dddd;

    color: var(--case-teal);
    font-size: 14px;
    line-height: 1.4;
    font-weight: 400;

    text-decoration: none;

    transition:
        color 0.2s ease,
        padding-left 0.2s ease;
}

.case-purchasing-nav nav li:first-child a {
    border-top: 1px solid #d7dddd;
}

.case-purchasing-nav nav a:hover,
.case-purchasing-nav nav a:focus {
    color: var(--case-teal);
    text-decoration: underline;
    text-underline-offset: 3px;
    padding-left: 5px;
}


/* =========================================================
   SKIPNAV ACTIONS
========================================================= */

.case-purchasing-nav__actions {
    display: flex;
    flex-direction: column;
    gap: 9px;

    margin-top: 18px;
}

.case-purchasing-nav__button {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 38px;

    padding: 8px 14px;

    border-radius: 999px;

    font-size: 13px;
    line-height: 1.25;
    font-weight: 500;

    text-align: center;
    text-decoration: none !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease;
}


/* Primary */

.case-purchasing-nav__button--primary {
    background: var(--case-teal);
    border: 1px solid var(--case-teal);

    color: #fff !important;
}

.case-purchasing-nav__button--primary:hover,
.case-purchasing-nav__button--primary:focus {
    background: #053f48;
    border-color: #053f48;

    color: #fff !important;
}


/* Secondary */

.case-purchasing-nav__button--secondary {
    background: #fff;
    border: 1px solid var(--case-teal);

    color: var(--case-teal) !important;
}

.case-purchasing-nav__button--secondary:hover,
.case-purchasing-nav__button--secondary:focus {
    background: var(--case-teal);
    color: #fff !important;
}


/* =========================================================
   ANCHOR POSITIONING
========================================================= */

#case-studies-collections,
#other-access-options,
#case-studies-glance,
#subjects,
#contact {
    scroll-margin-top: 32px;
}


/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 900px) {

    .case-purchasing-nav__inner {
        position: relative;
        top: auto;

        max-height: none;
        overflow: visible;
    }

}


/* =========================================================
   MAIN ARTICLE
========================================================= */

.case-purchasing-main {
    width: 100%;
    max-width: 1200px;
}

.case-content-section {
    scroll-margin-top: 30px;
    margin-bottom: 65px;
}

.case-content-section h2 {
    margin: 0 0 16px;
    font-size: clamp(28px, 2.3vw, 34px);
    line-height: 1.2;
    font-weight: 400;
    color: #111;
}

.case-content-section h3 {
    margin: 0 0 18px;
    font-size: 18px;
    line-height: 1.35;
    font-weight: 500;
    color: #111;
}

.case-content-section p {
    margin: 0 0 22px;
    font-size: 15px;
    line-height: 1.6;
    color: var(--case-muted);
}

.case-content-section ul {
    margin: -9px 0 20px;
    padding-left: 23px;
}

.case-content-section li {
    margin-bottom: 3px;
    padding-left: 0;
    font-size: 15px;
    line-height: 1.55;
    color: var(--case-muted);
}

.case-content-section a:not(.case-btn) {
    color: var(--case-teal);
    text-decoration: underline;
    text-underline-offset: 2px;
}

.case-content-link {
    margin-top: 14px !important;
    margin-bottom: 20px !important;
}

.case-content-link a {
    font-weight: 500;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 900px) {

    .case-purchasing-content__inner {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .case-purchasing-nav {
        position: relative;
        top: auto;
        padding-bottom: 22px;
        border-bottom: 1px solid #dddddd;
    }

    .case-purchasing-nav ul {
        display: flex;
        flex-wrap: wrap;
        gap: 10px 20px;
    }

    .case-purchasing-nav li {
        margin: 0;
    }

}


@media (max-width: 600px) {

    .case-purchasing-page {
        --case-gutter: 20px;
    }

    .case-purchasing-title__inner {
        padding-top: 13px;
        padding-bottom: 13px;
    }

    .case-purchasing-hero__inner {
        padding-top: 22px;
        padding-bottom: 28px;
    }

    .case-purchasing-hero__actions {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .case-btn {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }

    .case-btn--outline-wide {
        min-width: 0;
    }

    .case-purchasing-content__inner {
        padding-top: 30px;
    }

}

/* =========================================================
   CASE STUDIES AT A GLANCE
========================================================= */

.case-content-section--glance {
    margin-top: 10px;
    margin-bottom: 22px;
}

.case-content-section--glance h2 {
    margin: 0 0 8px;
    font-size: clamp(27px, 2.2vw, 32px);
    line-height: 1.25;
}

.case-glance-list {
    margin: 0;
    padding-left: 18px;
}

.case-glance-list li {
    margin-bottom: 3px;
    font-size: 14px;
    line-height: 1.45;
    color: var(--case-muted);
}

.case-glance-list strong {
    color: var(--case-text);
    font-weight: 500;
}


/* =========================================================
   SUBJECTS
========================================================= */

.case-content-section--subjects {
    margin-top: 0;
}

.case-content-section--subjects h2 {
    margin: 0 0 12px;
    font-size: clamp(28px, 2.2vw, 32px);
    line-height: 1.25;
}

.case-content-section--subjects > p {
    margin: 0 0 8px;
    max-width: 1000px;
}

.case-subject-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 80px;
    max-width: 720px;
}

.case-subject-grid ul {
    margin: 0;
    padding-left: 18px;
}

.case-subject-grid li {
    margin-bottom: 3px;
    font-size: 14px;
    line-height: 1.4;
}


/* =========================================================
   DIVIDER TWEAK
========================================================= */

.case-content-section--glance .case-section-divider,
.case-content-section--subjects .case-section-divider {
    margin: 0 0 10px;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .case-subject-grid {
        grid-template-columns: 1fr;
        gap: 0;
        max-width: none;
    }

}


/* =========================================================
   CASE STUDIES PURCHASING PAGE - SILVERCHAIR LAYOUT FIXES
   ========================================================= */

/* Remove the unused Silverchair right column and allow the
   central SelfServe content area to fill the available width. */
body[data-sitename="casestudies"].pg_SelfServePage #Sidebar {
    display: none !important;
}

body[data-sitename="casestudies"].pg_SelfServePage #MainContent,
body[data-sitename="casestudies"].pg_SelfServePage .ss-content.page-column--center,
body[data-sitename="casestudies"].pg_SelfServePage .center-content {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
}

body[data-sitename="casestudies"].pg_SelfServePage .content-main_content {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
}


/* =========================================================
   REMOVE GAP ABOVE PURCHASING PAGE
   ========================================================= */

/* Tighten the custom page directly beneath the Case Studies
   journal header. */
body[data-sitename="casestudies"].pg_SelfServePage #main,
body[data-sitename="casestudies"].pg_SelfServePage .master-main,
body[data-sitename="casestudies"].pg_SelfServePage .content-main_content,
body[data-sitename="casestudies"].pg_SelfServePage #MainContent {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

body[data-sitename="casestudies"].pg_SelfServePage
#MainContent > .widget-SelfServeContent,
body[data-sitename="casestudies"].pg_SelfServePage
#MainContent > .widget-instance-SelfServeContent {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove any inherited top margin from the custom page itself. */
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-page,
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-title {
    margin-top: 0 !important;
}


/* =========================================================
   CASE STUDIES SKIPNAV - YELLOW THEME
   ========================================================= */

.case-purchasing-nav__inner {
    background: var(--case-pale) !important;
    border-left: 4px solid var(--case-lime) !important;
}

/* Dividers use the Case Studies yellow rather than neutral grey. */
.case-purchasing-nav nav a {
    border-bottom-color: rgba(227, 229, 26, 0.75) !important;
}

.case-purchasing-nav nav li:first-child a {
    border-top-color: rgba(227, 229, 26, 0.75) !important;
}

/* Bring the primary skipnav CTA into the Case Studies palette. */
.case-purchasing-nav__button--primary {
    background: var(--case-lime) !important;
    border-color: var(--case-lime) !important;
    color: #111111 !important;
}

.case-purchasing-nav__button--primary:hover,
.case-purchasing-nav__button--primary:focus {
    background: #d4d61a !important;
    border-color: #d4d61a !important;
    color: #111111 !important;
}

/* Keep the secondary action legible against the pale yellow panel. */
.case-purchasing-nav__button--secondary {
    background: #ffffff !important;
    border-color: var(--case-teal) !important;
    color: var(--case-teal) !important;
}


/* =========================================================
   PREVENT HORIZONTAL PAGE OVERFLOW
   ========================================================= */

body[data-sitename="casestudies"].pg_SelfServePage,
body[data-sitename="casestudies"].pg_SelfServePage #main,
body[data-sitename="casestudies"].pg_SelfServePage .master-main,
body[data-sitename="casestudies"].pg_SelfServePage .content-main_content,
body[data-sitename="casestudies"].pg_SelfServePage #MainContent,
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-page {
    max-width: 100% !important;
    box-sizing: border-box;
}


/* =========================================================
   CASE STUDIES PURCHASING - FINAL WIDTH / SKIPNAV FIXES
   ========================================================= */

/*
   Silverchair adds Bootstrap-style row/column gutters around
   SelfServe pages. Remove those gutters so the coloured bands
   can run flush to the available page edges.
*/
body[data-sitename="casestudies"].pg_SelfServePage #main,
body[data-sitename="casestudies"].pg_SelfServePage .master-main,
body[data-sitename="casestudies"].pg_SelfServePage .master-main.row,
body[data-sitename="casestudies"].pg_SelfServePage .content-main_content,
body[data-sitename="casestudies"].pg_SelfServePage #MainContent,
body[data-sitename="casestudies"].pg_SelfServePage .ss-content.page-column--center {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Remove any Bootstrap negative row gutter behaviour. */
body[data-sitename="casestudies"].pg_SelfServePage .master-main.row {
    --bs-gutter-x: 0 !important;
}

/* Make the SelfServe widget itself transparent/full width. */
body[data-sitename="casestudies"].pg_SelfServePage
#MainContent > .widget-SelfServeContent,
body[data-sitename="casestudies"].pg_SelfServePage
#MainContent > .widget-instance-SelfServeContent {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* The coloured purchasing bands should span the full content width. */
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-page,
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-title,
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-hero,
body[data-sitename="casestudies"].pg_SelfServePage .case-purchasing-content {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}


/* =========================================================
   SKIPNAV - STOP INTERNAL HORIZONTAL SCROLLING
   ========================================================= */

.case-purchasing-nav {
    min-width: 0;
    width: 100%;
    box-sizing: border-box;
}

.case-purchasing-nav__inner {
    width: 100%;
    max-width: 100%;
    min-width: 0;

    box-sizing: border-box !important;

    /* Keep vertical scrolling if the menu becomes taller than
       the viewport, but never create a horizontal scrollbar. */
    overflow-x: hidden !important;
    overflow-y: auto;
}

.case-purchasing-nav nav,
.case-purchasing-nav nav ul,
.case-purchasing-nav nav li,
.case-purchasing-nav nav a,
.case-purchasing-nav__actions {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box !important;
}

.case-purchasing-nav nav a {
    overflow-wrap: break-word;
    word-break: normal;
}

/*
   The previous buttons were width:100% plus horizontal padding,
   which could make them wider than the nav panel when inherited
   box-sizing rules were applied.
*/
.case-purchasing-nav__button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    padding: 9px 12px !important;

    box-sizing: border-box !important;
    white-space: normal;
}

/* Slightly cleaner Case Studies skipnav panel */
.case-purchasing-nav__inner {
    padding: 20px 16px 18px !important;
}

.case-purchasing-nav__inner h2 {
    margin-bottom: 12px !important;
}

.case-purchasing-nav__actions {
    gap: 10px;
    margin-top: 18px;
}


/* =========================================================
   DESKTOP ALIGNMENT
   ========================================================= */

@media (min-width: 901px) {

    .case-purchasing-content__inner {
        grid-template-columns: 230px minmax(0, 1fr);
        gap: 42px;
    }

}


/* =========================================================
   CASE STUDIES PURCHASING - STICKY SKIPNAV FIX
   ========================================================= */

/*
   Make the grid item itself sticky rather than its inner panel.
   This avoids the sticky element being constrained by the
   height of its own <aside> wrapper.
*/
@media (min-width: 901px) {

    .case-purchasing-nav {
        position: sticky !important;
        top: 24px !important;
        align-self: start !important;

        width: 100%;
        min-width: 0;

        /* Prevent inherited overflow rules from creating a
           new scrolling context that disables sticky behaviour. */
        overflow: visible !important;

        z-index: 5;
    }

    .case-purchasing-nav__inner {
        position: static !important;
        top: auto !important;

        /* Keep the panel within the viewport, but don't make
           the sticky wrapper itself a scroll container. */
        max-height: calc(100vh - 48px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }

    /* Sticky can be defeated when an ancestor creates its own
       scrolling/overflow context. Keep the page wrappers visible. */
    body[data-sitename="casestudies"].pg_SelfServePage
    .case-purchasing-content,
    body[data-sitename="casestudies"].pg_SelfServePage
    .case-purchasing-content__inner,
    body[data-sitename="casestudies"].pg_SelfServePage
    .case-purchasing-page {
        overflow: visible !important;
    }
}


/* Mobile/tablet remains a normal in-flow navigation */
@media (max-width: 900px) {

    .case-purchasing-nav {
        position: relative !important;
        top: auto !important;
        z-index: auto;
    }

    .case-purchasing-nav__inner {
        position: static !important;
        max-height: none;
        overflow: visible !important;
    }

}