/* ============================================================================
   PARTNER PAGES ON THE v1 (Lighter) DESIGN SYSTEM
   ----------------------------------------------------------------------------
   The partner pages were built before Adam chose Lighter on 2026-09-07. They
   were a light page carrying dark sections; v1 is the inverse. Until this layer
   existed the site ran two design systems, and the partner pages are the ones
   the BD argument rests on: a prospective sponsor looks at Wealth Hospitality
   and sees what their own presence on Capstaq would become.

   HOW THIS WORKS, and why it is short.

   The first attempt enumerated selectors — flip .pt-caps, flip .pt-sec, chase
   the ink down into .pt-cap h3. It moved 45 contrast failures to 42, because
   partner.css paints eighteen separate surfaces from four site.css tokens, and
   fixing the grid while missing the cell leaves white text on a white card.
   That is what 1.03:1 was: not dark on dark, light on light.

   So this redefines the four tokens inside the partner scope instead. Every
   surface, rule and ink that reads --white/--paper/--ink-700 flips at once,
   including the ones nobody enumerated. partner.css keeps every layout,
   grid and spacing decision it had.

   Load order: site.css -> home-d.css -> partner.css -> this -> chrome.css
   ========================================================================== */

body.hd-body {
  /* ---- grounds. Ordered by depth, so a card still reads as raised off the
     section it sits in, exactly as it did on paper. ---------------------- */
  --paper:      var(--hd-navy-deep);   /* was #eceeed — section band        */
  --paper-alt:  var(--hd-navy-2);      /* was #f7f8f7 — alternate band      */
  --white:      var(--hd-navy-2);      /* was #fbfcfb — cards and cells     */
  --surface:    var(--hd-navy-2);

  /* ---- ink -------------------------------------------------------------- */
  --ink-900:    var(--hd-on-d);        /* 21:1  on navy                      */
  --ink-700:    var(--hd-on-d-2);      /* 12.2:1                             */
  --ink-500:    var(--hd-on-d-3);      /* 7.2:1 — the floor                  */
  --ink-300:    var(--hd-on-d-3);      /* was 3.2:1 on navy. Not a floor.    */

  /* ---- accent. site.css's golds are the LIGHT-ground set: --gold-700 is
     #754600, which is 5.7:1 on paper and 2.4:1 on navy. Reusing them here is
     the exact fault the deal pages were fixed for. ------------------------ */
  --gold-700:   var(--hd-gold);
  --gold-600:   var(--hd-gold);
  --gold-500:   var(--hd-gold);
  --gold-400:   var(--hd-gold);
  --gold-300:   var(--hd-gold-soft);

  /* ---- THE FROZEN ALIAS.
     site.css:24 declares --accent-ink: var(--gold-700) on :root. That resolves
     ON :root to #754600 and inherits down as a literal, so redefining
     --gold-700 further down the tree never re-evaluates it. Eighteen of the
     nineteen remaining contrast failures were this one line: every .eyebrow,
     .link-arrow and .btn--text still painting the light-ground gold at 2.16:1
     on navy. An alias has to be re-declared in the same scope that overrides
     what it points at. */
  --accent-ink: var(--hd-gold);
  --heading-ink: var(--hd-on-d);
  --body-ink: var(--hd-on-d-2);

  /* ---- rules. A hairline that reads on paper vanishes on navy. --------- */
  --rule:       var(--hd-line-d2);
  --rule-soft:  var(--hd-line-d);
}

/* -- Sections the token flip cannot reach --------------------------------- */

/* Painted with a literal rgba rather than a token. */
.pt-subnav        { background:var(--hd-navy-deep); border-bottom:1px solid var(--hd-line-d); }
.pt-lockup        { background:rgba(5,15,28,.5); border-color:rgba(217,164,65,.34); }
.pt-open__body    { background:var(--hd-navy-2); }

/* Already navy on the old page, so now indistinguishable from the ground.
   These separate by depth instead of by inversion. */
.pt-sec--navy,
.pt-who__col      { background:var(--hd-navy-deep); border-color:var(--hd-line-d); }
.pt-who__col--capstaq { border-color:rgba(217,164,65,.42); }

/* -- Status chips ---------------------------------------------------------
   These carry the compliance distinction between a partner's whole portfolio
   and what Capstaq actually presents, so they must not fail quietly. The two
   coloured variants were hardcoded for a light ground. */
.pt-st--available { color:#5FD39B; border-color:rgba(95,211,155,.42); background:rgba(29,122,69,.20); }
.pt-st--review    { color:var(--hd-gold); border-color:rgba(217,164,65,.42); background:rgba(217,164,65,.14); }

/* -- Type -----------------------------------------------------------------
   Inter headings against v1's Playfair was the loudest signal that these pages
   belonged to a different site. */
.pt-hero h1, .pt-index__hero h1,
.pt-sec > h2, .pt-sec__head h2, .pt-head h2,
.pt-cap h3, .pt-insight h3, .pt-who__col h3,
.pt-card h2, .pt-next strong {
  font-family:var(--hd-serif); font-weight:400; letter-spacing:-.01em;
}

/* -- Ghost buttons --------------------------------------------------------
   Caused by the remap above, not inherited from the old page: .btn--ghost
   takes color:var(--white), which now resolves to navy-2 and put navy text on
   a navy ground at 1.12:1. A ghost button was always meant to carry the
   ground's own foreground. */
.btn--ghost        { color:var(--hd-fg); border-color:var(--hd-line-d2); background:rgba(5,13,26,.16); }
.btn--ghost:hover  { border-color:var(--hd-gold); }
.btn--outline      { color:var(--hd-fg); border-color:var(--hd-gold); }
.btn--outline:hover{ color:var(--hd-ink); background:var(--hd-gold); }

/* -- The chip over a photograph -------------------------------------------
   .pt-open__media .pt-st keeps a near-white ground on purpose: it is overlaid
   on the property image and needs to stay legible against it. The status
   colours above assume navy, so on this one chip they invert into light green
   on white at 1.68:1. It keeps the original light-ground ink. */
.pt-open__media .pt-st--available { color:#14603a; }
.pt-open__media .pt-st--review    { color:#754600; }
.pt-open__media .pt-st--closed,
.pt-open__media .pt-st--pipeline  { color:#39424b; }
