/* Original navy football artwork is decorative and stays inside public page headings. */
.fsf-field-heading{position:relative;isolation:isolate;box-sizing:border-box;min-width:0;text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:118px;padding:22px 24px!important;margin:0 0 22px!important;border:1px solid rgba(153,174,195,.1);border-radius:12px;background:linear-gradient(110deg,#0c1929,#102336);overflow:hidden}
.fsf-field-heading::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.58;background:url('./assets/fsf-football-header.png') right center/auto 180% no-repeat;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.6) 40%,#000 70%)}
.fsf-field-heading>div,.fsf-field-heading>h1,.fsf-field-heading>p{position:relative}
.fsf-field-heading h1{margin:4px 0 8px!important;font-size:clamp(1.65rem,3.5vw,2.6rem);line-height:1.12;letter-spacing:-.025em;color:#f1f5f9}
.fsf-field-heading p{margin:0 auto!important;max-width:740px;font-size:.9rem!important;line-height:1.5!important;color:#b5c1cf}
body .fsf-field-heading .eyebrow{display:block;color:#e9c568;font-size:.67rem;letter-spacing:.12em;margin-bottom:7px}
body.rankings-home .rankings-heading.fsf-field-heading{display:flex!important;align-items:center}
body.analyzer-page .analyzer-heading.fsf-field-heading,body.startsit-site-page .startsit-hero.fsf-field-heading,body.rating-scale-site-page .rating-guide-intro.fsf-field-heading{display:block!important}
body.startsit-site-page .startsit-hero.fsf-field-heading>div:first-child{display:block}
.fsf-field-heading .board-status{flex-shrink:0}
@media(max-width:640px){.fsf-field-heading{min-height:106px;padding:18px 16px!important;margin-bottom:16px!important;border-radius:9px}.fsf-field-heading::before{opacity:.48;background-size:auto 125%;background-position:right center;mask-image:linear-gradient(90deg,transparent,rgba(0,0,0,.25) 45%,#000 80%)}.fsf-field-heading p{font-size:.79rem!important;max-width:90%}.fsf-field-heading h1{font-size:clamp(1.55rem,7vw,2rem)}body.rankings-home .rankings-heading.fsf-field-heading{align-items:center;gap:12px}.fsf-field-heading .board-status{font-size:.7rem}}

/* Keep each banner’s title, subtitle, eyebrow, and status centered together. */
.fsf-field-heading>div:not(.board-status){width:100%;min-width:0}
.fsf-field-heading>h1,.fsf-field-heading>p{width:100%}
.fsf-field-heading .board-status{align-self:center;justify-content:center;text-align:center}

/* Page banners show titles without description text. */
.fsf-field-heading p{display:none!important}
.fsf-field-heading h1{margin-bottom:0!important}
