



.lc-crumb { margin-block-end: var(--sp-4); }
.lc-crumb ol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--sp-2);
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: var(--fs-micro);
  color: var(--ink-muted);
}
.lc-crumb li + li::before { content: "/"; margin-inline-end: var(--sp-2); }
.lc-crumb [aria-current="page"] { color: var(--ink); }



.lc-draw { display: block; width: 100%; height: auto; }
.lc-draw__line {
  fill: none;
  stroke: var(--ink);
  stroke-width: 1.5;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.lc-draw__fine {
  fill: none;
  stroke: var(--ink-dim);
  stroke-width: 1;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.lc-draw__plate {
  fill: var(--sheet);
  stroke: var(--ink);
  stroke-width: 1.5;
  stroke-linecap: square;
}
.lc-draw__conn { fill: var(--sheet); }
.lc-draw__sensor { fill: none; stroke: var(--accent); stroke-width: 1.5; }
.lc-draw__accent {
  fill: none;
  stroke: var(--accent);
  stroke-width: 2;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.lc-draw__moon {
  fill: none;
  stroke: var(--ink);
  stroke-width: 1;
  stroke-linecap: square;
}
.lc-draw__accentLit {
  fill: none;
  stroke: var(--accent);
  stroke-width: 2;
  stroke-linecap: square;
}
.lc-draw__t { fill: var(--ink); font-family: var(--font-mono); font-size: 15px; }
.lc-draw__dim { fill: var(--ink-muted); font-family: var(--font-mono); font-size: 13px; }



.lc-hero {
  position: relative;
  display: grid;
  align-items: center;
  overflow: hidden;
  background: var(--ground);
  padding-block-end: clamp(3rem, 6vw, 5rem);
  min-height: clamp(520px, 66vh, 720px);
}
.lc-hero__media { position: absolute; inset: 0; overflow: hidden; }
.lc-hero__draw { width: 100%; height: 100%; display: block; }
.lc-hero__veil { z-index: 1; }
.lc-hero__band {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 38fr) minmax(0, 62fr);
}
.lc-hero__txt { grid-column: 1; min-width: 0; }
.lc-hero__h1 {
  margin: var(--sp-3) 0 var(--sp-4);
  font-family: var(--font-display);
  font-size: clamp(2.6rem, 4vw, 3.5rem);
  font-weight: 600;
  line-height: 1.04;
  letter-spacing: -.02em;
}
.lc-hero__sub {
  max-width: 46ch;
  margin: 0 0 var(--sp-6);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink-muted);
}
.lc-parts {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2) var(--sp-3);
  margin: 0 0 var(--sp-6);
  padding: var(--sp-3) 0;
  border-block: 1px solid var(--rule-soft);
  list-style: none;
}
.lc-parts__i {
  font-family: var(--font-mono);
  font-size: var(--fs-micro);
  letter-spacing: .04em;
  color: var(--ink);
}
.lc-parts__i + .lc-parts__i::before {
  content: "·";
  margin-inline-end: var(--sp-3);
  color: var(--ink-muted);
}



.lc-route__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: start;
}
.lc-route__figs { display: grid; gap: var(--sp-6); }
.lc-route__fig { margin: 0; }
.lc-route__fig figcaption {
  margin-block-start: var(--sp-3);
  font-size: var(--fs-micro);
  line-height: 1.5;
  color: var(--ink-muted);
}
.lc-route__txt h2 { margin: var(--sp-2) 0 var(--sp-4); }
.lc-route__txt > p { max-width: 56ch; margin: 0 0 var(--sp-4); }
.lc-cmp { display: grid; gap: var(--sp-4); }
.lc-cmp__col {
  padding: var(--sp-4);
  border: 1px solid var(--rule);
  border-radius: var(--r-card);
  background: var(--sheet);
}
.lc-cmp__col:last-child { background: var(--ground-cool); }
.lc-cmp__h {
  margin: 0 0 var(--sp-3);
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ink);
}
.lc-cmp__list {
  display: grid;
  gap: var(--sp-2);
  margin: 0;
  padding: 0;
  list-style: none;
}
.lc-cmp__list li {
  padding-block-end: var(--sp-2);
  border-block-end: 1px solid var(--rule-soft);
  font-size: var(--fs-small);
  line-height: 1.5;
}
.lc-cmp__list li:last-child { border-block-end: 0; padding-block-end: 0; }



