
.fl-wrap { max-width:1120px; margin:0 auto; padding:0 20px; }
.fl-sec { padding:56px 0; border-bottom:1px solid #eceff3; }
.fl-sec:last-child { border-bottom:0; }
.fl-eyebrow { font-size:13px; letter-spacing:.08em; text-transform:uppercase; color:#8a94a6; margin:0 0 8px; }
.fl-h2 { font-size:clamp(24px,3vw,34px); line-height:1.25; margin:0 0 14px; color:#12151b; }
.fl-lead { font-size:16px; line-height:1.65; color:#5b6472; margin:0 0 18px; max-width:70ch; }
.fl-cta { display:inline-block; padding:13px 28px; border-radius:8px; background:#12151b; color:#fff;
  text-decoration:none; font-weight:600; font-size:15px; }
.fl-cta:hover { background:#2a3140; color:#fff; }
.fl-split { display:flex; align-items:center; gap:40px; flex-wrap:wrap; }
.fl-split > .fl-body { flex:1 1 420px; min-width:0; }
.fl-split figure { flex:0 0 auto; margin:0; }
.fl-split img { width:180px; height:180px; object-fit:cover; border-radius:12px; display:block; }
.fl-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:26px; }
.fl-card { border:1px solid #e6e9ef; border-radius:12px; padding:22px; background:#fff; }
.fl-card h3 { font-size:17px; margin:0 0 8px; }
.fl-card p { font-size:14px; line-height:1.6; color:#5b6472; margin:0; }
.fl-list { list-style:none; margin:14px 0 0; padding:0; }
.fl-list li { display:flex; align-items:center; gap:10px; margin:0 0 10px; font-size:15px; color:#3c4453; }
.fl-list svg { width:20px; height:20px; flex:0 0 20px; }
@media (max-width:720px){ .fl-split img { width:120px; height:120px; } .fl-sec { padding:36px 0; } }
