  html, body { margin: 0; padding: 0; background: #0b0a07; }

  /* -------- design tokens + base (from home.html) -------- */
  #nbp {
    /* palette — dark-luxury black & gold */
    --ink:      #0b0a07;   /* warm near-black ground            */
    --ink-2:    #100e09;   /* alternating section ground        */
    --panel:    #16130c;   /* raised card surface (warm)        */
    --line:     #2a2414;   /* gold-tinted hairline               */
    --line-2:   #4a3f22;   /* brighter bronze hairline / hover   */
    --gold:     #caa24e;   /* core metallic gold (brand)         */
    --gold-bright:#f0d489; /* champagne highlight / sheen        */
    --gold-deep:#8a6d2e;   /* pressed / shadow gold              */
    --paper:    #f2ece0;   /* warm parchment text                */
    --mute:     #9d9079;   /* warm taupe secondary text          */

    /* metallic gold sheen for buttons + accents */
    --gold-foil: linear-gradient(160deg, #f4dc97 0%, #caa24e 42%, #a9842f 70%, #e6c87f 100%);

    /* type */
    --sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --mono: ui-monospace, "SF Mono", "Cascadia Code", "Roboto Mono", Menlo, Consolas, monospace;

    /* rhythm */
    --wrap: 1140px;
    --pad: clamp(20px, 5vw, 56px);

    /* base */
    color: var(--paper);
    background: var(--ink);
    font-family: var(--sans);
    font-size: clamp(15px, 1vw + 13px, 17px);
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    position: relative;
    overflow-x: hidden;
  }

  /* -------- scoped reset (from home.html) -------- */
  /* scoped reset so we don't leak resets into the theme */
  #nbp *,
  #nbp *::before,
  #nbp *::after { box-sizing: border-box; }
  #nbp p, #nbp h1, #nbp h2, #nbp h3, #nbp h4,
  #nbp ul, #nbp figure, #nbp blockquote { margin: 0; }
  #nbp ul { list-style: none; padding: 0; }
  #nbp a { color: inherit; text-decoration: none; }
  #nbp img, #nbp svg { display: block; max-width: 100%; }

  /* -------- layout + brand helpers used by the footer -------- */
  #nbp .wrap { width: 100%; max-width: var(--wrap); margin-inline: auto; padding-inline: var(--pad); }
  #nbp .brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 800; letter-spacing: -.01em; }
  #nbp .brand .mono-tag { font-family: var(--mono); font-size: .62rem; letter-spacing: .16em; color: var(--mute); text-transform: uppercase; }
  #nbp .monogram { width: 40px; height: 40px; flex: 0 0 auto; }

  /* -------- footer -------- */
  /* -------- 11. FOOTER -------- */
  #nbp .site-foot { border-top: 1px solid var(--line); background: var(--ink-2); }
  #nbp .foot-grid { display: grid; grid-template-columns: 1.6fr 1fr 1fr; gap: 40px; padding-block: 56px; }
  #nbp .site-foot .brand { margin-bottom: 16px; }
  #nbp .site-foot p.blurb { color: var(--mute); max-width: 40ch; font-size: .95rem; }
  #nbp .foot-col h4 { font-family: var(--mono); font-size: .72rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mute); margin-bottom: 16px; }
  #nbp .foot-col a { display: block; padding: 6px 0; color: var(--paper); font-size: .95rem; }
  #nbp .foot-col a:hover { color: var(--gold); }
  #nbp .foot-bottom {
    border-top: 1px solid var(--line); padding-block: 26px;
    display: flex; flex-wrap: wrap; gap: 14px 28px; justify-content: space-between; align-items: center;
  }
  #nbp .foot-bottom small { color: var(--mute); font-family: var(--mono); font-size: .72rem; letter-spacing: .05em; }
  #nbp .foot-bottom .legal { color: var(--mute); font-size: .82rem; max-width: 70ch; }

  /* footer responsive (from home.html) */
  @media (max-width: 900px) {
    #nbp .foot-grid { grid-template-columns: 1fr 1fr; }
    #nbp .foot-col.span { grid-column: 1 / -1; }
  }
  @media (max-width: 620px) {
    #nbp .foot-grid { grid-template-columns: 1fr; }
  }
