/* CU 2.0 Fintech Library (snippet 11354 v1.2.0, run 23b; v1.2.2 search box fix). Loaded on the Library page and on fintech entries.
   Tokens only (the kit's --cu-* variables). */

/* Search box (added by library.js to [data-cu-lib-search] in the navy hero). Scoped under #main so it wins over
   the kit's own label and input styles (v1.2.2). */
#main [data-cu-lib-search] .cu-lib-search-label { display: block; margin-block-end: var(--cu-space-2); font-family: var(--cu-font-heading); font-weight: 700; font-size: var(--cu-size-small); line-height: 1.3; color: var(--cu-white); }
#main [data-cu-lib-search] input.cu-lib-search { appearance: none; -webkit-appearance: none; box-sizing: border-box; width: 100%; min-height: calc(var(--cu-space-7) + var(--cu-space-1)); margin: 0; padding: 0 var(--cu-space-4); font-family: var(--cu-font-body); font-size: var(--cu-size-body); color: var(--cu-navy); background-color: var(--cu-white); border: 3px solid var(--cu-orange-light); border-radius: var(--cu-radius-lg); }
#main [data-cu-lib-search] input.cu-lib-search::placeholder { color: var(--cu-navy); opacity: 1; }
#main [data-cu-lib-search] input.cu-lib-search:focus { outline: 3px solid var(--cu-white); outline-offset: 3px; }

/* Filtered-out cards and the "No matches" line. */
[data-cu-lib-grid] > [hidden], [data-cu-lib-empty][hidden] { display: none !important; }

/* (c) No website: V4 renders the button as a <button> with no link, so hide it. */
button[data-cu-lib-website] { display: none !important; }

/* Tags: "Featured partner" and the primary services ([cu2_fintech_meta] text). Empty ones take no space. */
[data-cu-lib-featured]:empty, [data-cu-lib-services]:empty { display: none; }
[data-cu-lib-featured] { display: inline-block; width: fit-content; padding: var(--cu-space-1) var(--cu-space-2); font-family: var(--cu-font-heading); font-weight: 900; font-size: var(--cu-size-small); line-height: 1.2; color: var(--cu-navy); background-color: var(--cu-orange-light); border-radius: var(--cu-radius-sm); }
[data-cu-lib-services] { display: block; font-size: var(--cu-size-small); font-weight: 700; line-height: 1.5; color: var(--cu-navy); }
.cu-lib-tags { display: flex; flex-wrap: wrap; gap: var(--cu-space-2); }
.cu-lib-tag { display: inline-block; padding: var(--cu-space-1) var(--cu-space-2); font-size: var(--cu-size-small); font-weight: 700; line-height: 1.3; color: var(--cu-navy); background-color: var(--cu-gray-light); border-radius: var(--cu-radius-sm); }

/* On the entry's navy hero. */
#main [data-cu-lib-services] { color: var(--cu-white); }

/* Key services and media links under the entry's content. */
.cu-lib-extra { margin-block-start: var(--cu-space-6); }
.cu-lib-extra h3 { margin: var(--cu-space-5) 0 var(--cu-space-2); font-family: var(--cu-font-heading); font-weight: 700; font-size: var(--cu-size-h4); line-height: 1.35; color: var(--cu-navy); }
.cu-lib-links { margin: 0; padding-inline-start: var(--cu-space-5); }
.cu-lib-links li { margin-block-end: var(--cu-space-1); }
.cu-lib-links a { color: var(--cu-navy); text-decoration-line: underline; text-underline-offset: 3px; }
.cu-lib-links a:hover, .cu-lib-links a:focus-visible { text-decoration-thickness: 2px; }
