.elementor-3137 .elementor-element.elementor-element-3eecef39{--display:flex;}.elementor-3137 .elementor-element.elementor-element-3eecef39:not(.elementor-motion-effects-element-type-background), .elementor-3137 .elementor-element.elementor-element-3eecef39 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-d8231c6 );}/* Start custom CSS for html, class: .elementor-element-8097224 */:root{
    --chrome:#161f2e;
    --chrome-2:#1e2838;
    --ticker:#101825;
    --chrome-ink:#e7ecf3;
    --chrome-faint:#8a94a6;

    --ground:#f3f3f1;
    --surface:#ffffff;
    --ink:#1b2433;
    --ink-soft:#47556a;
    --ink-faint:#8a94a6;

    --accent:#f59e2c;
    --accent-ink:#161f2e;
    --indigo:#5b5bd6;
    --good:#3f9d6b;

    --rule:rgba(27,36,51,0.14);
    --rule-strong:rgba(27,36,51,0.28);

    /* device readout — one world, defined once */
    --readout-bg:#121b29;
    --readout-ink:#e6ebf2;
    --readout-faint:#7c8aa0;
    --readout-kw:#f5a94a;
    --readout-str:#6fce9b;
    --readout-fn:#8ab4f8;
    --readout-cm:#6a7891;

    --shadow:rgba(9,14,22,0.5);
  }
  @media (prefers-color-scheme:dark){
    :root:not([data-theme="light"]){
      --ground:#0f1622;
      --surface:#161f2e;
      --ink:#e7ecf3;
      --ink-soft:#a9b3c3;
      --ink-faint:#7c8aa0;
      --rule:rgba(231,236,243,0.13);
      --rule-strong:rgba(231,236,243,0.26);
    }
  }
  :root[data-theme="dark"]{
    --ground:#0f1622;
    --surface:#161f2e;
    --ink:#e7ecf3;
    --ink-soft:#a9b3c3;
    --ink-faint:#7c8aa0;
    --rule:rgba(231,236,243,0.13);
    --rule-strong:rgba(231,236,243,0.26);
  }

  *{box-sizing:border-box;}
  html{-webkit-text-size-adjust:100%;}
  body{
    margin:0;
    background:var(--ground);
    color:var(--ink);
    font-family:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    font-size:15.5px;
    line-height:1.72;
    text-rendering:optimizeLegibility;
    font-feature-settings:"liga" 0;
  }

  .playhead{
    position:fixed;top:0;left:0;height:2px;width:0%;
    background:var(--accent);z-index:60;
  }

  a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px;}
  a:focus-visible,button:focus-visible,[tabindex]:focus-visible{
    outline:2px solid var(--accent);outline-offset:3px;border-radius:1px;
  }

  /* ---------------- site chrome ---------------- */
  .ticker{
    background:var(--ticker);
    color:var(--chrome-faint);
    border-bottom:1px solid rgba(231,236,243,0.06);
    overflow-x:auto;
    white-space:nowrap;
    -ms-overflow-style:none;scrollbar-width:none;
  }
  .ticker::-webkit-scrollbar{display:none;}
  .ticker-inner{
    display:flex;gap:34px;
    padding:7px 24px;
    font-size:11.5px;
    letter-spacing:0.02em;
    max-width:1120px;margin:0 auto;
  }
  .ticker b{color:var(--accent);font-weight:700;}

  .topbar{
    background:var(--chrome);
    border-bottom:1px solid rgba(231,236,243,0.08);
  }
  .topbar-inner{
    max-width:1120px;margin:0 auto;
    padding:20px 24px;
    display:flex;align-items:center;justify-content:space-between;gap:24px;
    flex-wrap:wrap;
  }
  .wordmark{
    font-size:1.32rem;font-weight:800;letter-spacing:-0.02em;
    color:var(--chrome-ink);
  }
  .wordmark .o{color:var(--accent);}
  .wordmark .cursor{color:var(--accent);animation:blink 1.1s steps(1) infinite;}
  @keyframes blink{50%{opacity:0;}}
  @media (prefers-reduced-motion:reduce){.wordmark .cursor{animation:none;}}

  nav.site{
    display:flex;gap:26px;flex-wrap:wrap;
    font-size:12.5px;color:var(--chrome-faint);
  }
  nav.site a,nav.site span{color:var(--chrome-faint);text-decoration:none;}
  nav.site a:hover{color:var(--accent);}

  /* ---------------- hero ---------------- */
  .hero{
    background:var(--chrome);
    color:var(--chrome-ink);
    padding:44px 24px 8px;
    text-align:center;
  }
  .hero-inner{max-width:720px;margin:0 auto;}

  .cat{
    display:flex;align-items:center;gap:10px;
    width:100%;
    justify-content:center;
    border:1px solid var(--indigo);
    background:rgba(91,91,214,0.12);
    border-radius:8px;
    padding:11px 16px;
    font-size:12.5px;
    letter-spacing:0.05em;
    color:var(--chrome-ink);
    margin:0 0 26px;
  }
  .cat .dot{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none;}

  h1.title{
    font-size:clamp(1.9rem, 5.4vw, 2.9rem);
    font-weight:800;
    line-height:1.12;
    letter-spacing:-0.015em;
    margin:0 0 30px;
    text-wrap:balance;
    color:var(--chrome-ink);
  }

  .hero-media{
    background:var(--chrome);
    padding:0 24px 44px;
  }
  .hero-media-inner{max-width:720px;margin:0 auto;}

  .fade{
    height:64px;
    background:linear-gradient(var(--chrome), var(--ground));
  }

  /* ---- CSS faceplate ---- */
  .unit{
    background:linear-gradient(175deg, #3a2a1b 0%, #241a10 72%);
    border:1px solid rgba(0,0,0,0.4);
    border-radius:12px;
    padding:18px 18px 20px;
    box-shadow:0 22px 46px -20px rgba(0,0,0,0.6), inset 0 1px 0 rgba(255,255,255,0.06);
  }
  .unit-top{
    display:flex;align-items:center;justify-content:space-between;gap:16px;
    margin-bottom:16px;padding-bottom:14px;
    border-bottom:1px solid rgba(231,220,196,0.14);
  }
  .unit-name{
    font-size:11px;letter-spacing:0.16em;text-transform:uppercase;
    color:#9a8b73;
  }
  .knobs{display:flex;gap:18px;}
  .knob{
    width:38px;height:38px;border-radius:50%;
    background:radial-gradient(circle at 38% 32%, #6b5033, #241a10 72%);
    border:1px solid rgba(0,0,0,0.45);position:relative;
    box-shadow:inset 0 1px 0 rgba(255,255,255,0.08);
  }
  .knob::after{
    content:"";position:absolute;left:50%;top:5px;
    width:2px;height:12px;border-radius:2px;background:var(--accent);
    transform-origin:50% 14px;
  }
  .knob.k1::after{transform:translateX(-50%) rotate(-42deg);}
  .knob.k2::after{transform:translateX(-50%) rotate(58deg);}

  .seq{position:relative;display:grid;gap:6px;}
  .seq-row{display:grid;grid-template-columns:52px repeat(8,1fr);align-items:center;gap:5px;}
  .seq-row .lbl{
    font-size:9.5px;letter-spacing:0.05em;text-transform:uppercase;
    color:#9a8b73;text-align:right;padding-right:4px;
  }
  .pad{
    aspect-ratio:1/1;border-radius:4px;background:#3b2c1c;
    border:1px solid rgba(0,0,0,0.35);box-shadow:inset 0 1px 0 rgba(255,255,255,0.05);
  }
  .pad.on{background:var(--accent);box-shadow:0 0 9px rgba(245,158,44,0.55);}
  .pad.accent{background:#d9a03c;box-shadow:0 0 9px rgba(217,160,60,0.5);}

  .sweep{
    position:absolute;top:0;bottom:0;
    left:calc(52px + 5px);
    width:calc((100% - 52px - 5px)/8 - 5px);
    border-radius:5px;
    background:rgba(231,220,196,0.16);
    box-shadow:0 0 0 1px rgba(231,220,196,0.22);
    animation:sweep 2.6s steps(8,end) infinite;
    pointer-events:none;
  }
  @keyframes sweep{
    from{transform:translateX(0);}
    to{transform:translateX(calc((100% + 5px) * 8));}
  }
  @media (prefers-reduced-motion:reduce){
    .sweep{animation:none;opacity:0.4;}
    .playhead{transition:none;}
  }

  /* ---------------- article ---------------- */
  .wrap{max-width:720px;margin:0 auto;padding:8px 24px 110px;}

  .byline{
    display:flex;flex-wrap:wrap;gap:8px;
    font-size:11px;color:var(--ink-faint);
    margin:6px 0 4px;
  }
  .byline .pill{border:1px solid var(--rule-strong);border-radius:6px;padding:4px 10px;white-space:nowrap;}
  .byline a.pill{color:var(--ink-soft);text-decoration:none;}
  .byline a.pill:hover{border-color:var(--accent);color:var(--accent);}
  .byline .pill.tick{border-color:color-mix(in srgb, var(--good) 55%, transparent);color:var(--good);}

  section{padding:44px 0;border-bottom:1px solid var(--rule);}
  section:last-of-type{border-bottom:none;}

  .kicker{
    font-size:11.5px;letter-spacing:0.06em;text-transform:uppercase;
    color:var(--ink-faint);margin:0 0 12px;
    display:flex;align-items:center;gap:9px;
  }
  .kicker .sq{width:6px;height:6px;background:var(--accent);flex:none;}

  h2{
    font-size:1.5rem;font-weight:800;line-height:1.16;
    letter-spacing:-0.01em;margin:0 0 18px;text-wrap:balance;color:var(--ink);
  }
  h3{
    font-size:1.06rem;font-weight:700;margin:30px 0 10px;color:var(--ink);
  }
  p{margin:0 0 18px;max-width:72ch;}
  .lede{color:var(--ink-soft);}
  strong{color:var(--ink);font-weight:700;}
  em{font-style:italic;}

  ul.list,ol.list{margin:0 0 18px;padding-left:1.3em;max-width:68ch;}
  ul.list li,ol.list li{margin-bottom:10px;}
  ul.list li::marker{color:var(--accent);}
  ol.list li::marker{color:var(--ink-faint);}

  code{
    font-size:0.92em;
    background:color-mix(in srgb, var(--ink) 8%, transparent);
    border:1px solid var(--rule);
    padding:0 4px;border-radius:3px;
  }

  .spec{
    border:1px solid var(--rule-strong);border-radius:8px;overflow:hidden;
    margin:22px 0 6px;background:var(--surface);
  }
  .spec-row{
    display:grid;grid-template-columns:150px 1fr;gap:16px;
    padding:11px 16px;border-bottom:1px solid var(--rule);
    font-size:0.86rem;line-height:1.5;
  }
  .spec-row:last-child{border-bottom:none;}
  .spec-row dt{color:var(--ink-faint);margin:0;}
  .spec-row dd{margin:0;color:var(--ink);}

  .stats{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
    gap:1px;background:var(--rule-strong);
    border:1px solid var(--rule-strong);border-radius:8px;overflow:hidden;
    margin:24px 0 6px;
  }
  .stat{background:var(--surface);padding:16px 12px;text-align:center;}
  .stat .n{
    font-weight:800;font-size:1.5rem;color:var(--accent);display:block;
    font-variant-numeric:tabular-nums;letter-spacing:-0.02em;
  }
  .stat .k{font-size:10px;letter-spacing:0.05em;text-transform:uppercase;color:var(--ink-faint);}

  .cards{display:grid;gap:12px;margin:20px 0 6px;}
  .card{
    border:1px solid var(--rule);border-left:3px solid var(--accent);
    border-radius:6px;padding:14px 16px;background:var(--surface);
  }
  .card .loc{font-size:10.5px;letter-spacing:0.03em;color:var(--accent);margin-bottom:5px;}
  .card h4{margin:0 0 4px;font-size:0.96rem;font-weight:700;color:var(--ink);}
  .card p{margin:0;font-size:0.86rem;color:var(--ink-soft);max-width:none;}
  .card.decided{border-left-color:var(--indigo);}
  .card.decided .loc{color:var(--indigo);}

  .readout{
    background:var(--readout-bg);border-radius:8px;margin:20px 0 24px;overflow:hidden;
    box-shadow:0 14px 32px -18px var(--shadow);
    border:1px solid rgba(231,236,243,0.06);
  }
  .readout .tab{
    font-size:10px;letter-spacing:0.09em;text-transform:uppercase;
    color:var(--readout-faint);padding:10px 18px;
    border-bottom:1px solid rgba(231,236,243,0.08);
  }
  .readout pre{
    margin:0;padding:16px 18px;overflow-x:auto;
    font-size:12.5px;line-height:1.62;color:var(--readout-ink);white-space:pre;
  }
  .readout .kw{color:var(--readout-kw);}
  .readout .str{color:var(--readout-str);}
  .readout .fn{color:var(--readout-fn);}
  .readout .cm{color:var(--readout-cm);font-style:italic;}

  blockquote{
    margin:24px 0;padding:8px 0 8px 18px;
    border-left:3px solid var(--accent);
    font-size:1.08rem;font-weight:500;line-height:1.4;
    color:var(--ink);max-width:58ch;
  }

  .aside{
    background:color-mix(in srgb, var(--indigo) 8%, var(--surface));
    border:1px solid var(--rule);border-left:3px solid var(--indigo);
    border-radius:6px;padding:16px 18px;margin:22px 0;
  }
  .aside p{margin:0;font-size:0.9rem;color:var(--ink-soft);}
  .aside p+p{margin-top:12px;}
  .aside .tag{
    font-size:10px;letter-spacing:0.09em;text-transform:uppercase;
    color:var(--indigo);display:block;margin-bottom:8px;
  }

  figure.shot{margin:26px 0;}
  figure.shot img{
    display:block;width:100%;height:auto;
    border:1px solid var(--rule-strong);border-radius:8px;background:var(--surface);
  }
  figure.shot figcaption{
    font-size:11px;letter-spacing:0.02em;color:var(--ink-faint);margin-top:10px;
  }

  footer{
    background:var(--chrome);color:var(--chrome-faint);
    padding:28px 24px;font-size:11.5px;
  }
  .footer-inner{
    max-width:720px;margin:0 auto;
    display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;
  }

  @media (max-width:560px){
    .topbar-inner{padding:16px 20px;}
    .hero{padding:34px 20px 8px;}
    .hero-media{padding:0 20px 34px;}
    .wrap{padding:8px 20px 80px;}
    .spec-row{grid-template-columns:1fr;gap:3px;}
    .seq-row{grid-template-columns:40px repeat(8,1fr);}
    .sweep{left:calc(40px + 5px);width:calc((100% - 40px - 5px)/8 - 5px);}
  }/* End custom CSS */