/* ============================================================
   ReplyLead design system — dark-dominant, neon-green
   v1 (2026-07-05). Linked by every customer page (except index.html).
   ============================================================ */
:root{
  --bg:#05100b; --bg2:#081a12; --card:#0a2016; --line:rgba(37,211,102,.15);
  --neon:#2fe36f; --green:#25d366; --green2:#12b886; --mint:#7cf7c8;
  --grad:linear-gradient(135deg,#5ff2a0 0%,#25d366 48%,#12b886 100%);
  --text:#eafef1; --soft:#bfe9d2; --muted:#84b39a; --faint:#5f8571; --ink:#05140c;
  --radius:22px; --maxw:1160px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Sora',system-ui,sans-serif;background:var(--bg);color:var(--soft);-webkit-font-smoothing:antialiased;overflow-x:hidden}
/* subtle film-grain + vignette for depth (innovative touch) */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.5;
  background:radial-gradient(120% 120% at 50% -10%,transparent 55%,rgba(0,0,0,.5) 100%);}
a{text-decoration:none;color:inherit}
img{max-width:100%}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.serif{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400}
.mono{font-family:'JetBrains Mono',monospace}
.ey{font-family:'JetBrains Mono',monospace;display:inline-flex;align-items:center;gap:9px;font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--neon)}
.ey::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--neon);box-shadow:0 0 10px var(--neon)}
h1,h2,h3,h4{color:var(--text)}
h2.sec{font-size:clamp(34px,4.8vw,58px);line-height:1.03;letter-spacing:-.02em;margin:14px 0 16px;font-weight:700}
h2.sec .serif{color:var(--neon);font-weight:400}
.lead{font-size:18px;line-height:1.65;color:var(--muted);max-width:600px;margin:0 auto}
.glow-sep{height:1px;background:linear-gradient(90deg,transparent,rgba(37,211,102,.35),transparent)}
.center{text-align:center}
section.pad{padding:88px 0;position:relative;z-index:2}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:9px;padding:15px 30px;border-radius:50px;font-weight:700;font-size:15px;cursor:pointer;transition:.22s;border:0;font-family:inherit;line-height:1}
.btn.grad{background:var(--grad);color:var(--ink)}
.btn.grad:hover{transform:translateY(-2px);box-shadow:0 0 0 1px var(--neon),0 14px 40px rgba(37,211,102,.4)}
.btn.line{background:transparent;color:var(--text);border:1px solid var(--line)}
.btn.line:hover{border-color:var(--neon);color:var(--neon);box-shadow:0 0 24px rgba(37,211,102,.16)}
.btn.dark{background:var(--ink);color:var(--neon);border:1px solid rgba(0,0,0,.2)}
.btn.dark:hover{transform:translateY(-2px)}

/* reveal-on-scroll */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}

/* promo bar */
.promo{font-family:'JetBrains Mono',monospace;background:#071710;border-bottom:1px solid var(--line);color:var(--soft);padding:9px 22px;text-align:center;font-size:12.5px;letter-spacing:.03em;display:flex;gap:14px;align-items:center;justify-content:center;flex-wrap:wrap;position:relative;z-index:3}
.promo b{color:var(--neon);font-weight:500}.promo a{background:var(--grad);color:var(--ink);padding:6px 16px;border-radius:50px;font-weight:700;font-size:12px}

/* nav (floating glass pill) */
header.nav{position:sticky;top:14px;z-index:60;padding:0 16px}
.bar{max-width:1140px;margin:0 auto;background:rgba(8,26,18,.72);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:50px;padding:11px 12px 11px 22px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 12px 40px rgba(0,0,0,.5)}
.logo{display:flex;align-items:center;gap:11px}
.logo svg path{fill:var(--neon)}.logo svg{filter:drop-shadow(0 0 8px rgba(37,211,102,.5))}
.logo .t{font-size:22px;font-weight:700;letter-spacing:-.5px;color:var(--text)}
.links{display:flex;align-items:center;gap:26px}
.links a{color:var(--soft);font-weight:500;font-size:14.5px}.links a:hover{color:var(--neon)}
.links a.cta{background:var(--grad);color:var(--ink);padding:11px 22px;border-radius:50px;font-weight:700}
.links a.cta:hover{box-shadow:0 0 24px rgba(37,211,102,.5)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.burger span{width:24px;height:2.5px;background:var(--neon);border-radius:3px}

/* generic content card */
.card{background:linear-gradient(180deg,var(--card),var(--bg2));border:1px solid var(--line);border-radius:var(--radius);padding:32px;transition:.25s}
.card.hoverable:hover{transform:translateY(-5px);border-color:rgba(37,211,102,.4);box-shadow:0 24px 60px rgba(0,0,0,.5),0 0 40px rgba(37,211,102,.1)}

/* prose (legal / blog body) */
.prose{max-width:780px;margin:0 auto;color:var(--soft);font-size:16.5px;line-height:1.75}
.prose h2{font-size:26px;margin:38px 0 12px;color:var(--text);font-weight:700}
.prose h3{font-size:19px;margin:26px 0 8px;color:var(--text)}
.prose p{margin:0 0 16px}
.prose a{color:var(--neon);border-bottom:1px solid rgba(37,211,102,.4)}
.prose ul,.prose ol{margin:0 0 16px;padding-left:22px}.prose li{margin:6px 0}
.prose strong{color:var(--text)}
.prose hr{border:0;height:1px;background:var(--line);margin:34px 0}

/* footer */
footer{background:#040d09;border-top:1px solid var(--line);color:var(--muted);padding:52px 0 30px;font-size:14px;margin-top:88px;position:relative;z-index:2}
footer .top{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:flex-start;margin-bottom:28px}
footer .logo .t{font-size:22px}
footer .fl{display:flex;gap:26px;flex-wrap:wrap}footer a:hover{color:var(--neon)}
footer .cr{border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:var(--faint);font-family:'JetBrains Mono',monospace;font-size:12px}

/* floating book-a-call */
.fab{position:fixed;bottom:22px;right:22px;z-index:80;width:58px;height:58px;border-radius:50%;background:var(--grad);color:var(--ink);display:flex;align-items:center;justify-content:center;box-shadow:0 0 30px rgba(37,211,102,.5);transition:.25s}
.fab:hover{transform:scale(1.09)}

@media(max-width:640px){
  .links{position:fixed;inset:0 0 0 auto;width:80%;max-width:320px;height:100vh;background:#071710;border-left:1px solid var(--line);flex-direction:column;justify-content:center;transform:translateX(105%);transition:.3s;padding:30px}
  .links.open{transform:translateX(0)}.links a{font-size:19px}.burger{display:flex}
}