.lc-parts4__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: start;
}
.lc-parts4__txt h2 { margin: var(--sp-2) 0 var(--sp-4); }
.lc-parts4__txt > p { max-width: 56ch; margin: 0 0 var(--sp-4); }
.lc-parts4__fig { margin: 0; }
.lc-parts4__fig figcaption {
  margin-block-start: var(--sp-4);
  font-size: var(--fs-micro);
  line-height: 1.5;
  color: var(--ink-muted);
}
.lc-partlist { margin: 0; border-block-start: 1px solid var(--rule); }
.lc-partlist__row {
  display: grid;
  grid-template-columns: minmax(0, 13ch) minmax(0, 1fr);
  gap: var(--sp-4);
  padding-block: var(--sp-4);
  border-block-end: 1px solid var(--rule-soft);
}
.lc-partlist__k {
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ink);
}
.lc-partlist__v {
  margin: 0;
  font-size: var(--fs-small);
  line-height: 1.6;
}
.lc-partlist__q { display: block; color: var(--ink-muted); }



.lc-spec__lede {
  max-width: 62ch;
  margin: var(--sp-3) 0 var(--sp-6);
  color: var(--ink-muted);
}
.lc-spec__table th[scope="row"] { width: 22%; }
.lc-spec__open { color: var(--ink-muted); }
.lc-spec__set { color: var(--ink); font-weight: 650; }



.lc-detect__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: start;
}
.lc-detect__fig { margin: 0; }
.lc-detect__fig figcaption {
  margin-block-start: var(--sp-3);
  font-size: var(--fs-micro);
  line-height: 1.5;
  color: var(--ink-muted);
}
.lc-detect__txt h2 { margin: var(--sp-2) 0 var(--sp-4); }
.lc-detect__txt > p { max-width: 56ch; margin: 0 0 var(--sp-4); }
.lc-ops { margin: 0; border-block-start: 1px solid var(--rule); }
.lc-ops__row {
  display: grid;
  grid-template-columns: minmax(0, 12ch) minmax(0, 1fr);
  gap: var(--sp-4);
  padding-block: var(--sp-3);
  border-block-end: 1px solid var(--rule-soft);
}
.lc-ops__k {
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ink-muted);
}
.lc-ops__v { margin: 0; font-size: var(--fs-small); line-height: 1.55; }



.lc-band {
  position: relative;
  display: grid;
  align-content: center;
  overflow: hidden;
  min-height: clamp(480px, 60vh, 660px);
  padding-block: clamp(3rem, 6vw, 5rem);
  background: var(--ground);
}
.lc-band__media { position: absolute; inset: 0; overflow: hidden; }
.lc-band__media img {
  
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lc-band__veil { z-index: 1; }
.lc-band__grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 38fr) minmax(0, 62fr);
  gap: clamp(1.5rem, 4vw, 3rem);
  align-items: center;
}
.lc-band__txt h2 { margin: var(--sp-2) 0 var(--sp-4); }
.lc-band__txt p {
  max-width: 40ch;
  margin: 0 0 var(--sp-3);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink);
}
.lc-band__cap {
  position: relative;
  z-index: 2;
  margin: var(--sp-6) 0 0;
  font-size: var(--fs-micro);
  color: var(--ink-muted);
}
.lc-figs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--sp-3);
  margin: 0;
}
.lc-figs__cell {
  display: grid;
  gap: var(--sp-2);
  align-content: start;
  padding: var(--sp-4);
  background: var(--sheet);
  border: 1px solid var(--rule);
  border-radius: var(--r-flat);
}
.lc-figs__k {
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--ink-muted);
}
.lc-figs__v {
  margin: 0;
  font-size: var(--fs-small);
  line-height: 1.5;
  color: var(--ink);
}
.lc-figs__n {
  display: inline-block;
  margin-inline-end: .4em;
  font-family: var(--font-mono);
  font-size: var(--fs-h3);
  font-weight: 600;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
}
.lc-figs__u {
  display: inline-block;
  margin-inline-end: var(--sp-3);
  font-family: var(--font-mono);
  font-size: var(--fs-micro);
  color: var(--ink-muted);
}



