
    :root {
      --bg: #efe7d6;
      --panel: #f7f1e6;
      --ink: #1d1b17;
      --crimson: #a8112a;
      --crimson-deep: #7c0d1f;
      --interlude: #3a352d;
      --muted: #8a8175;
      --muted-dark: #5a5347;
      --rule: #e2d7c2;
      --term-bg: #141210;
      --term-panel: #1c1916;
      --term-ink: #e9e0cd;
      --term-mut: #8d8473;
      --term-crim: #e0577a;
      --serif: 'PT Serif', Georgia, 'Times New Roman', serif;
      --disp: 'Archivo', 'Helvetica Neue', Arial, sans-serif;
      --mono: 'JetBrains Mono', ui-monospace, Menlo, monospace;
      --col: 680px;
    }

    * {
      box-sizing: border-box
    }

    html {
      scroll-behavior: smooth
    }

    body {
      margin: 0;
      background: var(--bg);
      color: var(--ink);
      font-family: var(--serif);
      font-size: 19px;
      line-height: 1.62;
      -webkit-font-smoothing: antialiased;
      text-rendering: optimizeLegibility;
      overflow-x: hidden
    }

    a {
      color: inherit
    }

    .hl {
      color: var(--crimson)
    }

    em {
      font-style: italic
    }

    strong {
      font-weight: 700
    }

    #progress {
      position: fixed;
      top: 0;
      left: 0;
      height: 3px;
      width: 0;
      background: var(--crimson);
      z-index: 60;
      transition: width .1s linear
    }

    .topbar {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      height: 60px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      padding: 0 24px;
      z-index: 50;
      background: rgba(239, 231, 214, .86);
      backdrop-filter: blur(8px);
      border-bottom: 1px solid transparent;
      transition: border-color .3s
    }

    .topbar.scrolled {
      border-bottom-color: var(--rule)
    }

    .brand {
      font-family: var(--disp);
      font-weight: 800;
      font-size: 13px;
      letter-spacing: .14em;
      text-transform: uppercase;
      display: flex;
      align-items: center;
      gap: 9px;
      text-decoration: none
    }

    .brand .sq {
      width: 11px;
      height: 11px;
      background: var(--crimson);
      display: inline-block;
      transform: translateY(0)
    }

    .brand small {
      color: var(--muted);
      font-weight: 600;
      letter-spacing: .14em
    }

    .pdf-btn {
      font-family: var(--disp);
      font-weight: 700;
      font-size: 12px;
      letter-spacing: .08em;
      text-transform: uppercase;
      text-decoration: none;
      border: 1px solid var(--rule);
      border-radius: 7px;
      padding: 8px 14px;
      color: var(--ink);
      display: inline-flex;
      align-items: center;
      gap: 7px;
      background: var(--panel);
      transition: .2s
    }

    .pdf-btn:hover {
      border-color: var(--crimson);
      color: var(--crimson)
    }

    .topbar-actions {
      display: flex;
      align-items: center;
      gap: 10px
    }

    .audit-cta {
      background: var(--crimson);
      color: #f6efe2;
      font-family: var(--disp);
      font-weight: 800;
      font-size: 12.5px;
      letter-spacing: .08em;
      text-transform: uppercase;
      padding: 9px 16px;
      border: 0;
      border-radius: 8px;
      cursor: pointer;
      margin-left: 6px;
      white-space: nowrap;
      transition: background .2s, transform .15s
    }

    .audit-cta:hover {
      background: #8e0e23;
      transform: translateY(-1px)
    }

    body.agent .audit-cta {
      display: none
    }

    @media (max-width:560px) {
      .topbar-actions .pdf-btn {
        display: none
      }

      .audit-cta {
        padding: 8px 12px;
        margin-left: 0
      }

      .brand small {
        display: none
      }

      .brand {
        font-size: 12px;
        letter-spacing: .1em
      }
    }

    .hero {
      max-width: var(--col);
      margin: 0 auto;
      padding: 148px 24px 40px;
      text-align: center
    }

    .hero .kick {
      font-family: var(--disp);
      color: var(--crimson);
      font-weight: 800;
      letter-spacing: .22em;
      text-transform: uppercase;
      font-size: 13px;
      margin-bottom: 26px
    }

    .hero h1 {
      font-family: 'Playfair Display', Georgia, serif;
      font-stretch: normal;
      font-weight: 700;
      line-height: 1.04;
      letter-spacing: -.01em;
      font-size: clamp(44px, 8vw, 84px);
      margin: 0 0 8px
    }

    .hero h1 .hl {
      color: var(--crimson)
    }

    .hero .sub {
      font-style: italic;
      color: var(--interlude);
      font-size: 21px;
      line-height: 1.5;
      max-width: 30em;
      margin: 26px auto 30px
    }

    .hero .by {
      font-family: var(--disp);
      font-weight: 800;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-size: 14px
    }

    .hero .free {
      font-family: var(--disp);
      font-weight: 700;
      letter-spacing: .16em;
      text-transform: uppercase;
      font-size: 11.5px;
      color: var(--crimson);
      margin-top: 10px
    }

    .hero .rule {
      width: 64px;
      height: 3px;
      background: var(--crimson);
      margin: 30px auto 0
    }

    .reading {
      max-width: var(--col);
      margin: 0 auto;
      padding: 24px 24px 120px
    }

    .sec {
      padding: 30px 0 6px;
      scroll-margin-top: 86px
    }

    .sec p {
      margin: 0 0 20px
    }

    .sec-h {
      font-family: 'Playfair Display', Georgia, serif;
      font-stretch: normal;
      color: var(--crimson);
      font-weight: 700;
      line-height: 1.14;
      letter-spacing: -.005em;
      font-size: clamp(27px, 4.4vw, 38px);
      margin: 6px 0 22px
    }

    .sec-h .hl {
      color: var(--crimson)
    }

    .sub-h {
      font-family: var(--disp);
      font-stretch: 80%;
      color: var(--ink);
      font-weight: 800;
      font-size: 23px;
      line-height: 1.2;
      margin: 34px 0 16px;
      letter-spacing: -.005em
    }

    .leadin {
      font-weight: 700;
      color: var(--ink);
      margin: 26px 0 6px;
      line-height: 1.45
    }

    .actdiv {
      padding-top: 66px;
      margin-top: 20px
    }

    .act-h {
      font-family: var(--disp);
      font-stretch: 85%;
      color: var(--crimson);
      font-weight: 900;
      letter-spacing: .14em;
      text-transform: uppercase;
      font-size: clamp(15px, 2.4vw, 19px);
      text-align: center;
      padding-top: 30px;
      border-top: 2px solid var(--rule)
    }

    .actlead {
      font-family: var(--disp);
      font-stretch: 80%;
      font-weight: 800;
      color: var(--ink);
      text-align: center;
      font-size: clamp(24px, 4.4vw, 38px);
      line-height: 1.12;
      letter-spacing: -.01em;
      max-width: 16em;
      margin: 14px auto 30px
    }

    .actlead .hl {
      color: var(--crimson)
    }

    .nav-act .nav-label {
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .08em;
      font-size: 11.5px;
      color: var(--ink)
    }

    .nav-act .nav-dot {
      background: var(--crimson);
      border-color: var(--crimson)
    }

    .kicker {
      font-family: var(--disp);
      color: var(--crimson);
      font-weight: 800;
      letter-spacing: .2em;
      text-transform: uppercase;
      font-size: 15.5px;
      text-align: center;
      margin: 40px 0 14px;
      position: relative
    }

    .kicker::before {
      content: "";
      display: block;
      width: 46px;
      height: 3px;
      background: var(--crimson);
      margin: 0 auto 18px
    }

    .interlude {
      font-style: italic;
      color: var(--interlude);
      text-align: center;
      font-size: 21px;
      line-height: 1.5;
      max-width: 33em;
      margin: 0 auto 30px
    }

    .axiom {
      font-family: var(--serif);
      font-weight: 700;
      font-size: 21px;
      line-height: 1.46;
      color: var(--ink);
      border-left: 3px solid var(--crimson);
      background: rgba(168, 17, 42, .05);
      border-radius: 0 10px 10px 0;
      padding: 18px 24px;
      margin: 26px 0
    }

    .axiom em {
      font-style: italic
    }

    .axiom .hl {
      color: var(--crimson)
    }

    .loop-aside {
      font-family: var(--serif);
      font-weight: 700;
      font-size: 20px;
      line-height: 1.5;
      color: var(--ink);
      border-left: 3px solid var(--crimson);
      background: rgba(168, 17, 42, .05);
      border-radius: 0 10px 10px 0;
      padding: 18px 24px;
      margin: 26px 0
    }

    .loop-aside .hl {
      color: var(--crimson)
    }

    .list {
      margin: 10px 0 24px;
      padding-left: 26px;
      list-style: square
    }

    .list li {
      margin: 0 0 13px;
      line-height: 1.55;
      padding-left: 6px
    }

    .list li::marker {
      color: var(--crimson)
    }

    .list li strong {
      font-weight: 700
    }

    .note {
      font-size: 15px;
      line-height: 1.55;
      color: var(--muted);
      margin: 0 0 12px;
      padding-left: 24px;
      text-indent: -24px
    }

    .note-first {
      border-top: 1px solid var(--rule);
      padding-top: 20px;
      margin-top: 22px
    }

    .note strong {
      color: var(--ink);
      font-weight: 700
    }

    .note .hl {
      color: var(--crimson)
    }

    sup.fn {
      font-size: .62em;
      font-weight: 700;
      color: var(--crimson);
      vertical-align: super;
      line-height: 0;
      margin-left: 1px
    }

    .fig {
      margin: 34px 0 30px
    }

    .fig-frame {
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 16px 40px -22px rgba(40, 20, 10, .45);
      border: 1px solid var(--rule);
      background: var(--panel)
    }

    .fig img {
      display: block;
      width: 100%;
      height: auto
    }

    .fig figcaption {
      text-align: center;
      font-style: italic;
      color: var(--muted);
      font-size: 15px;
      margin-top: 14px
    }

    .reveal {
      opacity: 0;
      transform: translateY(20px);
      transition: opacity .8s cubic-bezier(.2, .7, .2, 1), transform .8s cubic-bezier(.2, .7, .2, 1)
    }

    .reveal.in {
      opacity: 1;
      transform: none
    }

    .fig.reveal {
      transform: translateY(30px) scale(.985)
    }

    .fig.reveal.in {
      transform: none
    }

    @media (prefers-reduced-motion:reduce) {
      .reveal {
        opacity: 1;
        transform: none;
        transition: none
      }
    }

    .rail {
      position: fixed;
      top: 50%;
      transform: translateY(-50%);
      left: max(20px, calc((100vw - var(--col))/2 - 292px));
      width: 248px;
      max-height: 80vh;
      overflow-y: auto;
      overflow-x: hidden;
      z-index: 40;
      padding-right: 12px;
      scrollbar-width: thin;
      scrollbar-color: rgba(168, 17, 42, .32) transparent;
      -webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
      mask-image: linear-gradient(to bottom, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%)
    }

    .rail::-webkit-scrollbar {
      width: 6px
    }

    .rail::-webkit-scrollbar-track {
      background: transparent;
      margin: 8px 0
    }

    .rail::-webkit-scrollbar-thumb {
      background: rgba(168, 17, 42, .28);
      border-radius: 99px
    }

    .rail:hover::-webkit-scrollbar-thumb {
      background: rgba(168, 17, 42, .5)
    }

    .nav-link {
      display: flex;
      align-items: flex-start;
      gap: 13px;
      text-decoration: none;
      color: var(--muted);
      padding: 7px 0;
      font-size: 13.5px;
      line-height: 1.3;
      position: relative
    }

    .nav-link::before {
      content: "";
      position: absolute;
      left: 5px;
      top: 24px;
      bottom: -7px;
      width: 1px;
      background: var(--rule)
    }

    .nav-link:last-child::before {
      display: none
    }

    .nav-dot {
      flex: 0 0 11px;
      width: 11px;
      height: 11px;
      border-radius: 50%;
      border: 1.5px solid var(--rule);
      background: var(--bg);
      margin-top: 3px;
      transition: .25s;
      z-index: 1
    }

    .nav-label {
      font-family: var(--disp);
      font-weight: 600;
      letter-spacing: .01em;
      transition: .2s
    }

    .nav-link:hover {
      color: var(--ink)
    }

    .nav-link.active {
      color: var(--ink)
    }

    .nav-link.active .nav-dot {
      background: var(--crimson);
      border-color: var(--crimson)
    }

    .nav-link.active .nav-label {
      font-weight: 800
    }

    .nav-link.done .nav-dot {
      background: var(--muted);
      border-color: var(--muted)
    }

    @media (max-width:1320px) {
      .rail {
        display: none
      }
    }

    .footer {
      max-width: var(--col);
      margin: 0 auto;
      padding: 30px 24px 120px;
      text-align: center;
      border-top: 1px solid var(--rule)
    }

    .footer .end {
      font-family: var(--disp);
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .04em;
      font-size: clamp(26px, 4vw, 38px);
      color: var(--crimson);
      line-height: 1.1;
      margin: 18px 0 10px
    }

    .footer small {
      color: var(--muted-dark);
      font-size: 13px;
      letter-spacing: .04em
    }

    .toggle {
      position: fixed;
      bottom: 22px;
      left: 50%;
      transform: translateX(-50%);
      z-index: 55;
      background: #15130f;
      border: 1px solid rgba(225, 170, 71, .30);
      border-radius: 999px;
      padding: 5px;
      display: flex;
      gap: 3px;
      box-shadow: 0 10px 30px -8px rgba(0, 0, 0, .5)
    }

    .toggle button {
      font-family: var(--disp);
      font-weight: 700;
      font-size: 13px;
      letter-spacing: .02em;
      border: 1px solid rgba(225, 170, 71, .45);
      cursor: pointer;
      background: transparent;
      color: #e1aa47;
      padding: 9px 18px;
      border-radius: 999px;
      display: flex;
      align-items: center;
      gap: 7px;
      transition: .2s
    }

    .toggle button:not(.on):hover,
    .toggle button:not(.on):focus-visible {
      background: rgba(226, 103, 130, .20);
      border-color: #e26782;
      color: #f4e6d6
    }

    .toggle button.on {
      background: #e1aa47;
      border-color: #e1aa47;
      color: #15130f
    }

    .toggle button .ic {
      width: 15px;
      height: 15px;
      display: inline-block
    }

    #view-agent {
      display: none
    }

    body.agent {
      background: var(--term-bg)
    }

    body.agent .topbar {
      background: rgba(20, 18, 16, .86);
      border-bottom-color: #2a2620
    }

    body.agent .brand {
      color: var(--term-ink)
    }

    body.agent .brand .sq {
      background: var(--term-crim)
    }

    body.agent .brand small {
      color: var(--term-mut)
    }

    .agent-wrap {
      max-width: 760px;
      margin: 0 auto;
      padding: 120px 24px 140px;
      font-family: var(--mono);
      color: var(--term-ink)
    }

    .agent-cmd {
      color: var(--term-mut);
      font-size: 14px;
      margin-bottom: 22px
    }

    .agent-cmd .pr {
      color: var(--term-crim)
    }

    .agent-h1 {
      font-size: 24px;
      font-weight: 700;
      margin: 0 0 6px;
      color: #fff
    }

    .agent-h1 .hash {
      color: var(--term-crim);
      margin-right: 8px
    }

    .agent-meta {
      color: var(--term-mut);
      font-size: 13.5px;
      margin-bottom: 22px
    }

    .agent-meta .pct {
      color: var(--term-crim)
    }

    .agent-actions {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-bottom: 34px
    }

    .agent-btn {
      font-family: var(--mono);
      font-size: 12.5px;
      color: var(--term-ink);
      background: #211d19;
      border: 1px solid #342e28;
      border-radius: 7px;
      padding: 9px 14px;
      cursor: pointer;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      transition: .18s
    }

    .agent-btn:hover {
      border-color: var(--term-crim);
      color: #fff
    }

    .agent-sec {
      margin: 30px 0
    }

    .agent-sec .lbl {
      color: var(--term-mut);
      font-size: 14px;
      margin-bottom: 14px
    }

    .agent-sec .lbl .hash {
      color: var(--term-crim);
      margin-right: 8px
    }

    .agent-rule {
      border: 0;
      border-top: 1px dashed #342e28;
      margin: 30px 0
    }

    .agent-p {
      font-size: 14.5px;
      line-height: 1.75;
      color: #cfc6b4;
      margin: 0 0 14px
    }

    .agent-p b {
      color: #fff;
      font-weight: 700
    }

    .code {
      background: #100e0c;
      border: 1px solid #2a2620;
      border-radius: 10px;
      padding: 16px 18px;
      position: relative;
      margin: 8px 0 6px
    }

    .code .topline {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 12px
    }

    .code .topline .name {
      color: var(--term-mut);
      font-size: 12.5px
    }

    .code pre {
      margin: 0;
      white-space: pre-wrap;
      word-break: break-word;
      font-size: 13px;
      line-height: 1.7;
      color: #cfc6b4
    }

    .prompts {
      display: grid;
      gap: 12px
    }

    .pcard {
      background: var(--term-panel);
      border: 1px solid #2c2620;
      border-radius: 10px;
      padding: 16px 18px;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 16px
    }

    .pcard h4 {
      margin: 0 0 5px;
      font-size: 14.5px;
      color: #fff;
      font-weight: 700
    }

    .pcard p {
      margin: 0;
      font-size: 13px;
      color: var(--term-mut);
      line-height: 1.5;
      max-width: 46ch
    }

    .copied {
      color: #79c08a !important;
      border-color: #3a5a40 !important
    }

    @media (max-width:560px) {
      .pcard {
        flex-direction: column
      }

      .hero h1 {
        font-size: 46px
      }
    }

    .fig.interactive {
      opacity: 1 !important;
      transform: none !important
    }

    .dgm-wrap {
      border-radius: 12px;
      overflow: hidden;
      box-shadow: 0 16px 40px -22px rgba(40, 20, 10, .45);
      background: var(--panel)
    }

    .dgm {
      display: block;
      width: 100%;
      height: auto;
      font-family: var(--disp)
    }

    .dgm text {
      font-family: var(--disp)
    }

    .dgm .serif {
      font-family: var(--serif)
    }

    .dgm .d-fade {
      opacity: 0;
      transform: translateY(12px);
      transition: opacity .7s ease var(--d, 0s), transform .7s ease var(--d, 0s)
    }

    .dgm .d-op {
      opacity: 0;
      transition: opacity .6s ease var(--d, 0s)
    }

    .dgm .d-pop {
      opacity: 0;
      transform: scale(.82);
      transform-box: fill-box;
      transform-origin: center;
      transition: opacity .5s ease var(--d, 0s), transform .55s cubic-bezier(.2, 1.35, .45, 1) var(--d, 0s)
    }

    .dgm .d-draw {
      stroke-dasharray: 1;
      stroke-dashoffset: 1;
      transition: stroke-dashoffset 1.1s ease var(--d, 0s)
    }

    .dgm .d-grow {
      transform: scaleX(0);
      transform-box: fill-box;
      transform-origin: left center;
      transition: transform .9s cubic-bezier(.3, 1, .3, 1) var(--d, 0s)
    }

    .dgm .d-rise {
      transform: scaleY(0);
      transform-box: fill-box;
      transform-origin: bottom center;
      transition: transform .9s cubic-bezier(.3, 1, .3, 1) var(--d, 0s)
    }

    .fig.in .dgm .d-fade {
      opacity: 1;
      transform: none
    }

    .fig.in .dgm .d-op {
      opacity: 1
    }

    .fig.in .dgm .d-pop {
      opacity: 1;
      transform: none
    }

    .fig.in .dgm .d-draw {
      stroke-dashoffset: 0
    }

    .fig.in .dgm .d-grow,
    .fig.in .dgm .d-rise {
      transform: none
    }

    @media (prefers-reduced-motion:reduce) {

      .dgm .d-fade,
      .dgm .d-pop,
      .dgm .d-draw,
      .dgm .d-grow,
      .dgm .d-rise {
        transition: none;
        opacity: 1;
        transform: none;
        stroke-dashoffset: 0
      }
    }

    .dgm .hand {
      cursor: default
    }

    .dgm .hand .card {
      transition: transform .25s cubic-bezier(.2, 1.2, .4, 1)
    }

    .dgm .hand:hover .card {
      transform: translateY(-9px)
    }

    .dgm .dot {
      cursor: pointer;
      transition: r .2s ease, filter .2s ease
    }

    .dgm .dot:hover {
      filter: drop-shadow(0 0 5px rgba(168, 17, 42, .6))
    }

    .dgm .glow {
      transition: opacity .25s ease
    }

    .dgm .pulse {
      transform-box: fill-box;
      transform-origin: center;
      animation: dgmpulse 2.4s ease-in-out infinite
    }

    .fig:not(.in) .dgm .pulse {
      animation: none
    }

    @keyframes dgmpulse {

      0%,
      100% {
        opacity: .55
      }

      50% {
        opacity: 1
      }
    }

    .plib {
      margin: 22px 0 18px;
      border: 1px solid #2c2620;
      border-radius: 13px;
      background: #141110;
      padding: 16px 18px
    }

    .plib-h {
      font-family: var(--mono);
      font-size: 13px;
      color: #fff;
      font-weight: 700;
      margin-bottom: 5px
    }

    .plib-sub {
      font-family: var(--serif);
      font-size: 13px;
      color: #8a8175;
      line-height: 1.55;
      margin-bottom: 13px
    }

    .prow {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding: 10px 0;
      border-top: 1px solid #241f1a
    }

    .prow .pt {
      font-family: var(--disp);
      font-weight: 700;
      font-size: 13.5px;
      color: #e9e0cd
    }

    .prow .pd {
      font-family: var(--serif);
      font-size: 12.5px;
      color: #8a8175;
      line-height: 1.5;
      margin-top: 2px
    }

    .prow .pcopy {
      flex: 0 0 auto;
      font-family: var(--mono);
      font-size: 11.5px;
      border: 1px solid #3a332b;
      background: #1d1913;
      color: #cfc6b4;
      border-radius: 8px;
      padding: 7px 11px;
      cursor: pointer
    }

    .prow .pcopy:hover {
      border-color: #F5A623;
      color: #F5A623
    }

    .agent-steps {
      display: grid;
      gap: 9px;
      margin: 4px 0 24px
    }

    .agent-steps .step {
      font-family: var(--mono);
      font-size: 13.5px;
      color: #cfc6b4;
      line-height: 1.55;
      display: flex;
      gap: 11px;
      align-items: flex-start
    }

    .agent-steps .step .n {
      flex: 0 0 22px;
      height: 22px;
      border-radius: 50%;
      background: #231f1b;
      color: var(--term-crim);
      font-weight: 700;
      font-size: 12px;
      display: flex;
      align-items: center;
      justify-content: center
    }

    .agent-steps .step b {
      color: #fff;
      font-weight: 700
    }

    .chat {
      border: 1px solid #2c2620;
      border-radius: 13px;
      background: #161310;
      overflow: hidden;
      margin: 6px 0 16px
    }

    .chat-log {
      padding: 18px;
      display: flex;
      flex-direction: column;
      gap: 13px
    }

    .msg {
      display: flex
    }

    .msg.user {
      justify-content: flex-end
    }

    .msg .bubble {
      max-width: 88%;
      font-family: var(--serif);
      font-size: 15px;
      line-height: 1.62;
      padding: 11px 15px;
      border-radius: 13px
    }

    .msg.agent .bubble {
      background: #211d19;
      color: #e9e0cd;
      border: 1px solid #322c25;
      border-top-left-radius: 3px
    }

    .msg.user .bubble {
      background: var(--term-crim);
      color: #fff;
      border-bottom-right-radius: 3px;
      font-family: var(--disp);
      font-size: 14px;
      font-weight: 600
    }

    .msg .bubble p {
      margin: 0 0 8px
    }

    .msg .bubble p:last-child {
      margin: 0
    }

    .msg .bubble strong {
      color: #fff;
      font-weight: 700
    }

    .msg .bubble code {
      font-family: var(--mono);
      font-size: 12.5px;
      background: #100e0c;
      padding: 1px 5px;
      border-radius: 4px
    }

    .msg .bubble .codeblock {
      font-family: var(--mono);
      font-size: 12.5px;
      line-height: 1.65;
      white-space: pre-wrap;
      background: #0d0b09;
      border: 1px solid #2a2620;
      border-radius: 9px;
      padding: 13px 15px;
      margin: 9px 0;
      color: #cfc6b4;
      overflow-x: auto
    }

    .msg .bubble ul {
      margin: 6px 0;
      padding-left: 20px
    }

    .msg .bubble li {
      margin: 3px 0
    }

    .typing {
      display: inline-flex;
      gap: 5px;
      align-items: center;
      padding: 3px 0
    }

    .typing i {
      width: 7px;
      height: 7px;
      border-radius: 50%;
      background: var(--term-mut);
      animation: tblink 1.2s infinite
    }

    .typing i:nth-child(2) {
      animation-delay: .2s
    }

    .typing i:nth-child(3) {
      animation-delay: .4s
    }

    @keyframes tblink {

      0%,
      80%,
      100% {
        opacity: .3
      }

      40% {
        opacity: 1
      }
    }

    .chips {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      padding: 0 18px 14px
    }

    .chip {
      font-family: var(--mono);
      font-size: 12px;
      color: var(--term-mut);
      background: #1c1916;
      border: 1px solid #322c25;
      border-radius: 999px;
      padding: 6px 13px;
      cursor: pointer;
      transition: .18s
    }

    .chip:hover {
      border-color: var(--term-crim);
      color: #fff
    }

    .chat-form {
      display: flex;
      gap: 9px;
      padding: 14px 18px;
      border-top: 1px solid #2c2620;
      background: #1a1714
    }

    .chat-form input {
      flex: 1;
      min-width: 0;
      font-family: var(--serif);
      font-size: 15px;
      background: #100e0c;
      border: 1px solid #322c25;
      border-radius: 10px;
      padding: 11px 14px;
      color: #e9e0cd;
      outline: none
    }

    .chat-form input:focus {
      border-color: var(--term-crim)
    }

    .chat-form button {
      font-family: var(--mono);
      font-size: 13px;
      font-weight: 700;
      color: #fff;
      background: var(--term-crim);
      border: 0;
      border-radius: 10px;
      padding: 0 18px;
      cursor: pointer;
      transition: .18s;
      white-space: nowrap
    }

    .chat-form button:disabled {
      opacity: .45;
      cursor: default
    }

    .chat-note {
      padding: 0 18px 15px;
      font-family: var(--mono);
      font-size: 11.5px;
      color: var(--term-mut)
    }

    .chat-note.warn {
      color: #e0a657
    }

    .optin {
      font-family: var(--mono);
      font-size: 13px;
      color: var(--term-mut);
      text-align: center;
      margin: 4px 0 0
    }

    .optin a {
      color: var(--term-crim);
      text-decoration: underline
    }

    .optin small {
      display: block;
      color: #6b6358;
      font-size: 11px;
      margin-top: 5px
    }

    .chat-form.hidden {
      display: none
    }

    .qchips {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
      margin: 2px 0 6px
    }

    .optin-form {
      display: flex;
      flex-direction: column;
      gap: 8px;
      margin-top: 11px
    }

    .optin-form input {
      flex: 1;
      min-width: 0;
      font-family: var(--serif);
      font-size: 14.5px;
      background: #100e0c;
      border: 1px solid #322c25;
      border-radius: 9px;
      padding: 10px 13px;
      color: #e9e0cd;
      outline: none
    }

    .optin-form input:focus {
      border-color: var(--term-crim)
    }

    .optin-form button {
      font-family: var(--mono);
      font-size: 12.5px;
      font-weight: 700;
      color: #fff;
      background: var(--term-crim);
      border: 0;
      border-radius: 9px;
      padding: 12px 16px;
      cursor: pointer;
      white-space: nowrap
    }

    .optin-form button:disabled {
      opacity: .5
    }

    .phone-row {
      display: flex;
      align-items: center;
      gap: 8px
    }

    .phone-row input {
      flex: 1
    }

    .phone-note {
      font-family: var(--mono);
      font-size: 11px;
      color: var(--term-mut);
      white-space: nowrap
    }

    .optin-fine {
      font-family: var(--mono);
      font-size: 11px;
      color: var(--term-mut);
      margin-top: 8px
    }

    .optin-done {
      font-family: var(--mono);
      font-size: 13px;
      font-weight: 700;
      color: #79c08a;
      margin-top: 10px
    }

    #inkmargin {
      position: fixed;
      right: 26px;
      bottom: 20px;
      width: 152px;
      height: 62px;
      z-index: 40;
      opacity: 0;
      transform: translateY(8px);
      transition: opacity .6s ease, transform .6s ease;
      pointer-events: none
    }

    #inkmargin.show {
      opacity: .92;
      transform: none
    }

    #inkmargin svg {
      width: 100%;
      height: 100%;
      overflow: visible
    }

    #inkmargin .inkline {
      stroke-dasharray: 1;
      stroke-dashoffset: 1
    }

    #inkmargin .nibdot {
      opacity: 0;
      transition: opacity .3s
    }

    #inkmargin.show .nibdot {
      opacity: 1
    }

    #inkmargin .inkcap {
      font-family: var(--disp);
      font-size: 8.5px;
      letter-spacing: .14em;
      text-transform: uppercase;
      fill: var(--muted)
    }

    body.agent #inkmargin {
      display: none
    }

    /* Opt-in reopen bubble (bottom right). The ink signature steps up while it shows. */
    body.has-mfp-bubble #inkmargin { bottom: 84px }
    .mfp-bubble {
      position: fixed; right: 22px; bottom: 22px; z-index: 56;
      display: flex; align-items: center; gap: 2px;
      padding: 4px 4px 4px 4px; border-radius: 999px;
      background: var(--ink); color: #f6efe2;
      border: 1px solid rgba(225, 170, 71, .35);
      box-shadow: 0 12px 30px -10px rgba(29, 27, 23, .55);
      opacity: 0; transform: translateY(14px);
      transition: opacity .45s cubic-bezier(.16, 1, .3, 1), transform .45s cubic-bezier(.16, 1, .3, 1)
    }
    .mfp-bubble.on { opacity: 1; transform: none }
    .mfp-bubble button { font: inherit; color: inherit; background: transparent; border: 0; cursor: pointer }
    .mfp-bubble-open {
      display: inline-flex; align-items: center; gap: 9px;
      padding: 9px 12px 9px 12px; border-radius: 999px;
      font-family: var(--disp) !important; font-weight: 700; font-size: 13.5px; letter-spacing: .02em
    }
    .mfp-bubble-open svg { width: 18px; height: 18px; color: #e1aa47; flex: none }
    .mfp-bubble-open:hover { background: rgba(246, 239, 226, .08) }
    .mfp-bubble-x {
      width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center;
      font-size: 18px; line-height: 1; opacity: .7
    }
    .mfp-bubble-x:hover { opacity: 1; background: rgba(246, 239, 226, .1) }
    .mfp-bubble button:focus-visible { outline: 2px solid #e1aa47; outline-offset: 2px }
    body.agent .mfp-bubble { display: none }
    @media (max-width: 640px) {
      .mfp-bubble { right: 12px; bottom: calc(80px + env(safe-area-inset-bottom, 0px)) }  /* above the Human / AI Audit toggle */
      .mfp-bubble-t { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap }
      .mfp-bubble-open { padding: 11px }
      .mfp-bubble-x { width: 26px; height: 26px }
    }
    @media (prefers-reduced-motion: reduce) {
      .mfp-bubble { transition: none; transform: none }
    }

    @media (max-width:1000px) {
      #inkmargin {
        display: none
      }
    }

    @media (prefers-reduced-motion:reduce) {
      #inkmargin .inkline {
        stroke-dashoffset: 0
      }
    }

    .hero .pubdate {
      font-family: var(--disp);
      color: var(--muted);
      font-size: 13px;
      letter-spacing: .04em;
      margin-bottom: 13px
    }

    .hero .toprule {
      height: 1px;
      background: var(--rule);
      margin: 0 auto 30px;
      width: 100%;
      max-width: 560px
    }

    .byline {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      margin: 28px 0 2px;
      text-align: left
    }

    .byline .rich-ava {
      width: 46px;
      height: 46px;
      border-radius: 50%;
      object-fit: cover;
      object-position: 50% 12%;
      border: 2px solid var(--rule);
      flex: 0 0 46px
    }

    .byline .rich-name {
      font-family: var(--disp);
      font-weight: 800;
      font-size: 15px;
      color: var(--ink);
      line-height: 1.25
    }

    .byline .rich-role {
      font-family: var(--disp);
      font-size: 13px;
      color: var(--muted)
    }

    .social {
      margin: 18px 0 4px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 7px
    }

    body:not(.show-counts) #social {
      display: none
    }

    .social .sharers {
      display: flex
    }

    .social .sharers .av {
      width: 30px;
      height: 30px;
      border-radius: 50%;
      border: 2px solid var(--bg);
      margin-left: -8px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--disp);
      font-weight: 800;
      font-size: 11px;
      color: #fff
    }

    .social .sharers .av:first-child {
      margin-left: 0
    }

    .social .counts {
      font-family: var(--disp);
      font-size: 13.5px;
      color: var(--muted)
    }

    .social .counts span {
      color: var(--ink);
      font-weight: 700
    }

    .social .counts a.disqus-comment-count {
      color: var(--ink);
      font-weight: 700;
      text-decoration: none
    }

    .social .counts a.disqus-comment-count:hover {
      color: var(--crimson)
    }

    .sharebar {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-wrap: wrap;
      gap: 10px;
      margin: 22px 0 0
    }

    .sharebar .sharelabel {
      font-family: var(--disp);
      font-size: 13px;
      color: var(--muted)
    }

    .sbtn {
      width: 38px;
      height: 38px;
      border-radius: 50%;
      border: 1px solid var(--rule);
      background: var(--panel);
      color: var(--ink);
      font-family: var(--disp);
      font-weight: 700;
      font-size: 14px;
      cursor: pointer;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      transition: .18s;
      line-height: 1
    }

    .sbtn:hover {
      border-color: var(--crimson);
      color: var(--crimson)
    }

    .sharebar .free-inline {
      font-family: var(--disp);
      font-weight: 700;
      font-size: 11.5px;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--crimson);
      margin-left: 6px
    }

    .comments {
      max-width: var(--col);
      margin: 0 auto;
      padding: 42px 24px 30px;
      border-top: 1px solid var(--rule)
    }

    .comments-h {
      font-family: var(--disp);
      font-weight: 800;
      font-size: 24px;
      color: var(--ink);
      margin: 0 0 20px
    }

    .comments-h span {
      color: var(--muted);
      font-weight: 600
    }

    .comment-form {
      display: grid;
      gap: 10px;
      margin-bottom: 30px
    }

    .comment-form input,
    .comment-form textarea {
      font-family: var(--serif);
      font-size: 16px;
      background: var(--panel);
      border: 1px solid var(--rule);
      border-radius: 10px;
      padding: 11px 14px;
      color: var(--ink);
      outline: none;
      width: 100%;
      resize: vertical
    }

    .comment-form input:focus,
    .comment-form textarea:focus {
      border-color: var(--crimson)
    }

    .comment-form button {
      justify-self: start;
      font-family: var(--disp);
      font-weight: 700;
      font-size: 13px;
      color: #fff;
      background: var(--crimson);
      border: 0;
      border-radius: 10px;
      padding: 11px 22px;
      cursor: pointer
    }

    .comment-form button:disabled {
      opacity: .5
    }

    .comment-list {
      display: flex;
      flex-direction: column;
      gap: 18px
    }

    .comment {
      border-bottom: 1px solid var(--rule);
      padding-bottom: 16px
    }

    .comment-head {
      display: flex;
      gap: 10px;
      align-items: baseline;
      margin-bottom: 5px
    }

    .comment-name {
      font-family: var(--disp);
      font-weight: 800;
      font-size: 14px;
      color: var(--ink)
    }

    .comment-when {
      font-family: var(--disp);
      font-size: 12px;
      color: var(--muted)
    }

    .comment-body {
      font-family: var(--serif);
      font-size: 16px;
      line-height: 1.6;
      color: var(--ink)
    }

    .comment-empty {
      font-family: var(--serif);
      font-style: italic;
      color: var(--muted)
    }

    body.agent .comments {
      display: none
    }

    @media (max-width:560px) {
      .sbtn {
        width: 34px;
        height: 34px
      }

      .byline {
        margin-top: 22px
      }
    }

    .finale {
      position: relative;
      margin: 0;
      padding: 96px 24px 104px;
      overflow: hidden;
      background: radial-gradient(120% 150% at 50% 14%, #f3ecdd 0%, var(--bg) 62%);
      border-top: 1px solid var(--rule)
    }

    .finale-inner {
      max-width: var(--col);
      margin: 0 auto;
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center
    }

    .phand {
      position: relative;
      width: 300px;
      height: 226px;
      margin: 0 auto 10px;
      transform: scale(var(--s, 1)) rotateX(calc(var(--py, 0)*1deg)) rotateY(calc(var(--px, 0)*1deg));
      transform-style: preserve-3d;
      transition: transform .35s ease;
      will-change: transform
    }

    .phand-glow {
      position: absolute;
      left: 50%;
      top: 64%;
      width: 360px;
      height: 160px;
      transform: translate(-50%, -50%);
      background: radial-gradient(closest-side, rgba(168, 17, 42, .28), rgba(168, 17, 42, 0) 72%);
      filter: blur(7px);
      opacity: 0;
      transition: opacity .5s ease;
      pointer-events: none
    }

    .phand:hover .phand-glow {
      opacity: 1
    }

    .pcard {
      position: absolute;
      left: 50%;
      top: 24px;
      width: 96px;
      height: 140px;
      margin-left: -48px;
      background: linear-gradient(#fbf6ec, #f1e7d3);
      border: 1px solid #e0d4bd;
      border-radius: 11px;
      box-shadow: 0 10px 22px rgba(40, 30, 16, .16), 0 2px 5px rgba(40, 30, 16, .12);
      transform-origin: 50% 138%;
      transform: translateY(var(--lift, 0px)) translateX(calc(var(--o) * 38px * var(--spread, 1)))rotate(calc(var(--o) * 7deg * var(--spread, 1)));
      transition: transform .5s cubic-bezier(.2, 1, .3, 1), box-shadow .5s;
      z-index: calc(5 + var(--i));
      font-family: var(--serif)
    }

    .pcard .pc-r {
      position: absolute;
      top: 8px;
      left: 10px;
      font-weight: 700;
      font-size: 19px;
      line-height: 1
    }

    .pcard .pc-r.bot {
      top: auto;
      bottom: 8px;
      right: 10px;
      left: auto;
      transform: rotate(180deg)
    }

    .pcard .pc-s {
      position: absolute;
      top: 28px;
      left: 11px;
      font-size: 14px
    }

    .pcard .pc-s.big {
      top: 50%;
      left: 50%;
      transform: translate(-50%, -54%);
      font-size: 48px;
      opacity: .9
    }

    .pcard.red {
      color: var(--crimson)
    }

    .pcard.blk {
      color: var(--ink)
    }

    .phand:hover {
      --spread: 1.4;
      --lift: -22px
    }

    .phand:hover .pcard {
      box-shadow: 0 20px 38px rgba(40, 30, 16, .22), 0 5px 10px rgba(40, 30, 16, .14)
    }

    .finale-cap {
      margin-top: 16px;
      max-width: 560px
    }

    .fin-eyebrow {
      font-family: var(--disp);
      font-weight: 800;
      letter-spacing: .2em;
      text-transform: uppercase;
      font-size: 12px;
      color: var(--crimson);
      margin-bottom: 14px
    }

    .fin-line {
      font-family: var(--disp);
      font-weight: 900;
      line-height: 1.05;
      letter-spacing: -.01em;
      font-size: clamp(26px, 5vw, 40px);
      color: var(--ink);
      margin: 0 0 16px
    }

    .fin-line .hl {
      color: var(--crimson)
    }

    .fin-sub {
      font-family: var(--serif);
      font-size: 17px;
      line-height: 1.6;
      color: var(--muted-dark);
      margin: 0 0 22px
    }

    .fin-link {
      font-family: var(--disp);
      font-weight: 700;
      font-size: 13px;
      letter-spacing: .06em;
      text-transform: uppercase;
      color: var(--crimson);
      text-decoration: none;
      border-bottom: 1.5px solid transparent;
      padding-bottom: 2px;
      transition: .2s
    }

    .fin-link:hover {
      border-bottom-color: var(--crimson)
    }

    body.agent .finale {
      display: none
    }

    @media (max-width:560px) {
      .finale {
        padding: 74px 18px 88px
      }

      .phand {
        --s: .8
      }
    }

    @media (prefers-reduced-motion:reduce) {

      .pcard,
      .phand {
        transition: none
      }

      .phand:hover {
        --spread: 1;
        --lift: 0
      }
    }

    .bubble.journey {
      width: 100%;
      max-width: none;
      background: #16130f;
      border: 1px solid #2c2620;
      border-radius: 12px;
      padding: 18px 18px 20px
    }

    .jrn-eyebrow {
      font-family: var(--mono);
      font-size: 11.5px;
      letter-spacing: .14em;
      text-transform: uppercase;
      color: #F5A623;
      margin-bottom: 16px
    }

    .trn-svg {
      display: block;
      overflow: visible;
      border-radius: 6px
    }

    .trn-pulse {
      animation: trnPulse 2.4s ease-in-out infinite
    }

    @keyframes trnPulse {

      0%,
      100% {
        opacity: .10
      }

      50% {
        opacity: .03
      }
    }

    .trn-beam {
      animation: trnBeam .8s ease-out .5s both
    }

    @keyframes trnBeam {
      from {
        opacity: 0
      }

      to {
        opacity: 1
      }
    }

    .trn-pin-drop {
      transform-box: fill-box;
      transform-origin: 50% 100%;
      animation: trnPin .55s cubic-bezier(.34, 1.56, .64, 1) .55s both
    }

    @keyframes trnPin {
      from {
        transform: translateY(-26px);
        opacity: 0
      }

      to {
        transform: translateY(0);
        opacity: 1
      }
    }

    .trn-detail {
      margin-top: 14px
    }

    .trn-card {
      border-top: 1px dashed #342e28;
      padding-top: 14px
    }

    .trn-eyebrow-sm {
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: #6b5e4a;
      margin-bottom: 5px
    }

    .trn-here-badge {
      font-family: var(--mono);
      font-size: 10px;
      color: #F5A623;
      letter-spacing: .04em;
      text-transform: none
    }

    .trn-card-name {
      font-family: var(--disp);
      font-weight: 800;
      font-size: 19px;
      color: #fff;
      margin-bottom: 9px;
      line-height: 1.2
    }

    .trn-card-where {
      font-size: 13.5px;
      line-height: 1.65;
      color: #cfc6b4;
      margin: 0 0 10px
    }

    .trn-field {
      font-size: 13px;
      line-height: 1.55;
      color: #cfc6b4;
      margin: 0 0 7px
    }

    .trn-ftag {
      font-family: var(--mono);
      font-size: 10px;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: #F5A623;
      display: inline-block;
      margin-right: 7px
    }

    @media (max-width:560px) {
      .trn-card-name {
        font-size: 17px
      }
    }

    .jrn-gap,
    .jrn-next {
      font-size: 13.5px;
      line-height: 1.55;
      color: #cfc6b4;
      margin: 0 0 8px
    }

    .jrn-gap span,
    .jrn-next span {
      font-family: var(--mono);
      font-size: 11px;
      letter-spacing: .08em;
      text-transform: uppercase;
      color: #F5A623;
      display: inline-block;
      margin-right: 6px
    }

    .stage-reveal {
      padding: 2px 0
    }

    .reveal-eyebrow {
      font-family: var(--mono);
      font-size: 11px;
      letter-spacing: .1em;
      text-transform: uppercase;
      color: var(--term-mut);
      margin-bottom: 6px
    }

    .reveal-name {
      font-family: var(--serif);
      font-size: 27px;
      font-weight: 700;
      color: #F5A623;
      line-height: 1.15;
      margin-bottom: 10px
    }

    .reveal-rule {
      width: 36px;
      height: 2px;
      background: #F5A623;
      opacity: .5;
      margin-bottom: 14px
    }

    .reveal-where {
      font-size: 14.5px;
      line-height: 1.6;
      color: #cfc6b4;
      margin: 0 0 8px
    }
  