/* ============================================================
   SyncDS — Contextual lead form (end of every What We Do page)
   Loads AFTER home.css / service.css. Scoped under .lead-form-sec
   ============================================================ */
.lead-form-sec{position:relative;z-index:4}
.lf-card{padding:clamp(26px,3.4vw,48px)}
.lf-grid{display:grid;grid-template-columns:0.82fr 1.18fr;gap:clamp(28px,4vw,64px);align-items:start}
@media (max-width:900px){.lf-grid{grid-template-columns:1fr;gap:32px}}
.lf-lead h2{margin:16px 0 0;font-weight:300;letter-spacing:-0.022em;line-height:1.06;font-size:clamp(28px,3.2vw,42px);color:#fff;text-wrap:balance}
.lf-lead h2 b{font-weight:600;color:var(--brand-green-bright)}
.lf-lead p{margin:18px 0 0;font-size:15.5px;line-height:1.65;color:rgba(243,246,251,0.78);text-wrap:pretty;max-width:44ch}
.lf-assure{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:10px}
.lf-assure li{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.5;color:var(--ink-muted)}
.lf-assure li svg{width:15px;height:15px;flex:none;margin-top:2px;color:var(--brand-green)}
.lf-form{display:grid;gap:18px}
.lf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:620px){.lf-row{grid-template-columns:1fr}}
.lf-field{display:grid;gap:8px;min-width:0}
.lf-field label{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-dim)}
.lf-field label .req{color:var(--brand-green)}
.lf-field input,.lf-field textarea{
  width:100%;box-sizing:border-box;font-family:inherit;font-size:15px;color:var(--ink);
  background:rgba(255,255,255,0.045);border:1px solid rgba(255,255,255,0.14);border-radius:var(--radius-sm);
  padding:13px 15px;transition:border-color 160ms ease,background 160ms ease,box-shadow 160ms ease;
}
.lf-field textarea{min-height:104px;resize:vertical;line-height:1.55}
.lf-field input::placeholder,.lf-field textarea::placeholder{color:rgba(243,246,251,0.32)}
.lf-field input:focus,.lf-field textarea:focus{outline:none;border-color:rgba(163,216,59,0.55);background:rgba(255,255,255,0.07);box-shadow:0 0 0 3px rgba(163,216,59,0.14)}
.lf-field.is-bad input,.lf-field.is-bad textarea{border-color:rgba(255,120,110,0.6)}
.lf-err{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.04em;color:#ff9d94;display:none}
.lf-field.is-bad .lf-err,.lf-fieldset.is-bad .lf-err{display:block}
.lf-fieldset{border:0;margin:0;padding:0;display:grid;gap:10px;min-width:0}
.lf-fieldset legend{padding:0;font-family:'DM Mono',monospace;font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-dim)}
.lf-hint{font-size:12.5px;color:var(--ink-dim);margin:-2px 0 2px}
.lf-chips{display:flex;flex-wrap:wrap;gap:8px}
.lf-chip{position:relative;display:inline-flex}
.lf-chip input{position:absolute;inset:0;opacity:0;cursor:pointer;margin:0}
.lf-chip span{
  display:inline-flex;align-items:center;gap:7px;padding:9px 14px;border-radius:999px;cursor:pointer;
  font-size:13px;line-height:1;color:var(--ink-muted);background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.13);transition:all 160ms ease;
}
.lf-chip span::before{content:"";width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,0.22);transition:all 160ms ease}
.lf-chip:hover span{border-color:rgba(255,255,255,0.24);color:var(--ink)}
.lf-chip input:checked+span{color:#fff;background:rgba(163,216,59,0.14);border-color:rgba(163,216,59,0.55)}
.lf-chip input:checked+span::before{background:var(--brand-green-bright);box-shadow:0 0 8px rgba(196,238,94,0.7)}
.lf-chip input:focus-visible+span{outline:2px solid rgba(163,216,59,0.6);outline-offset:2px}
.lf-captcha{display:flex;flex-wrap:wrap;align-items:flex-end;gap:14px}
.lf-cap-box{
  display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);
  background:rgba(255,255,255,0.045);border:1px solid rgba(255,255,255,0.14);
}
.lf-cap-q{font-family:'DM Mono',monospace;font-size:17px;letter-spacing:0.06em;color:#fff;user-select:none;white-space:nowrap}
.lf-cap-refresh{
  appearance:none;background:transparent;border:0;padding:5px;border-radius:8px;cursor:pointer;color:var(--ink-dim);
  display:inline-flex;transition:color 160ms ease,background 160ms ease;
}
.lf-cap-refresh:hover{color:var(--brand-green-bright);background:rgba(255,255,255,0.07)}
.lf-cap-refresh svg{width:15px;height:15px}
.lf-captcha .lf-field{flex:1 1 150px;max-width:210px}
.lf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.lf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:4px}
.lf-actions .btn{cursor:pointer;border:0}
.lf-fine{font-family:'DM Mono',monospace;font-size:11px;line-height:1.7;letter-spacing:0.02em;color:var(--ink-dim);margin:0;max-width:46ch}
.lf-form[hidden],.lf-done[hidden]{display:none}
.lf-done{display:grid;gap:14px;justify-items:start;padding:6px 0}
.lf-done .lf-tick{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:rgba(163,216,59,0.16);border:1px solid rgba(163,216,59,0.5)}
.lf-done .lf-tick svg{width:22px;height:22px;color:var(--brand-green-bright)}
.lf-done h3{margin:6px 0 0;font-size:clamp(22px,2.4vw,28px);font-weight:400;letter-spacing:-0.02em;color:#fff}
.lf-done p{margin:0;font-size:15px;line-height:1.6;color:var(--ink-muted);max-width:46ch}
.lf-done .lf-recap{font-family:'DM Mono',monospace;font-size:11.5px;letter-spacing:0.04em;color:var(--ink-dim)}
