/* This dark section must not inherit the light-page heading/body colors. */
#team.ff-team-section { background: #102c46; color: #fff; }
#team .ff-section-heading { margin: 0; min-width: 0; }
#team .ff-section-heading > span { color: #bedaff !important; font-size: .9rem; font-weight: 600; letter-spacing: .04em; }
#team .ff-section-heading h2 { color: #fff !important; font-size: clamp(1.8rem, 3vw, 3rem); line-height: 1.2; margin: 14px 0 18px; text-shadow: none; }
#team .ff-section-heading p { color: #e0eaf3 !important; font-size: 1.05rem; line-height: 1.7; max-width: 680px; }
#team .ff-team-intro { display: grid; gap: 32px; align-items: center; }
#team .ff-team-intro.has-photo { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
#team .ff-team-photo { min-width: 0; margin: 0; border: 1px solid #56718a; border-radius: 16px; overflow: hidden; background: #193a56; }
#team .ff-team-photo img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: contain; }
#team .ff-team-photo figcaption { padding: 14px 18px; color: #eef4fa; font-size: .95rem; line-height: 1.6; }
#team .ff-team-photo figcaption:empty { display: none; }
#team .ff-team-photo-placeholder { min-height: 260px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 12px; padding: 32px; text-align: center; color: #e0eaf3; }
#team .ff-team-photo-placeholder > i { font-size: 2rem; }
#team .ff-team-photo-placeholder strong { color: #fff; font-size: 1.1rem; }
#team .ff-team-photo-placeholder span { font-size: .95rem; line-height: 1.6; }
#team .ff-team-grid { margin-top: 32px; gap: 16px; }
#team .ff-team-grid article { min-height: 250px; padding: 24px; background: #193a56; border-color: #4e6a82; backdrop-filter: none; }
#team .ff-team-grid article:hover { transform: none; background: #1e415e; }
#team .ff-team-grid h3 { color: #fff !important; font-size: 1.15rem; line-height: 1.35; font-weight: 600; margin: 24px 0 12px; }
#team .ff-team-grid p { color: #e0eaf3 !important; font-size: 1rem; line-height: 1.65; }
#team .ff-team-grid article > div span { color: #c2d6e8; font-size: .85rem; font-weight: 500; }
#team .ff-team-grid article > div i { color: #d5e6ff; background: #274d70; font-size: 1.25rem; }
#team .ff-team-grid article > small { color: #c2d6e8; font-size: .75rem; font-weight: 500; border-color: #4e6a82; letter-spacing: .06em; }
@media (max-width: 1050px) { #team .ff-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
    #team .ff-team-intro.has-photo { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    #team .ff-team-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 24px; }
    #team .ff-team-grid article { min-height: 0; padding: 20px; }
    #team .ff-team-grid h3 { margin-top: 16px; }
    #team .ff-team-grid article > small { margin-top: 16px; }
}
