/* FIS case studies reuse the Project 4 visual system with explicit section themes. */
.bb-case.fis-case { padding-top: var(--site-header-space, 80px); }
.bb-case.fis-case .fis-hero { min-height: 580px; background: radial-gradient(ellipse at 95% 0, #123d64 0, transparent 60%), #03101d; }
.bb-case.fis-case .bb-hero-inner { padding-top: 60px; padding-bottom: 60px; }
.fis-hero-preview { margin: 0; padding: 26px; border: 1px solid rgba(255,255,255,.2); border-radius: 16px; background: #f4f6f7; }
.fis-hero-preview img { display: block; width: 100%; height: auto; }
.bb-case.fis-case .bb-section-tabs { top: var(--fis-header-height, 80px); }
.bb-case.fis-case .bb-section-tabs .container { width: max-content; max-width: none; min-width: 100%; }
.bb-case.fis-case .fis-section { padding: 50px 0; color: #101924; background: #fff; scroll-margin-top: var(--fis-anchor-offset, 160px); }
.bb-case.fis-case .fis-section.fis-paper { background: #f4f6f7; }
.bb-case.fis-case .fis-section :is(h2,h3,strong,b) { color: #101924; }
.bb-case.fis-case .fis-section :is(p,li,td) { color: #343434 !important; font-size: 16px; line-height: 1.75; }
.bb-case.fis-case .fis-section .bb-kicker { color: #0b63ce; }
.fis-section-number { margin-bottom: 18px; }
.fis-content-row { row-gap: 28px; }
.bb-case.fis-case .fis-section .bb-section-title { font-size: 34px !important; line-height: 1.2; margin-bottom: 26px; font-weight: 700; }
.bb-case.fis-case .fis-subtitle, .bb-case.fis-case .Problemst { margin: 28px 0 18px; font-size: 23px; line-height: 1.3; font-weight: 600; }
.fis-section ul { padding-left: 24px; margin-bottom: 24px; }
.fis-section li { margin-bottom: 14px; padding-left: 4px; }
.fis-section li::marker { color: #1976f3; }
.bb-case.fis-case .fis-section.fis-dark { background: #071725; color: #fff; }
.bb-case.fis-case .fis-section.fis-dark :is(h2,h3,strong,b) { color: #fff; }
.bb-case.fis-case .fis-section.fis-dark :is(p,li,td) { color: #c4ced6 !important; }
.bb-case.fis-case .fis-section.fis-dark .bb-kicker { color: #5fa2ff; }
.fis-artifact { display: block; margin: 20px 0; padding: 20px; border: 1px solid #d6dde2; border-radius: 12px; background: #fff; cursor: zoom-in; }
.fis-artifact img { display: block; width: 100%; height: auto; }
.fis-artifact:focus-visible { outline: 3px solid #1976f3; outline-offset: 4px; }
.fis-section table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.fis-section table td { padding: 16px 0; border-bottom: 1px solid #d6dde2; vertical-align: top; }
.fis-section table td:first-child { width: 52px; padding-right: 20px; }
.fis-section .fis-result-icon { display: block; width: 28px; height: auto; }
@media (max-width: 991.98px) {
 .bb-case.fis-case .fis-hero { min-height: 0; }
 .bb-case.fis-case .bb-hero-inner { padding-top: 40px; padding-bottom: 44px; }
 .fis-hero-preview { max-width: 480px; margin-top: 32px; }
 .bb-case.fis-case .fis-section { padding: 64px 0; }
}
@media (max-width: 767.98px) {
 .bb-case.fis-case .container { padding-left: 24px; padding-right: 24px; }
 .bb-case.fis-case .bb-hero h1 { font-size: 34px; }
 .bb-case.fis-case .fis-section { padding: 44px 0; }
 .bb-case.fis-case .fis-section .bb-section-title { font-size: 28px !important; }
 .bb-case.fis-case .fis-subtitle { font-size: 22px; }
 .fis-artifact { padding: 12px; }
 .fis-hero-preview { padding: 18px; }
}
/* Align with Projects 4/5: background artwork, facts and compact content rhythm. */
.bb-case.fis-case .fis-hero { min-height: 690px; background: linear-gradient(90deg,rgba(3,12,21,.97),rgba(3,15,27,.91) 42%,rgba(4,20,36,.76) 72%,rgba(4,20,36,.62)),var(--fis-hero-image) center right / cover no-repeat; }
.bb-case.fis-case .bb-hero-inner { padding-top: 48px; padding-bottom: 48px; }
.bb-case.fis-case .fis-section { padding: 50px 0; }
.fis-heading-block { margin: 0; padding: 0; }
.fis-section-number { margin-bottom: 12px; }
.bb-case.fis-case .fis-section .bb-section-title { margin: 0 0 20px; }
.fis-content-row { row-gap: 20px; }
.fis-artifact { margin: 16px 0; padding: 16px; }
.fis-overview-preview { max-width: 620px; margin: 24px 0 0; padding: 20px; background: #fff; border: 1px solid #d6dde2; }
.fis-overview-preview img { display: block; width: 100%; height: auto; }
.bb-case.fis-case .fis-section { text-align: left; }
.fis-section ul { margin-bottom: 16px; }
.fis-section li { margin-bottom: 10px; }
.bb-case.fis-case .fis-subtitle { margin: 20px 0 12px; }
.bb-case.fis-case .fis-section p:last-child,.fis-artifact:last-child,.fis-section ul:last-child { margin-bottom: 0; }
@media(max-width:991.98px) {
 .bb-case.fis-case .fis-hero { min-height: auto; }
 .bb-case.fis-case .bb-hero-inner { padding-top: 32px; padding-bottom: 40px; }
 .bb-case.fis-case .fis-section { padding: 44px 0; }
}
@media(max-width:767.98px) {
 .bb-case.fis-case .container { padding-left: 20px; padding-right: 20px; }
 .bb-case.fis-case .fis-section { padding: 32px 0; }
 .fis-artifact { padding: 10px; }
 .bb-case.fis-case .bb-section-tabs a { flex: 0 0 auto; padding: 0 12px; }
 .fis-overview-preview { padding: 12px; }
}
/* Constrain tabs to the same centered content container as Project 4. */
.bb-case.fis-case .bb-section-tabs .container { width: 100%; max-width: 1180px; min-width: 0; margin-left: auto; margin-right: auto; overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; }
.bb-case.fis-case .bb-section-tabs .container::-webkit-scrollbar { display: none; }
.bb-case.fis-case .bb-section-tabs a { flex: 0 0 auto; }
.bb-case.fis-case .fis-hero[data-project="2"] { background: linear-gradient(rgba(3,12,21,.1),rgba(3,12,21,.15)),url('../images/project2/commercial-loan-hero.png') center / cover no-repeat; }
.bb-case.fis-case .fis-hero[data-project="3"] { background: linear-gradient(rgba(3,12,21,.1),rgba(3,12,21,.15)),url('../images/project3/lease-mobile-hero.png') center / cover no-repeat; }
.bb-case.fis-case .fis-hero .bb-hero-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 28px 0 0; }
.bb-case.fis-case .fis-hero .bb-scroll-cue { margin-top: 28px; }
.fis-brief-row { row-gap: 24px; }
.fis-brief-copy { min-width: 0; }
.fis-brief-image .fis-overview-preview { margin: 0; max-width: none; }
@media(max-width:991.98px) {
 .bb-case.fis-case .fis-hero[data-project] { background-position: left center; }
 .bb-case.fis-case .fis-hero::before { content: ''; position: absolute; inset: 0; background: rgba(3,12,21,.82); }
 .fis-brief-image .fis-overview-preview { max-width: 600px; }
}
@media(max-width:575.98px) {
 .bb-case.fis-case .fis-hero .bb-hero-facts { grid-template-columns: minmax(0,1fr); gap: 0; }
}

/* Dark left behind copy; project illustration on the right. */
.bb-case.fis-case .fis-hero[data-project] { background: #03101d; overflow: hidden; }
.bb-case.fis-case .fis-hero[data-project]::before { content: ''; position: absolute; inset: 0; background-position: center; background-size: cover; background-repeat: no-repeat; transform: scaleX(-1); }
.bb-case.fis-case .fis-hero[data-project="2"]::before { background-image: linear-gradient(rgba(3,12,21,.1),rgba(3,12,21,.15)),url('../images/project2/commercial-loan-hero.png'); }
.bb-case.fis-case .fis-hero[data-project="3"]::before { background-image: linear-gradient(rgba(3,12,21,.1),rgba(3,12,21,.15)),url('../images/project3/lease-mobile-hero.png'); }
@media(max-width:991.98px) {
 .bb-case.fis-case .fis-hero[data-project]::before { opacity: .22; }
}

/* Use correctly oriented, compressed assets directly; facts match Project 4. */
.bb-case.fis-case .fis-hero[data-project]::before { transform: none; }
.bb-case.fis-case .fis-hero[data-project="2"]::before { background-image: linear-gradient(90deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.35) 45%,rgba(0,0,0,.7) 75%,rgba(0,0,0,.8) 100%),url('../images/project2/commercial-loan-hero-dark-left.webp'); }
.bb-case.fis-case .fis-hero[data-project="3"]::before { background-image: linear-gradient(90deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.35) 45%,rgba(0,0,0,.7) 75%,rgba(0,0,0,.8) 100%),url('../images/project3/lease-mobile-hero-dark-left.webp'); }
.bb-case.fis-case .fis-hero .bb-hero-facts { display: block; margin: 0 0 0 40px; padding: 0 18px; background: rgba(3,12,21,.55); }
@media(max-width:991.98px) { .bb-case.fis-case .fis-hero .bb-hero-facts { margin: 28px 0 0; padding: 0; background: transparent; } }
