#bnv-page[data-engine="lc"] /* ═══════════════════════════════════════════════════════════════════
   BINNOVY · LIFECYCLE engine (lc)
   Creative, #bnv-page[data-engine="lc"] illustration-led stage pages with a DARK BLOCK in the middle.
   Scoped at build time under #bnv-page[data-engine="lc"].
   Per-page accent comes from --lc-c.
   ═══════════════════════════════════════════════════════════════════ */
.lc-wrap{ width:var(--cw); margin-inline:auto; }
#bnv-page[data-engine="lc"] /* ---- HERO (light, #bnv-page[data-engine="lc"] illustration-led) ---- */
.lc-hero{ position:relative; padding:clamp(28px,4vw,48px) 0 clamp(48px,6vw,80px);
  background:
    radial-gradient(40rem 26rem at 88% -10%, color-mix(in oklab, var(--lc-c,#1c7ef5) 12%, transparent), transparent 60%),
    var(--paper-1);
  border-bottom:1px solid var(--hair); overflow:hidden; }
#bnv-page[data-engine="lc"] .lc-crumb{ font-family:var(--f-mono); font-size:11px; letter-spacing:.06em; color:var(--ink-5);
  display:flex; gap:8px; align-items:center; margin-bottom:24px; flex-wrap:wrap; }
#bnv-page[data-engine="lc"] .lc-crumb a{ color:var(--ink-4); text-decoration:none; }
#bnv-page[data-engine="lc"] .lc-crumb a:hover{ color:var(--lc-c,#1c7ef5); }
#bnv-page[data-engine="lc"] .lc-crumb span{ opacity:.5; }
#bnv-page[data-engine="lc"] /* phase rail — the 5 stages, #bnv-page[data-engine="lc"] current highlighted */
.lc-rail{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:clamp(28px,4vw,48px); }
#bnv-page[data-engine="lc"] .lc-rail-item{ display:flex; align-items:center; gap:9px; padding:9px 15px; border-radius:999px;
  border:1px solid var(--hair); background:var(--paper-0); text-decoration:none;
  transition:transform .2s var(--ease), border-color .2s, background .2s; }
#bnv-page[data-engine="lc"] .lc-rail-item:hover{ transform:translateY(-2px); border-color:color-mix(in oklab,var(--lc-c,#1c7ef5) 50%, var(--hair)); }
#bnv-page[data-engine="lc"] .lc-rail-n{ font-family:var(--f-mono); font-size:11px; font-weight:700; color:var(--ink-5); }
#bnv-page[data-engine="lc"] .lc-rail-l{ font-size:13.5px; font-weight:600; color:var(--ink-2); }
#bnv-page[data-engine="lc"] .lc-rail-item.active{ background:var(--ink-0); border-color:transparent; }
#bnv-page[data-engine="lc"] .lc-rail-item.active .lc-rail-n{ color:var(--lc-c,#00c2ee); }
#bnv-page[data-engine="lc"] .lc-rail-item.active .lc-rail-l{ color:#fff; }
#bnv-page[data-engine="lc"] .lc-hero-grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(28px,4vw,64px); align-items:center; }
#bnv-page[data-engine="lc"] .lc-stage{ font-family:var(--f-mono); font-size:12px; font-weight:600; letter-spacing:.18em;
  text-transform:uppercase; color:var(--lc-c,#1c7ef5); }
#bnv-page[data-engine="lc"] .lc-h1{ font-family:var(--f-serif); font-weight:400; font-size:clamp(48px,8vw,104px); line-height:.98;
  letter-spacing:-.02em; color:var(--ink-0); margin:14px 0 0; }
#bnv-page[data-engine="lc"] .lc-h1 em{ font-style:italic; background:var(--grad-text); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
#bnv-page[data-engine="lc"] .lc-tag{ font-family:var(--f-mono); font-size:13px; letter-spacing:.04em; color:var(--ink-4); margin:16px 0 0; }
#bnv-page[data-engine="lc"] .lc-lead{ font-size:clamp(16px,1.4vw,18.5px); line-height:1.6; color:var(--ink-3); max-width:54ch; margin:18px 0 0; }
#bnv-page[data-engine="lc"] .lc-actions{ display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; }
#bnv-page[data-engine="lc"] .lc-btn{ display:inline-flex; align-items:center; gap:9px; font-family:var(--f-sans); font-size:14.5px;
  font-weight:600; padding:13px 22px; border-radius:12px; text-decoration:none; transition:transform .18s var(--ease), filter .2s; }
