/* =========================================================================
   Free Audit section above the footer (industries + services pages).
   Brand tokens from variables.css; fields use the shared .kf-body form style,
   button / small print / error use .btn-primary, .micro, .kf-error.
   ========================================================================= */
.ab{--ab-line-dark:rgba(255,255,255,.12);--ab-signal-dark:#FF7A90;--ab-w2:#A9AFC7;--ab-w4:#C9CDE3;--ab-ok:#3DD68C;
  padding:56px 0 72px;color:#fff;font-family:var(--font);line-height:1.5}
.ab *,.ab *::before,.ab *::after{box-sizing:border-box}
@media (max-width:600px){.ab{padding:36px 0 48px}}

.ab-card{position:relative;overflow:hidden;border-radius:24px;padding:52px;
  background:radial-gradient(120% 90% at 0% 0%,#2A2870 0%,rgba(42,40,112,0) 55%),
             radial-gradient(80% 80% at 100% 100%,rgba(240,86,110,.22) 0%,rgba(240,86,110,0) 60%),#1B1A4A;
  box-shadow:0 30px 60px -30px rgba(25,24,71,.55);
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center}
.ab-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--signal)}
@media (max-width:960px){.ab-card{grid-template-columns:1fr;gap:28px;padding:40px 32px}}
@media (max-width:600px){.ab-card{padding:30px 20px 24px;border-radius:20px}}

.ab-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ab-signal-dark)}
.ab-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ab-signal-dark);box-shadow:0 0 0 4px rgba(255,122,144,.18)}
.ab h2{margin:0 0 16px;font-size:clamp(var(--h-3),4vw,var(--h-2));line-height:1.1;font-weight:600;letter-spacing:var(--tr-heading);color:#fff} /* site section-heading style */
.ab h2 em{font-style:normal;color:var(--ab-signal-dark)}
.ab .ab-sub{margin:0 0 28px;font-size:clamp(1rem,1.3vw,1.08rem);line-height:1.6;color:var(--ab-w4);max-width:54ch}

/* illustrative AI answer */
.ab-ai{border:1px solid var(--ab-line-dark);border-radius:16px;background:rgba(255,255,255,.04);padding:16px;max-width:520px}
.ab-ai-q{display:flex;gap:10px;align-items:center;font-size:14px;color:#fff;margin-bottom:12px}
.ab-ai-q b{flex:none;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 8px;border-radius:6px;background:rgba(255,255,255,.1);color:var(--ab-w4)}
.ab-ai-a{border-radius:12px;background:rgba(0,0,0,.18);padding:12px 14px}
.ab-ai-a > span{display:block;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ab-w2);margin-bottom:8px}
.ab-ai ol{margin:0;padding:0;list-style:none;display:grid;gap:7px;counter-reset:a}
.ab-ai li{counter-increment:a;display:flex;align-items:center;gap:10px;margin:0;padding:0;font-size:14px;color:var(--ab-w4)}
.ab-ai li::before{content:counter(a);position:static;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:700;color:var(--ab-w4);background:rgba(255,255,255,.08)}
.ab-ai li i{margin-left:auto;font-style:normal;font-size:11.5px;font-weight:600;color:var(--ab-ok)}
.ab-ai-you{display:flex;align-items:center;gap:10px;margin-top:10px;padding:9px 12px;border-radius:10px;border:1px dashed rgba(255,122,144,.55);font-size:14px;font-weight:600}
.ab-ai-you i{margin-left:auto;font-style:normal;font-size:11.5px;font-weight:700;color:var(--ab-signal-dark);text-transform:uppercase;letter-spacing:.06em}
.ab-ai small{display:block;margin-top:10px;font-size:11.5px;color:var(--ab-w2)}

/* form */
.ab .ab-form{background:#fff;color:var(--ink);border-radius:18px;padding:28px 26px;box-shadow:0 20px 40px -20px rgba(0,0,0,.45)}
@media (max-width:600px){.ab .ab-form{padding:22px 18px}}
.ab-form-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;margin-bottom:18px}
.ab-form-head b{font-size:1.15rem;font-weight:700;letter-spacing:-.01em}
.ab-form-head span{font-size:12.5px;font-weight:600;color:var(--color-text-muted)}
.ab-form .fa-field.fa-bad input{border-color:#D92D20}
.ab-form .btn-primary[disabled]{opacity:.7;cursor:progress}
.ab-assure{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:14px 0 0;padding:0;list-style:none;font-size:12.5px;color:var(--color-text-muted)}
.ab-assure li{display:inline-flex;align-items:center;gap:6px;margin:0;padding:0}
.ab-assure li::before{display:none}
.ab-assure svg{width:14px;height:14px;color:#12805C}
.ab .ab-privacy{text-align:center;color:var(--color-text-muted)}

.ab-proof{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
.ab-proof div{border:1px solid var(--ab-line-dark);border-radius:14px;padding:12px 14px}
.ab-proof b{display:block;font-size:1.4rem;font-weight:700;letter-spacing:-.02em;color:#fff}
.ab-proof span{font-size:12.5px;color:var(--ab-w2)}
.ab .ab-alt{margin:14px 0 0;text-align:center;font-size:14px;color:var(--ab-w4)}
.ab .ab-alt a{color:#fff;font-weight:600}

/* phones/tablets: headline → form → proof → AI example */
@media (max-width:960px){
  .ab-copy{display:contents}
  .ab-head{order:1}.ab-side{order:2}.ab-ai{order:3;max-width:none}
}
