/* ============================================================================
   LeadIQ — public landing page (https://leadiq.saabsoft.com/).
   EXTERNAL stylesheet: the public CSP is default-src 'self' with NO inline
   styles, so all CSS lives here (same rule as legal.css). Do not inline.
   ========================================================================== */
:root{ --ink:#0f1b2d; --muted:#5a6b7b; --line:#e7ecf1; --blue:#0a93c2; --blue2:#2fc6f6;
  --green:#25d366; --bg:#eef3f6; --card:#fff; }
*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{ margin:0; color:var(--ink); background:
  radial-gradient(1100px 520px at 50% -180px, #e2f3fb 0%, rgba(226,243,251,0) 70%), var(--bg);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
a{ color:var(--blue); text-decoration:none; }
a:hover{ text-decoration:underline; }

/* brand bar */
.ld-top{ position:sticky; top:0; z-index:20; background:rgba(255,255,255,.86);
  -webkit-backdrop-filter:saturate(1.5) blur(10px); backdrop-filter:saturate(1.5) blur(10px);
  border-bottom:1px solid var(--line); }
.ld-top-in{ max-width:1080px; margin:0 auto; padding:12px 24px; display:flex; align-items:center; gap:12px; }
.ld-brand{ display:flex; align-items:center; gap:11px; color:var(--ink); }
.ld-brand img{ height:32px; width:auto; display:block; }
.ld-brand b{ font-size:17px; font-weight:800; letter-spacing:-.01em; display:block; line-height:1.1; }
.ld-brand span{ font-size:11.5px; color:var(--muted); }
.ld-nav{ margin-inline-start:auto; display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.ld-nav a{ font-size:13px; font-weight:600; color:#34425a; padding:7px 13px; border-radius:999px; }
.ld-nav a.cta{ background:linear-gradient(135deg,var(--blue2),var(--blue)); color:#fff; box-shadow:0 4px 14px rgba(47,198,246,.3); }
.ld-nav a.cta:hover{ text-decoration:none; }

/* hero */
.ld-hero{ max-width:880px; margin:0 auto; padding:64px 24px 28px; text-align:center; }
.ld-pill{ display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:700; color:#128c4b;
  background:#e7f9ef; border:1px solid #c8ecd6; border-radius:999px; padding:6px 14px; margin-bottom:20px; }
.ld-pill .dot{ width:7px; height:7px; border-radius:50%; background:var(--green); }
.ld-hero h1{ font-size:clamp(30px,5vw,46px); line-height:1.08; font-weight:800; letter-spacing:-.025em; margin:0 0 16px; }
.ld-hero h1 .g{ background:linear-gradient(120deg,var(--blue),var(--green)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.ld-hero p{ font-size:clamp(15px,2.2vw,18px); color:var(--muted); max-width:620px; margin:0 auto 26px; }
.ld-actions{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.ld-btn{ display:inline-flex; align-items:center; gap:8px; padding:13px 24px; border-radius:12px; font-weight:700; font-size:15px; }
.ld-btn-primary{ background:linear-gradient(135deg,var(--blue2),var(--blue)); color:#fff; box-shadow:0 6px 18px rgba(47,198,246,.32); }
.ld-btn-primary:hover{ transform:translateY(-1px); text-decoration:none; }
.ld-btn-ghost{ background:#fff; color:#34425a; border:1.5px solid var(--line); }
.ld-btn-ghost:hover{ border-color:#bfe6f6; text-decoration:none; }

/* feature cards */
.ld-grid{ max-width:1080px; margin:34px auto 0; padding:0 24px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
@media (max-width:760px){ .ld-grid{ grid-template-columns:1fr; } }
.ld-card{ background:var(--card); border:1px solid var(--line); border-radius:18px; padding:24px; box-shadow:0 6px 24px rgba(16,42,67,.06); }
.ld-card .ic{ width:46px; height:46px; border-radius:13px; display:flex; align-items:center; justify-content:center; font-size:21px; margin-bottom:14px; }
.ld-card h3{ font-size:17px; font-weight:800; margin:0 0 6px; }
.ld-card p{ font-size:13.5px; color:var(--muted); margin:0; line-height:1.55; }
.ic-wa{ background:#e7f9ef; color:#1faa52; }
.ic-ai{ background:#eef0ff; color:#5b63e0; }
.ic-crm{ background:#e8f1ff; color:#2563eb; }

/* strip */
.ld-strip{ max-width:1080px; margin:40px auto 0; padding:0 24px; }
.ld-strip-in{ background:linear-gradient(135deg,#0f1b2d,#143b52); color:#fff; border-radius:20px; padding:28px 30px;
  display:flex; align-items:center; gap:18px; flex-wrap:wrap; justify-content:space-between; }
.ld-strip-in h2{ font-size:20px; font-weight:800; margin:0 0 4px; }
.ld-strip-in p{ margin:0; color:#b9cad6; font-size:14px; }
.ld-strip-in .ld-btn-primary{ background:var(--green); box-shadow:0 6px 18px rgba(37,211,102,.35); }

/* footer */
.ld-foot{ max-width:1080px; margin:48px auto 0; padding:26px 24px 56px; }
.ld-foot-grid{ border-top:1px solid var(--line); padding-top:26px; display:flex; flex-wrap:wrap; gap:22px 56px; align-items:flex-start; }
.ld-foot-col{ font-size:13px; color:var(--muted); line-height:1.7; }
.ld-foot-col b{ color:var(--ink); display:block; font-size:13px; font-weight:700; margin-bottom:8px; }
.ld-foot-col a{ display:inline-block; margin-inline-end:16px; font-weight:600; }
.ld-copy{ width:100%; color:#9aa7b3; font-size:12px; margin-top:10px; }
@media (max-width:560px){ .ld-brand span{ display:none; } .ld-hero{ padding-top:44px; } }