#bnv-page[data-engine="lc"] .lc-btn:hover{ transform:translateY(-2px); }
#bnv-page[data-engine="lc"] .lc-btn .arr{ transition:transform .2s var(--ease); }
#bnv-page[data-engine="lc"] .lc-btn:hover .arr{ transform:translateX(3px); }
#bnv-page[data-engine="lc"] .lc-btn-primary{ background:var(--ink-0); color:#fff; }
#bnv-page[data-engine="lc"] .lc-btn-primary:hover{ filter:brightness(1.15); }
#bnv-page[data-engine="lc"] .lc-btn-ghost{ background:transparent; color:var(--ink-1); border:1px solid var(--hair); }
#bnv-page[data-engine="lc"] .lc-btn-ghost:hover{ border-color:var(--ink-4); }
#bnv-page[data-engine="lc"] .lc-hero-ill{ display:flex; justify-content:center; }
#bnv-page[data-engine="lc"] .lc-ill-disc{ position:relative; width:min(340px,80%); aspect-ratio:1; border-radius:50%;
  display:grid; place-items:center; color:#fff;
  background:radial-gradient(circle at 32% 28%, color-mix(in oklab,var(--lc-c,#1c7ef5) 90%, white), var(--lc-c,#1c7ef5) 45%, color-mix(in oklab,var(--lc-c,#1c7ef5) 60%, #0a0e1a));
  box-shadow:0 30px 80px -20px color-mix(in oklab,var(--lc-c,#1c7ef5) 60%, transparent); }
#bnv-page[data-engine="lc"] .lc-ill-disc::after{ content:''; position:absolute; inset:-10% ; border-radius:50%;
  border:1px dashed color-mix(in oklab,var(--lc-c,#1c7ef5) 40%, transparent); animation:lcSpin 30s linear infinite; }
#bnv-page[data-engine="lc"] .lc-ill-disc svg{ width:46%; height:46%; position:relative; z-index:2; }
#bnv-page[data-engine="lc"] .lc-dark{ background:var(--ink-0); color:#fff; padding:clamp(56px,8vw,112px) 0; position:relative; overflow:hidden; }
#bnv-page[data-engine="lc"] .lc-dark::before{ content:''; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(46rem 30rem at 100% 0%, color-mix(in oklab,var(--lc-c,#1c7ef5) 26%, transparent), transparent 60%); }
#bnv-page[data-engine="lc"] .lc-dark::after{ content:''; position:absolute; inset:0; opacity:.5; pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:46px 46px; mask-image:radial-gradient(75% 75% at 60% 40%,#000,transparent); }
#bnv-page[data-engine="lc"] .lc-dark .lc-wrap{ position:relative; z-index:2; }
#bnv-page[data-engine="lc"] .lc-dark-grid{ display:grid; grid-template-columns:.95fr 1.05fr; gap:clamp(32px,5vw,72px); align-items:start; }
#bnv-page[data-engine="lc"] .lc-dark-eyebrow{ font-family:var(--f-mono); font-size:11px; font-weight:600; letter-spacing:.18em;
  text-transform:uppercase; color:color-mix(in oklab,var(--lc-c,#00c2ee) 80%, white); }
#bnv-page[data-engine="lc"] .lc-dark-h{ font-family:var(--f-serif); font-weight:400; font-size:clamp(28px,3.8vw,46px); line-height:1.08;
  letter-spacing:-.01em; color:#fff; margin:14px 0 0; }
#bnv-page[data-engine="lc"] .lc-dark-h em{ font-style:italic; color:color-mix(in oklab,var(--lc-c,#00c2ee) 75%, white); }
#bnv-page[data-engine="lc"] .lc-dark-p{ font-size:16.5px; line-height:1.65; color:rgba(255,255,255,.74); margin:18px 0 0; }
#bnv-page[data-engine="lc"] .lc-steps{ display:grid; gap:1px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.12);
  border-radius:16px; overflow:hidden; }
#bnv-page[data-engine="lc"] .lc-step{ background:#10172a; padding:20px 22px; display:grid; grid-template-columns:auto 1fr; gap:18px; align-items:start; }
#bnv-page[data-engine="lc"] .lc-step-n{ font-family:var(--f-serif); font-style:italic; font-size:26px; line-height:1;
  color:var(--lc-c,#00c2ee); min-width:38px; }
#bnv-page[data-engine="lc"] .lc-step-h{ font-size:16px; font-weight:600; color:#fff; }
#bnv-page[data-engine="lc"] .lc-step-d{ font-size:14px; line-height:1.5; color:rgba(255,255,255,.66); margin-top:4px; }
#bnv-page[data-engine="lc"] .lc-out{ padding:clamp(48px,7vw,96px) 0; background:var(--paper-1); }
#bnv-page[data-engine="lc"] .lc-out-eyebrow{ font-family:var(--f-mono); font-size:11px; font-weight:600; letter-spacing:.18em;
  text-transform:uppercase; color:var(--ink-5); }
#bnv-page[data-engine="lc"] .lc-out-h{ font-family:var(--f-serif); font-weight:400; font-style:italic; font-size:clamp(24px,3.2vw,40px);
  line-height:1.18; color:var(--ink-0); margin:14px 0 0; max-width:30ch; }
#bnv-page[data-engine="lc"] .lc-section{ padding:clamp(40px,6vw,80px) 0; }
#bnv-page[data-engine="lc"] .lc-others{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:24px; }
#bnv-page[data-engine="lc"] .lc-other{ border:1px solid var(--hair); border-radius:16px; padding:22px; background:var(--paper-0);
  text-decoration:none; display:flex; flex-direction:column; gap:6px; position:relative; overflow:hidden;
  transition:transform .3s var(--ease), box-shadow .3s; }
#bnv-page[data-engine="lc"] .lc-other::before{ content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--lc-c,#1c7ef5); }
#bnv-page[data-engine="lc"] .lc-other:hover{ transform:translateY(-4px); box-shadow:0 18px 44px rgba(10,14,26,.1); }
#bnv-page[data-engine="lc"] .lc-other-n{ font-family:var(--f-mono); font-size:11px; font-weight:700; color:var(--lc-c,#1c7ef5); }
#bnv-page[data-engine="lc"] .lc-other-name{ font-family:var(--f-serif); font-size:24px; color:var(--ink-0); }
#bnv-page[data-engine="lc"] .lc-other-tag{ font-size:12.5px; color:var(--ink-4); line-height:1.4; }
#bnv-page[data-engine="lc"] .lc-ov-ill{ width:48px; height:48px; color:var(--lc-c,#1c7ef5); }
#bnv-page[data-engine="lc"] .lc-ov-ill svg{ width:100%; height:100%; }
#bnv-page[data-engine="lc"] .lc-ov-name{ font-family:var(--f-serif); font-size:30px; line-height:1; color:var(--ink-0); }
#bnv-page[data-engine="lc"] .lc-ov-lead{ font-size:13.5px; line-height:1.55; color:var(--ink-3); }
#bnv-page[data-engine="lc"] .lc-cta{ background:var(--ink-0); color:#fff; padding:clamp(56px,7vw,96px) 0; text-align:center; position:relative; overflow:hidden; }
#bnv-page[data-engine="lc"] .lc-cta::before{ content:''; position:absolute; inset:0; background:radial-gradient(40rem 26rem at 50% -20%, color-mix(in oklab,var(--lc-c,#1c7ef5) 30%, transparent), transparent 62%); }
#bnv-page[data-engine="lc"] .lc-cta .lc-wrap{ position:relative; z-index:2; }
#bnv-page[data-engine="lc"] .lc-cta-h{ font-family:var(--f-serif); font-weight:400; font-size:clamp(30px,4vw,52px); line-height:1.06; }
#bnv-page[data-engine="lc"] .lc-cta-h em{ font-style:italic; color:color-mix(in oklab,var(--lc-c,#00c2ee) 75%, white); }
#bnv-page[data-engine="lc"] .lc-cta-p{ color:rgba(255,255,255,.66); max-width:54ch; margin:16px auto 0; font-size:16.5px; }
#bnv-page[data-engine="lc"] .lc-rv{ opacity:0; transform:translateY(18px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
#bnv-page[data-engine="lc"] .lc-rv.in{ opacity:1; transform:none; }
@media (max-width:920px){
  .lc-hero-grid{ grid-template-columns:1fr; }
.lc-hero-ill{ order:-1; }
.lc-dark-grid{ grid-template-columns:1fr; }
.lc-others{ grid-template-columns:repeat(2,1fr); }}
@media (max-width:560px){ .lc-others{ grid-template-columns:1fr; }}