:root{
    --bg:#ffffff; --bg2:#f6f7f9; --ink:#14181f; --muted:#5b6472; --line:#e4e7ec;
    --slate:#161B26; --slate2:#1E2534; --slate-line:#303c50; --slate-text:#E7E8EA; --slate-muted:#9aa3b2;
    --good:#4fbb85; --accent:#2F3744;
    --maxw:1120px;
  }
  *{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{background:var(--bg);color:var(--ink);font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  h1,h2,h3{letter-spacing:-.02em;line-height:1.1;font-weight:800}
  a{color:inherit;text-decoration:none}
  .btn{display:inline-block;background:var(--ink);color:#fff;font-weight:700;font-size:15px;padding:15px 26px;border-radius:40px;border:0;cursor:pointer;transition:transform .08s ease,opacity .15s}
  .btn:hover{transform:translateY(-1px);opacity:.92}
  .btn.light{background:#fff;color:var(--ink)}
  .btn.ghost{background:transparent;border:1.5px solid var(--ink);color:var(--ink)}
  .micro{font-size:13.5px;color:var(--muted);margin-top:14px;letter-spacing:.01em}

  /* header */
  header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}
  .hd{display:flex;align-items:center;gap:20px;height:70px}
  .brand{display:flex;align-items:center;gap:9px;font-weight:800;letter-spacing:.14em;font-size:15px}
  .brand small{display:block;font-size:8.5px;letter-spacing:.28em;color:var(--muted);font-weight:700;margin-top:2px}
  .brand .bcol{display:flex;flex-direction:column;line-height:1}
  .sw{width:26px;height:26px;flex:0 0 auto}
  nav.main{display:flex;gap:26px;margin-left:14px}
  nav.main a{font-size:14.5px;font-weight:600;color:var(--muted)}
  nav.main a:hover{color:var(--ink)}
  .hd .spacer{flex:1}
  @media(max-width:760px){nav.main{display:none}.hd .btn{padding:11px 18px;font-size:13.5px}}

  /* hero */
  .hero{padding:96px 0 84px;background:radial-gradient(900px 460px at 50% -10%,#eef1f5,#ffffff)}
  .hero .eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:var(--bg2);border:1px solid var(--line);padding:7px 14px;border-radius:30px;margin-bottom:26px}
  .hero h1{font-size:clamp(40px,7vw,72px);max-width:14ch}
  .hero p.sub{font-size:clamp(17px,2.4vw,21px);color:var(--muted);max-width:36ch;margin:22px 0 32px;line-height:1.5}
  .hero p.sub b{color:var(--ink);font-weight:700}

  /* generic section */
  section.pad{padding:88px 0}
  .kicker{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
  h2.big{font-size:clamp(28px,4.4vw,44px);max-width:20ch}
  .lead{font-size:clamp(17px,2.2vw,20px);color:var(--muted);max-width:56ch;margin-top:18px;line-height:1.55}
  .lead b{color:var(--ink)}

  /* dark band */
  .dark{background:var(--slate);color:var(--slate-text)}
  .dark .kicker{color:var(--good)}
  .dark .lead{color:var(--slate-muted)}
  .dark .lead b{color:#fff}
  .dark h2.big{color:#fff}

  /* product shot */
  .shot{margin-top:44px;border-radius:16px;border:1px solid var(--line);background:var(--bg2);overflow:hidden;box-shadow:0 40px 80px -40px rgba(20,24,31,.35)}
  .shot .bar{display:flex;gap:7px;padding:13px 16px;border-bottom:1px solid var(--line);background:#fff}
  .shot .bar i{width:11px;height:11px;border-radius:50%;background:#dfe3e9;display:block}
  /* faux product dashboard (illustrative sample data) */
  .shot .dash{background:#161B26;padding:24px 26px 28px}
  .dash .dnote{color:#8b93a4;font-size:13px;margin-bottom:16px}
  .dash .kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:14px}
  .dash .kpi{background:linear-gradient(160deg,#262F42,#1E2534);border:1px solid #303c50;border-radius:13px;padding:15px 15px 14px}
  .dash .kpi.warn{border-color:rgba(227,173,74,.5)}
  .dash .kpi .k{color:#8b93a4;font-size:10px;letter-spacing:.5px;text-transform:uppercase;font-weight:700}
  .dash .kpi .v{color:#E7E8EA;font-size:28px;font-weight:800;margin:8px 0 6px;line-height:1;letter-spacing:-.5px}
  .dash .kpi .v.warn{color:#e3ad4a}
  .dash .kpi .s{color:#8b93a4;font-size:10.5px;line-height:1.3}
  .dash .two{display:grid;grid-template-columns:1.5fr 1fr;gap:13px}
  .dash .box{background:#1E2534;border:1px solid #303c50;border-radius:13px;padding:17px 19px}
  .dash .box h4{color:#E7E8EA;font-size:13.5px;margin-bottom:13px}
  .dash .alert{display:flex;align-items:center;gap:11px;background:#161B26;border:1px solid #303c50;border-left-width:3px;border-radius:9px;padding:10px 13px;margin-bottom:8px}
  .dash .alert:last-child{margin-bottom:0}
  .dash .alert.bad{border-left-color:#d76d6d}
  .dash .alert.warn{border-left-color:#e3ad4a}
  .dash .alert .dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
  .dash .alert.bad .dot{background:#d76d6d}
  .dash .alert.warn .dot{background:#e3ad4a}
  .dash .alert .t{flex:1;color:#E7E8EA;font-size:12.5px;font-weight:600}
  .dash .alert .a{color:#E7E8EA;font-weight:800;font-size:12.5px}
  .dash .ring{width:92px;height:92px;border-radius:50%;background:conic-gradient(#e3ad4a 78%,#303c50 0);display:flex;align-items:center;justify-content:center;flex:0 0 auto}
  .dash .ring .inner{width:70px;height:70px;border-radius:50%;background:#1E2534;display:flex;flex-direction:column;align-items:center;justify-content:center}
  .dash .ring .inner b{color:#E7E8EA;font-size:23px;font-weight:800;line-height:1}
  .dash .ring .inner small{color:#8b93a4;font-size:9.5px;margin-top:2px}
  .dash .hl b{color:#e3ad4a;font-size:15px;display:block;margin-bottom:3px}
  .dash .hl span{color:#8b93a4;font-size:11.5px}
  @media(max-width:820px){.dash .kpis{grid-template-columns:1fr 1fr}.dash .two{grid-template-columns:1fr}}
  /* --- richer dashboard: money row, action center, pipeline, kpi snapshot --- */
  .dash .kpis.k5{grid-template-columns:repeat(5,1fr)}
  .dash .kpi.good{border-color:rgba(79,187,133,.5)}
  .dash .kpi .v.good{color:#4fbb85}
  .dash .kpi .mom{color:#4fbb85;font-weight:800}
  .dash .sect{color:#E7E8EA;font-size:13px;font-weight:700;margin:20px 0 11px;letter-spacing:.2px}
  .dash .act{display:flex;align-items:center;gap:12px;background:#1E2534;border:1px solid #303c50;border-left-width:3px;border-radius:10px;padding:11px 15px;margin-bottom:8px}
  .dash .act:last-child{margin-bottom:0}
  .dash .act.bad{border-left-color:#d76d6d}.dash .act.warn{border-left-color:#e3ad4a}.dash .act.good{border-left-color:#4fbb85}
  .dash .act .dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
  .dash .act.bad .dot{background:#d76d6d}.dash .act.warn .dot{background:#e3ad4a}.dash .act.good .dot{background:#4fbb85}
  .dash .act .atext{flex:1;min-width:0}
  .dash .act .atext b{color:#E7E8EA;font-size:13px;display:block}
  .dash .act .atext span{color:#8b93a4;font-size:11px}
  .dash .act .aamt{color:#E7E8EA;font-weight:800;font-size:13px;white-space:nowrap}
  .dash .pipe{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
  .dash .pcell{background:#1E2534;border:1px solid #303c50;border-radius:12px;padding:14px 15px}
  .dash .pcell b{color:#E7E8EA;font-size:26px;font-weight:800;line-height:1}
  .dash .pcell span{display:block;color:#8b93a4;font-size:9.5px;letter-spacing:.5px;text-transform:uppercase;font-weight:700;margin:7px 0 10px}
  .dash .pcell i{display:block;height:5px;border-radius:3px;background:#4fbb85}
  .dash .hlth{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
  .dash .ded{margin-left:auto;min-width:210px;flex:1}
  .dash .ded .dr{display:flex;justify-content:space-between;color:#8b93a4;font-size:11.5px;padding:5px 0;border-top:1px solid #262F42}
  .dash .ded .dr b{color:#d76d6d;font-weight:700;font-variant-numeric:tabular-nums}
  .dash .snap{display:grid;grid-template-columns:repeat(5,1fr);gap:11px}
  .dash .snap .sc{background:#1E2534;border:1px solid #303c50;border-radius:11px;padding:12px 14px}
  .dash .snap .sc .k{color:#8b93a4;font-size:9px;letter-spacing:.4px;text-transform:uppercase;font-weight:700}
  .dash .snap .sc .v{color:#E7E8EA;font-size:19px;font-weight:800;margin-top:5px}
  @media(max-width:820px){.dash .kpis.k5{grid-template-columns:1fr 1fr}.dash .pipe{grid-template-columns:1fr 1fr}.dash .snap{grid-template-columns:1fr 1fr}.dash .ded{margin-left:0;width:100%}}
  /* --- deal flow stepper visual --- */
  .flowsec{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:center;margin-top:56px}
  .flowsec h3{font-size:clamp(23px,3vw,30px);margin:10px 0 8px;letter-spacing:-.5px}
  .flowcard{background:#161B26;border:1px solid var(--slate-line);border-radius:16px;padding:24px 28px;box-shadow:0 40px 80px -40px rgba(20,24,31,.35)}
  .flowcard .flabel{color:#8b93a4;font-size:10px;letter-spacing:.6px;text-transform:uppercase;font-weight:700;margin-bottom:18px}
  .fstep{display:flex;gap:14px;position:relative;padding-bottom:16px}
  .fstep:last-child{padding-bottom:0}
  .fstep:not(:last-child):before{content:"";position:absolute;left:12px;top:26px;bottom:-2px;width:2px;background:#303c50}
  .fstep.done:not(:last-child):before{background:#4fbb85}
  .fstep .fdot{width:26px;height:26px;border-radius:50%;flex:0 0 auto;position:relative;z-index:1}
  .fstep.done .fdot{background:#4fbb85}
  .fstep.done .fdot:after{content:"";position:absolute;inset:0;background:#fff;
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/14px no-repeat;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/14px no-repeat}
  .fstep.cur .fdot{background:#e3ad4a}
  .fstep.todo .fdot{background:transparent;border:2px solid #3d4a62}
  .fstep .flab{color:#E7E8EA;font-size:14.5px;font-weight:600;padding-top:3px}
  .fstep.cur .flab{font-weight:800}
  .fstep.todo .flab{color:#8b93a4;font-weight:500}
  .fstep .na{color:#8b93a4;font-weight:500}
  .fstep .fnote{display:block;color:#e3ad4a;font-size:11.5px;font-weight:700;margin-top:3px}
  @media(max-width:820px){.flowsec{grid-template-columns:1fr;gap:30px}}
  /* aging report visual */
  .shot .aging{background:#161B26;padding:18px 24px 20px}
  .aging .arow{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 4px;border-bottom:1px solid #262F42}
  .aging .arow:last-child{border-bottom:0}
  .aging .acat{display:flex;align-items:center;gap:11px;min-width:0}
  .aging .acat b{color:#E7E8EA;font-size:13.5px;font-weight:700}
  .aging .pill{font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:20px;white-space:nowrap}
  .aging .pill.bad{background:rgba(215,109,109,.16);color:#d76d6d}
  .aging .pill.warn{background:rgba(227,173,74,.16);color:#e3ad4a}
  .aging .ameta{display:flex;align-items:center;gap:16px;flex:0 0 auto}
  .aging .ameta span{color:#8b93a4;font-size:12px}
  .aging .ameta b{font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
  .aging .ameta b.bad{color:#d76d6d}.aging .ameta b.warn{color:#e3ad4a}.aging .ameta b.mut{color:#8b93a4}
  @media(max-width:640px){.aging .pill{display:none}}

  /* how it works */
  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}
  .step{background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:30px 26px}
  .step .n{width:38px;height:38px;border-radius:11px;background:var(--slate);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px;margin-bottom:18px}
  .step h3{font-size:19px;margin-bottom:9px}
  .step p{color:var(--muted);font-size:15px}
  @media(max-width:820px){.steps{grid-template-columns:1fr}}

  /* two-up positioning */
  .twoup{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
  .card{border-radius:18px;padding:38px 34px}
  .card.dk{background:var(--slate2);color:var(--slate-text);border:1px solid var(--slate-line)}
  .card.dk h3{color:#fff;font-size:24px;margin-bottom:14px}
  .card.dk p{color:var(--slate-muted);margin-bottom:12px}
  .card.dk .tag{display:inline-block;margin-top:8px;font-weight:800;color:#fff}
  .card.lt{background:var(--bg2);border:1px solid var(--line)}
  .card.lt h3{font-size:20px;margin-bottom:16px}
  ul.checks{list-style:none;display:grid;gap:13px}
  ul.checks li{position:relative;padding-left:30px;font-size:15.5px;color:var(--ink)}
  ul.checks li:before{content:"";position:absolute;left:0;top:7px;width:16px;height:16px;border-radius:50%;background:var(--good);
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/12px no-repeat;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/></svg>") center/12px no-repeat}
  @media(max-width:820px){.twoup{grid-template-columns:1fr}}

  /* experience list */
  .explist{columns:2;column-gap:34px;margin-top:26px;max-width:760px}
  .explist p{break-inside:avoid;padding:9px 0 9px 26px;position:relative;color:var(--slate-muted)}
  .explist p:before{content:"";position:absolute;left:0;top:16px;width:8px;height:8px;border-radius:50%;background:var(--good)}
  @media(max-width:640px){.explist{columns:1}}

  /* CTA / booking */
  .book{text-align:center}
  .book h2{font-size:clamp(28px,4.4vw,44px);color:#fff;margin-bottom:18px}
  .book .lead{margin:0 auto 30px}
  .bookgrid{max-width:620px;margin:34px auto 0;text-align:left;background:var(--slate2);border:1px solid var(--slate-line);border-radius:16px;padding:30px 32px}
  .bookgrid ul{list-style:none;display:grid;gap:12px;margin-bottom:22px}
  .bookgrid li{padding-left:26px;position:relative;color:var(--slate-text);font-size:15.5px}
  .bookgrid li:before{content:"";position:absolute;left:0;top:8px;width:14px;height:14px;border-radius:50%;background:var(--good)}
  .booknote{color:var(--slate-muted);font-size:14px;margin-top:16px}

  /* footer */
  footer{background:var(--slate);color:var(--slate-muted);padding:46px 0;border-top:1px solid var(--slate-line)}
  .ft{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
  .ft .spacer{flex:1}
  .ft a{color:var(--slate-muted);font-size:14px;font-weight:600}
  .ft a:hover{color:#fff}
  .ft .brand{color:#fff}
  .ft .brand small{color:var(--slate-muted)}

/* ===== utility classes (moved from inline styles for CSP) ===== */
.logo-top{height:46px;width:auto;display:block}
.sec-video{padding-top:36px;padding-bottom:56px}
.mw920{max-width:920px}
.video-frame{width:100%;display:block;border-radius:16px;box-shadow:0 30px 80px rgba(20,24,31,.35);background:#000}
.tc-mt14{text-align:center;margin-top:14px}
.w100{width:100%}
.w21{width:21%}
.w64{width:64%}
.w43{width:43%}
.mt14{margin-top:14px}
.mt52{margin-top:52px}
.mt26{margin-top:26px}
.sec-fade{background:var(--bg2);padding-top:0;background:linear-gradient(180deg,#fff,var(--bg2))}
.btop-slate{border-top:1px solid var(--slate-line)}
.bookframe{width:100%;min-width:320px;height:640px;border:0;border-radius:14px;overflow:hidden;background:#fff;margin-top:30px}
.logo-foot{height:40px;width:auto;display:block;filter:brightness(0) invert(1);opacity:.92}
.ft-legal{width:100%;font-size:13px;margin-top:8px}
