/* Scoped topic sidebar and collection styles. Existing article CTAs remain untouched. */
.fxcol-body { min-width: 0; }
.fxcol-body .fxnav-standard-topic__label { margin: .2rem 0 .55rem; font-size: .8rem; font-weight: 750; }
.fxcol-body .fxnav-standard-topic__main { display: block; font-weight: 750; line-height: 1.45; overflow-wrap: anywhere; }
.fxcol-body .fxcol-context { margin: .6rem 0 1.1rem; font-size: .85rem; line-height: 1.6; color: inherit; opacity: .85; }
.fxcol-body .fxnav-standard-topic__guidance { margin-top: 1.25rem; }
.fxcol-body .fxnav-standard-topic__list { list-style: none; padding: 0; margin: 0; }
.fxcol-body .fxnav-standard-topic__list li { padding: .65rem 0; border-bottom: 1px solid rgba(125,125,125,.2); margin: 0; }
.fxcol-body .fxnav-standard-topic__list a { display: block; line-height: 1.5; overflow-wrap: anywhere; }
.fxcol-body .fxcol-view-all { display: block; margin-top: 1rem; font-weight: 750; line-height: 1.5; overflow-wrap: anywhere; }
.fxcol-body a:focus-visible,.fxcol-archive :where(a,button,input,select):focus-visible { outline: 3px solid var(--kbt-brass,#b18b4b); outline-offset: 4px; }
.fxcol-hero { background: var(--kbt-navy,#142432); color: #fff; padding: clamp(2rem,5vw,4rem) 0; }
.fxcol-archive .kbt-shell { box-sizing: border-box; padding-left: clamp(1rem,3vw,2rem); padding-right: clamp(1rem,3vw,2rem); }
.fxcol-hero h1 { color: inherit; font-size: clamp(2rem,4vw,3.25rem); line-height: 1.15; margin: 0 0 1rem; overflow-wrap: anywhere; }
.fxcol-hero .fxcol-intro { max-width: 780px; line-height: 1.7; }
.fxcol-hero a { color: var(--kbt-brass-light,#ead2a4); }
.fxcol-service { font-weight: 700; text-underline-offset: .25em; }
.fxcol-results { padding-top: 2rem; padding-bottom: 3rem; }
.fxcol-finder { display: flex; flex-wrap: wrap; align-items: end; gap: 1rem; margin-bottom: 1.5rem; }
.fxcol-finder > div { flex: 1 1 190px; min-width: 0; }
.fxcol-finder > div:first-child { flex-grow: 2; }
.fxcol-finder label { display: block; margin-bottom: .5rem; font-weight: 700; font-size: .9rem; }
.fxcol-finder input,.fxcol-finder select { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 46px; padding: .6rem .7rem; border: 1px solid #949da5; border-radius: 6px; background: #fff; color: #142432; font: inherit; font-size: 1rem; }
.fxcol-finder button { min-height: 46px; }
.fxcol-clear { padding: .7rem 0; font-weight: 650; }
.fxcol-result-count { font-weight: 650; margin-bottom: 1.5rem; }
.fxcol-cta { padding: clamp(1.25rem,3vw,2.5rem); margin: 2.5rem 0 0; background: var(--kbt-navy,#142432); color: #fff; border-radius: 14px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.fxcol-cta > div { flex: 1 1 320px; min-width: 0; }
.fxcol-cta h2 { color: inherit; margin: 0 0 .7rem; font-size: clamp(1.35rem,2.4vw,2rem); line-height: 1.3; }
.fxcol-cta p { margin: 0; line-height: 1.7; }
.fxcol-cta .kbt-btn { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
.fxcol-empty { padding: 2rem 0; }
.fxcol-results [data-fxcol-result] { min-width: 0; }
@media(max-width:600px) { .fxcol-finder { display: grid; grid-template-columns: minmax(0,1fr); } .fxcol-cta .kbt-btn { width: 100%; box-sizing: border-box; } }
@media print { .fxcol-finder,.fxcol-clear { display: none; } .fxcol-hero,.fxcol-cta { background: #fff; color: #000; border: 1px solid #777; } .fxcol-hero a { color: #000; } }