.lc-docs__scope {
  max-width: 78ch;
  margin: var(--sp-3) 0 var(--sp-6);
  padding: var(--sp-4);
  border-inline-start: 2px solid var(--ink);
  background: var(--sheet);
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink);
}
.lc-docs__line {
  max-width: 78ch;
  margin: var(--sp-6) 0 0;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink-muted);
}



.lc-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--sp-1);
  margin: var(--sp-6) 0 0;
  padding: 0;
  list-style: none;
  border-block-start: 1px solid var(--rule);
}
.lc-steps__i {
  display: grid;
  gap: var(--sp-2);
  align-content: start;
  padding: var(--sp-4) var(--sp-4) var(--sp-6) 0;
  border-block-end: 1px solid var(--rule-soft);
}
.lc-ico {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: var(--ink);
  stroke-width: 1.5;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.lc-steps__n {
  font-family: var(--font-mono);
  font-size: var(--fs-label);
  font-variant-numeric: tabular-nums;
  letter-spacing: .1em;
  color: var(--ink-muted);
}
.lc-steps__h { margin: 0; font-size: var(--fs-small); font-weight: 650; }
.lc-steps__p {
  margin: 0;
  font-size: var(--fs-micro);
  line-height: 1.5;
  color: var(--ink-muted);
}
.lc-select__foot {
  max-width: 78ch;
  margin: var(--sp-6) 0 0;
  padding-block-start: var(--sp-4);
  border-block-start: 1px solid var(--rule-soft);
  font-size: var(--fs-small);
  color: var(--ink-muted);
}



.lc-cta { position: relative; overflow: hidden; }
.lc-cta__tex {
  position: absolute;
  inset: 0;
  opacity: .22;
  pointer-events: none;
}
.lc-cta__draw { width: 100%; height: 100%; display: block; }
.lc-cta__wrap { position: relative; z-index: 2; display: grid; gap: var(--sp-4); justify-items: start; }
.lc-cta__h2 { margin: 0; max-width: 26ch; }
.lc-cta__line {
  max-width: 62ch;
  margin: 0;
  font-size: var(--fs-small);
  line-height: 1.6;
  color: var(--ink-muted);
}
.lc-cta__acts { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-block-start: var(--sp-2); }
.lc-cta__promise { max-width: 62ch; margin: 0; font-size: var(--fs-small); }
.lc-cta__rel {
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-3) var(--sp-6);
  margin: var(--sp-4) 0 0;
  padding: var(--sp-4) 0 0;
  border-block-start: 1px solid var(--rule-soft);
  list-style: none;
  font-size: var(--fs-small);
}



@media (max-width: 1080px) {
  .lc-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  
  .lc-hero__veil { background: var(--scrim-heavy); background-image: none; }
  .lc-band__veil { background: var(--scrim-heavy); background-image: none; }
  .lc-hero__band,
  .lc-band__grid { grid-template-columns: minmax(0, 1fr); }
  .lc-hero__txt { grid-column: 1; }
  .lc-route__grid,
  .lc-parts4__grid,
  .lc-detect__grid { grid-template-columns: minmax(0, 1fr); }
  .lc-hero__sub,
  .lc-band__txt p { max-width: 62ch; }
}
@media (max-width: 620px) {
  .lc-partlist__row,
  .lc-ops__row { grid-template-columns: minmax(0, 1fr); gap: var(--sp-1); }
  .lc-figs { grid-template-columns: minmax(0, 1fr); }
  .lc-steps { grid-template-columns: minmax(0, 1fr); }
}
