/* Match the original GBT WordPress faceted catalogue within the migrated brand theme. */
.gbt-catalogue-page { font-family: Helvetica, sans-serif; font-size: 1rem; font-weight: 300; line-height: 1.5; }
.gbt-catalogue-page h1.h2 { font-family: Helvetica, sans-serif; font-size: 2.5rem; font-weight: 500; line-height: 1.2; }
.gbt-catalogue-page .result-table, .gbt-catalogue-page .info-table { font-family: Helvetica, sans-serif; font-size: 1rem; line-height: 1.5; }
.gbt-catalogue [hidden], .gbt-catalogue-detail [hidden] { display: none !important; }
.gbt-catalogue .in-facet-pane { padding-top: 2em; }
.gbt-catalogue .gbt-facet { padding: 0; margin: 0 0 1rem; border: 0; min-width: 0; }
.gbt-catalogue .facet-title { font: inherit; font-weight: bold; width: 100%; border-bottom: 1px solid #dee2e6; margin: 0; }
.gbt-catalogue .checkbox-facet { max-height: 30em; overflow-y: auto; }
.gbt-catalogue .facet-checkbox label { font: inherit; font-weight: inherit; cursor: pointer; }
.gbt-catalogue .facet-checkbox { min-height: 1.5rem; padding-left: 1.5rem; }
.gbt-catalogue .facet-checkbox label::before, .gbt-catalogue .facet-checkbox label::after { top: .25rem; }
.gbt-catalogue .result-table thead th { border-top: none; }
.gbt-catalogue .result-table { margin-top: 1rem; }
.gbt-catalogue .result-table td { vertical-align: top; }
.gbt-catalogue .pagination { display: flex; flex-wrap: wrap; margin-top: 2em; padding-left: 0; }
.gbt-catalogue .pagination li::before, .gbt-catalogue .nav li::before, .gbt-catalogue-detail .nav li::before { display: none; }
.gbt-catalogue .nav-link, .gbt-catalogue-detail .nav-link { font: inherit; cursor: pointer; background: transparent; color: #e64626; }
.gbt-catalogue .nav-link.active, .gbt-catalogue-detail .nav-link.active { color: #495057; background: #fff; }
.gbt-catalogue .page-link { font: inherit; line-height: 1.25; cursor: pointer; min-width: 2.25rem; text-align: center; }
.gbt-catalogue .page-link:disabled { cursor: default; }
.gbt-catalogue .gbt-catalogue-empty { margin-top: 1.5rem; }
.gbt-catalogue .gbt-catalogue-reset { margin-top: .5rem; padding: .5rem .75rem; font: inherit; }
.gbt-catalogue button:focus-visible, .gbt-catalogue a:focus-visible { outline: 3px solid #005eb8; outline-offset: 2px; }
.gbt-catalogue-detail { width: min(1200px, 94vw); max-width: 94vw; max-height: calc(100vh - 6em); margin: 5em auto 1.75rem; padding: 0; border: 1px solid rgba(0, 0, 0, .2); border-radius: .3rem; color: #333; }
.gbt-catalogue-detail::backdrop, .gbt-catalogue-image::backdrop { background: rgba(0, 0, 0, .5); }
.gbt-catalogue-detail > header { display: flex; align-items: start; justify-content: space-between; padding: 1rem; border-bottom: 1px solid #dee2e6; gap: 1rem; }
.gbt-catalogue-page .gbt-catalogue-detail h2 { font-family: Helvetica, sans-serif; font-size: 1.25rem; font-weight: 600; line-height: 1.5; margin: 0; }
.gbt-detail-close { border: 0; background: transparent; color: #000; opacity: .5; font-size: 1.5rem; font-weight: 700; line-height: 1; cursor: pointer; padding: 1rem; margin: -1rem -1rem -1rem auto; }
.gbt-detail-close:hover, .gbt-detail-close:focus-visible { opacity: 1; }
.gbt-detail-body { height: 70vh; overflow-y: auto; padding: 1rem; }
.gbt-catalogue-detail .gbt-detail-body > .nav-tabs { margin: 1em 0; }
.gbt-catalogue-detail .gbt-detail-body .nav-link { color: #e64626; background: transparent; }
.gbt-catalogue-detail .gbt-detail-body .nav-link.active { color: #495057; background: #fff; }
.gbt-detail-panels { padding: 0; }
.gbt-detail-text, .gbt-catalogue-detail .info-table td { white-space: pre-line; overflow-wrap: anywhere; }
.gbt-catalogue-detail .table.info-table { width: 80%; max-width: 100%; color: #212529; }
.gbt-catalogue-detail .table.info-table th { width: 20%; vertical-align: top; background-color: #ececec; }
.gbt-attribution { font-style: normal; }
.gbt-image-gallery { width: 80%; }
.gbt-image-gallery figure { display: inline-block; padding: 1em; border: 1px solid #adb5bd; border-radius: 10px; margin: 0 1em 1em 0; vertical-align: top; }
.gbt-image-gallery figure > a { display: block; width: 12em; height: 12em; }
/* The legacy .page-content img rule uses !important for natural-size images. */
.gbt-catalogue .gbt-image-gallery img { width: 100% !important; height: 100% !important; max-height: 100% !important; object-fit: cover; }
.gbt-image-gallery figcaption { margin-top: .5em; font-size: .8em; text-align: center; overflow-wrap: anywhere; max-width: 15em; }
.gbt-catalogue-image { border: 0; padding: 0; background: transparent; box-shadow: none; width: min(1400px, 96vw); max-width: 96vw; max-height: 96vh; }
.gbt-catalogue-image::backdrop { background: rgba(0, 0, 0, .85); }
.gbt-catalogue-image button { display: block; margin: 0 0 .5rem auto; color: #fff; background: #222; border-color: transparent; }
.gbt-catalogue-image button:hover, .gbt-catalogue-image button:focus-visible { color: #fff; background: #444; }
.gbt-catalogue .gbt-catalogue-image img { display: block; max-width: 100% !important; max-height: 82vh !important; object-fit: contain; margin: auto; }
@media (max-width: 991px) {
    .gbt-catalogue .in-facet-pane { padding-top: 0; margin-bottom: 1.5rem; }
    .gbt-catalogue [data-catalogue-facets] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
    .gbt-catalogue .checkbox-facet { max-height: 12rem; }
}
@media (max-width: 480px) {
    .gbt-catalogue-detail { max-width: 98vw; width: 98vw; }
    .gbt-catalogue-detail .table.info-table, .gbt-catalogue-detail .gbt-image-gallery { width: 100%; }
}
