/* ============================================================================
   chrome.css — the one masthead and the one footer.

   Before this file the site ran three navigation systems (.ck-hd on 30 pages,
   .site-header on 16, three bespoke portal headers) and six footers, 25 of
   which carried nothing but two links and no risk disclaimer. This is the
   single source of truth for site chrome and every page loads it.

   Every custom property here is --ck-* prefixed and therefore cannot collide
   with site.css (--navy-950, --gold-500 …) or cockpit.css (--navy, --gold …).
   That is deliberate: the chrome has to render identically on a page that
   loads site.css, a page that loads cockpit.css, and a page that loads both.
   ========================================================================== */
:root{
  /* 2026-09-10, Dante review. Was #071321, while site-v1.css overrode the
     header and footer to #050D1A on the pages that loaded it after this
     file. Two grounds for one masthead: the bar read lighter than the hero
     on some pages and darker on others, and the open mobile panel was a
     second shade under the bar. One token, one colour, every page. */
  --ck-panel:#050D1A;
  --ck-gold:#D9A441; --ck-gold-deep:#b8790b; --ck-gold-bright:#f0ad27; --ck-gold-soft:#D9A441;
  --ck-ink:#090d12;
  --ck-on-dark:#e8ebee; --ck-on-dark-mut:#a7b3bf;
  --ck-line-dark:rgba(255,255,255,.1);
  --ck-font:"Inter",Arial,Helvetica,sans-serif;
  --ck-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --ck-r:2px;  /* matches .hd-btn (home-d.css:310); was 6px, rounded pills over square buttons */
}

.ck-hd *,.ck-ft *{box-sizing:border-box}
.ck-hd a,.ck-ft a{text-decoration:none}

.skip-link{position:fixed;left:-9999px;top:0;background:var(--ck-gold);color:var(--ck-ink);
  display:flex;align-items:center;min-height:44px;padding:11px 14px;z-index:200;font:600 14px/1 var(--ck-font);border-radius:0 0 var(--ck-r) 0}
.skip-link:focus{left:0;top:0}
/* Investor Portal as a nav item, shown only in the phone menu: at 1040px
   and below the header button is hidden and the portal was unreachable. */
/* (0,1,1) on purpose: .ck-nav a{display:inline-flex} is (0,1,1) and a bare
   .ck-nav__portal (0,1,0) lost to it, so Investor Portal rendered twice on
   every desktop header (Dante re-audit, 2026-09-10). */
.ck-nav .ck-nav__portal{display:none}

/* ---------------- masthead ---------------- */
.ck-hd{background:var(--ck-panel);color:var(--ck-on-dark);position:sticky;top:0;z-index:50;
  border-bottom:1px solid var(--ck-line-dark);font-family:var(--ck-font)}
/* 1180px and home-d's gutter, so the logo lines up with the page headline.
   At 1320/22 the logo sat ~70px left of every H1 (Dante, 2026-09-10). */
.ck-hd__in{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:22px;height:64px;padding:0 clamp(20px,4.4vw,44px)}
.ck-hd a{color:inherit}
.ck-brand{display:flex;align-items:center;gap:11px;min-height:40px;flex:none}
.ck-brand__type b{display:block;font-size:17px;font-weight:800;letter-spacing:.06em;color:#fff;line-height:1.1}

/* ---- the lockup ----------------------------------------------------------
   Two marks shipped in production on two halves of the site, with two
   different taglines. Both are defined here and the live one is chosen by a
   single constant in _build/apply_chrome.py (ACTIVE_LOCKUP), so switching is
   one edit and a re-run, not 47 hand edits.

   DEFAULT: --stack, the four ascending bars + "Because Ownership Matters".
   It is the lockup on the deal pages, where money is actually raised, and the
   one the brand guide documents. The client has not yet been told there are
   two; this default is a decision he still owes us.
   ------------------------------------------------------------------------ */

/* Four ascending bars — the capital stack. */
.ck-brand__mark--stack{width:29px;height:32px;display:flex;align-items:flex-end;gap:3px;flex:none}
.ck-brand__mark--stack i{display:block;width:5px;border-radius:1px;
  background:linear-gradient(180deg,var(--ck-gold-soft),var(--ck-gold-deep));
  clip-path:polygon(100% 0,100% 100%,0 100%,0 22%)}
.ck-brand__mark--stack i:nth-child(1){height:18px}
.ck-brand__mark--stack i:nth-child(2){height:24px}
.ck-brand__mark--stack i:nth-child(3){height:31px}
.ck-brand__mark--stack i:nth-child(4){height:21px}

/* Boxed three-bar icon — the alternate. Kept live so ACTIVE_LOCKUP can flip
   back without touching this file. */
.ck-brand__mark--box{width:34px;height:30px;display:flex;flex-direction:column;justify-content:flex-end;gap:2.5px;
  border:1.5px solid var(--ck-gold);border-radius:4px;padding:4px 5px;flex:none}
.ck-brand__mark--box i{display:block;height:3px;border-radius:1px;
  background:linear-gradient(90deg,var(--ck-gold-deep),var(--ck-gold-bright))}
.ck-brand__mark--box i:nth-child(1){width:55%}
.ck-brand__mark--box i:nth-child(2){width:80%}
.ck-brand__mark--box i:nth-child(3){width:100%}
/* The tagline shipped at 7.5px here and 7.7px on the deal-page lockup, which is
   the same failure as the client's own live site. 11px is the floor. Tracking
   eases from .22em to .1em so the lockup gains ~40px rather than ~95px and the
   four nav items still clear the actions group down to 1040px, where the nav
   collapses into the burger anyway. */
.ck-brand__type small{display:block;font-family:var(--ck-mono);font-size:11px;line-height:1.1;
  letter-spacing:.1em;color:var(--ck-gold-soft);margin-top:2px;white-space:nowrap}

/* LAUNCH SCOPE: phase one is investor-side only, so this nav carries four
   items rather than six. Four links centred inside a flex:1 track left a void
   on both sides that read as "two links were deleted here", so the group is
   anchored to the brand and the single flexible gap sits before the actions,
   where a masthead expects it. */
.ck-nav{display:flex;gap:2px;flex:1;justify-content:flex-start;min-width:0}
.ck-nav a{display:inline-flex;align-items:center;min-height:40px;padding:0 13px;border-radius:var(--ck-r);
  font-size:13.5px;font-weight:500;color:var(--ck-on-dark);opacity:.88;white-space:nowrap;
  transition:background .15s,opacity .15s}
.ck-nav a:hover,.ck-nav a[aria-current="page"]{background:rgba(255,255,255,.08);opacity:1}
.ck-nav a[aria-current="page"]{box-shadow:inset 0 -2px 0 var(--ck-gold)}
.ck-hd__actions{display:flex;align-items:center;gap:10px;flex:none}
.ck-search{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--ck-r);
  color:var(--ck-on-dark);opacity:.8;transition:background .15s}
.ck-search:hover{background:rgba(255,255,255,.08);opacity:1}

/* Buttons. Previously scoped to `body.cockpit`, which meant the gold primary
   rendered as unstyled plain text on the 16 pages that carry a different body
   class or none — including request-access and contact, the two pages where
   conversion matters most. Nothing about a button's fill depends on the body
   class, so the scope is gone. */
.ck-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;height:40px;padding:0 16px;
  border-radius:var(--ck-r);font-family:var(--ck-font);font-size:13.5px;font-weight:600;border:0;cursor:pointer;
  white-space:nowrap;transition:transform .15s,box-shadow .15s,background .15s}
.ck-btn .ar{transition:transform .15s}
.ck-btn:hover .ar{transform:translateX(3px)}
/* Doubled class, not decoration: cockpit.css carries `body.cockpit a{color:
   inherit}` at (0,1,2), so a single-class variant loses the colour war and the
   dark secondary CTA rendered navy-on-navy on the homepage. (0,2,0) wins
   without reintroducing a body-class scope. Caught on screen, not in source. */
.ck-btn.ck-btn--gold{color:var(--ck-ink);background:linear-gradient(135deg,var(--ck-gold-bright),var(--ck-gold))}
.ck-btn.ck-btn--gold:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(217,155,27,.35)}
.ck-btn.ck-btn--ghostd{color:var(--ck-on-dark);border:1px solid rgba(255,255,255,.22);background:transparent}
.ck-btn.ck-btn--ghostd:hover{background:rgba(255,255,255,.07)}
.ck-btn.ck-btn--dark{color:#fff;background:var(--ck-panel)}
.ck-btn.ck-btn--dark:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(7,19,33,.3)}
.ck-btn--lg{height:48px;padding:0 24px;font-size:15px;font-weight:600}

.ck-burger{display:none;min-width:44px;min-height:44px;background:none;border:0;padding:8px;cursor:pointer}
.ck-burger span{display:block;width:22px;height:2px;margin:4px 0;background:#fff;border-radius:2px}

/* Focus was invisible on 8 of 10 focusable elements on deal pages, including
   every nav dropdown item, because site.css declares no :focus-visible at all.
   :where() gives this zero specificity, so it is a floor rather than an
   override: any page that already styles its own focus ring still wins, and
   anything that styles none now gets a visible one. WCAG 2.4.7. */
:where(:focus-visible){outline:2px solid var(--ck-gold);outline-offset:2px;border-radius:2px}
.ck-hd :focus-visible,.ck-ft :focus-visible{outline:2px solid var(--ck-gold);outline-offset:2px;border-radius:2px}

/* ---------------- footer ---------------- */
.ck-ft{background:var(--ck-panel);color:var(--ck-on-dark-mut);padding:44px 0 0;
  border-top:1px solid var(--ck-line-dark);font-family:var(--ck-font);font-size:15px;line-height:1.5}
.ck-ft__in{max-width:1180px;margin:0 auto;padding:0 clamp(20px,4.4vw,44px)}
.ck-ft a{color:var(--ck-on-dark-mut);transition:color .15s}
.ck-ft a:hover{color:#fff}
.ck-ft__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:30px;padding-bottom:32px}
.ck-ft__brand .ck-brand{margin-bottom:12px}
.ck-ft__brand p{font-size:13px;line-height:1.6;max-width:280px;margin:0}
/* Doubled scope: site-v1.css sets body.hd-body h2 in the serif at (0,1,2),
   which put these headings in Playfair 11/400 on 30 pages and Inter on 14. */
.ck-ft .ck-ft__col h2{font-family:var(--ck-font);font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ck-gold-soft);margin:0 0 13px}
.ck-ft__col ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
/* 40px tap targets in the footer without adding visual weight: the link text
   stays 13px, the hit area is the row. Measured at 34px first, which failed the
   40px floor on every page at once because the footer is on every page. */
.ck-ft__col a{display:inline-flex;align-items:center;min-height:40px;font-size:13px}

/* The disclosure band. 25 pages previously shipped a footer of two links and
   no risk language at all. The brand guide's rule is "if it scrolls, it
   discloses. It can be quiet; it cannot be missing." */
.ck-ft__disc{border-top:1px solid var(--ck-line-dark);padding:18px 0 0;
  font-size:11.5px;line-height:1.6;color:var(--ck-on-dark-mut);max-width:900px}
.ck-ft__base{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  padding:14px 0 26px;font-size:11.5px}
.ck-ft__base nav{display:flex;gap:18px;flex-wrap:wrap}
.ck-ft__base nav a{display:inline-flex;align-items:center;min-height:40px}

/* ---------------- responsive ---------------- */
@media(max-width:1180px){
  .ck-hd__in{gap:14px}
  .ck-nav a{padding:0 10px}
  .ck-ft__grid{grid-template-columns:1fr 1fr 1fr 1fr}
  .ck-ft__brand{grid-column:1/-1}
  .ck-ft__brand p{max-width:56ch}
}
@media(max-width:1040px){
  .ck-nav,.ck-hd__actions .ck-btn--ghostd,.ck-hd__actions .ck-search{display:none}
  .ck-burger{display:block}
  .ck-hd__actions{margin-left:auto}
  .ck-hd.is-open .ck-nav{display:flex;flex-direction:column;position:absolute;top:64px;left:0;right:0;
    background:var(--ck-panel);padding:10px 18px 16px;border-bottom:1px solid var(--ck-line-dark);z-index:60}
  .ck-hd.is-open .ck-nav a{min-height:46px;font-size:15px}
  .ck-hd.is-open .ck-nav__portal{display:inline-flex}
}
@media(max-width:640px){
  .ck-hd__in{gap:10px}
  /* Mark plus wordmark is a sanctioned lockup variant. Below 640px the tagline
     is dropped rather than shrunk, which frees the ~100px the primary CTA
     needs to stay in the bar and keeps every rendered character at 11px+. */
  .ck-brand__type small{display:none}
  .ck-hd__actions .ck-btn--gold{padding:0 13px;font-size:12.5px}
  .ck-ft{padding-top:26px}
  .ck-ft__grid{grid-template-columns:1fr 1fr;gap:20px;padding-bottom:22px}
  .ck-ft__base{padding-bottom:22px}
}
@media(max-width:420px){
  .ck-hd__in{gap:8px}
  .ck-brand{gap:7px}
  .ck-brand__mark{width:25px;height:24px;flex:0 0 25px}
  .ck-brand__type b{font-size:14px}
  .ck-hd__actions{gap:6px}
  /* Deliberately NOT single-column. One column at 390px produced a 1400px
     footer: 21 links at a 40px tap target each, stacked. Two columns halve it
     and every label still fits on one line at this width. */
  .ck-ft__grid{grid-template-columns:1fr 1fr;gap:14px}
}

/* ============================================================================
   THE 320px FLOOR
   chrome.css is the last stylesheet on all 46 pages, so this is the one place
   a fix lands on every page regardless of which of the eleven page-level
   stylesheets it happens to load. Everything here addresses a measured
   horizontal overflow or a sub-40px control at the narrow floor, and is scoped
   to a width no phone exceeds — nothing below changes the site above 420px.
   ========================================================================== */
@media(max-width:420px){
  /* A 40px-tall button whose label cannot wrap is a fixed-width element. On
     track-record "Request supporting documentation" needed 315px against 284px
     of container and pushed the page 13px wide. Buttons wrap and go full width
     here rather than setting the page's minimum width. */
  .ck-btn{
    height:auto;min-height:44px;padding:11px 16px;
    white-space:normal;text-align:center;
  }
  .ck-btn--lg{min-height:48px;padding:12px 18px}

  /* The portal masthead is a brand lockup plus a nav toggle on one flex row.
     The lockup is flex:0 0 auto at 248px, the toggle 76px, against 284px of
     room, so the toggle sat 22px off-screen and could not be tapped — the
     portal's only navigation on a phone. The tagline is the widest part of the
     lockup and is already carried by the footer on every portal page. */
  .portal-sidebar .brand-tag{display:none}
  .portal-sidebar .brand-word{font-size:1.16rem}
  .portal-sidebar .brand-lockup{min-width:0}
  .portal-sidebar__bar{gap:10px}
  .portal-nav-toggle{flex:none;min-height:44px}
}

/* ============================================================================
   SCROLL AFFORDANCE ON HORIZONTAL STRIPS

   Three strips on this site scroll sideways when their items do not fit, and
   all three hide the scrollbar. The deal-brief rail already tells the reader
   there is more, with a fade on the trailing edge (deal-brief.css). The
   partner subnav and the portal detail tabs did not, so at 390px the partner
   subnav read "Company · Partnership · Opportunities · Ins" — a word cut in
   half, which reads as a truncation bug rather than as an invitation to
   swipe, and Insights and Record were undiscoverable on a phone.

   Same idea as the deal rail, done with background layers rather than a
   pseudo-element because these two strips ARE the scrolling box and have no
   wrapper to hang an absolute child on. The `local` layers scroll with the
   content and cover the shadow when that edge is reached, so the hint appears
   only on the side that has more to show, and disappears at both ends.
   ========================================================================== */
.pt-subnav__in,
.portal-detail-tabs{
  background-repeat:no-repeat;
  background-size:44px 100%,44px 100%,16px 100%,16px 100%;
  background-position:left center,right center,left center,right center;
  background-attachment:local,local,scroll,scroll;
}
.pt-subnav__in{
  /* the strip is navy (partner-v1.css), so the covers are navy and the hint
     is a light edge; paper covers here painted two white bars over the tabs */
  background-image:
    linear-gradient(90deg,#050D1A 42%,rgba(5,13,26,0)),
    linear-gradient(270deg,#050D1A 42%,rgba(5,13,26,0)),
    linear-gradient(90deg,rgba(255,255,255,.12),rgba(255,255,255,0)),
    linear-gradient(270deg,rgba(255,255,255,.12),rgba(255,255,255,0));
}
.portal-detail-tabs{
  background-image:
    linear-gradient(90deg,#fbfcfb 42%,rgba(251,252,251,0)),
    linear-gradient(270deg,#fbfcfb 42%,rgba(251,252,251,0)),
    linear-gradient(90deg,rgba(7,19,33,.16),rgba(7,19,33,0)),
    linear-gradient(270deg,rgba(7,19,33,.16),rgba(7,19,33,0));
}

/* ===========================================================================
   ONE EYEBROW  (Dante review, 2026-09-10)
   ---------------------------------------------------------------------------
   Seven eyebrow styles in two families: monospace caps at 700-800 on the
   pathway, record, intake and invest templates, Inter caps at 600-700 on the
   rest. It is the most repeated small element on the site and the fastest tell
   that two templates came from two systems.

   It lives in chrome.css because this is the one stylesheet every page loads.
   Type only. Colour stays with each template, because it depends on the ground
   under it: the gold on navy, the deep gold on paper.

   !important BECAUSE the eleven classes are styled at eleven different
   specificities across six template stylesheets (.x-intro .x-eyebrow,
   body.record .rc-eyebrow, ...). Matching each would scatter this rule back
   across the files it exists to replace. It sets type only, never colour. */
.eyebrow,.hd-eyebrow,.dl-eyebrow,.dl-hero__eyebrow,.pw-eyebrow,.rc-eyebrow,
.x-eyebrow,.decision-eyebrow,.iw-hero__eyebrow,.ik-hero__eyebrow,.learn-eyebrow{
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
  font-size:11px !important;font-weight:600 !important;letter-spacing:.19em !important;text-transform:uppercase;
}
/* Eyebrow COLOUR: two values, chosen by the ground rather than by the
   template. Eight golds were in use (#E9CB93, #B8862B, #8A6321, #E5AD3A,
   #E0A536, #7F5000, #8B5E00 beside the two real ones). --accent-ink resolves
   to #D9A441 on navy and #7E5A1D on paper, including dark bands inside paper
   pages (DARK ISLANDS, site-v1.css). The fallback covers pages that do not
   load site-v1. The deal pages' dl-* eyebrows already run on their own two. */
.eyebrow,.pw-eyebrow,.rc-eyebrow,.x-eyebrow,.decision-eyebrow,.iw-hero__eyebrow,
.ik-hero__eyebrow,.learn-eyebrow{color:var(--accent-ink,var(--hd-accent,#D9A441)) !important}

/* ONE LABEL SYSTEM. The small-caps labels that were not eyebrows still ran
   in monospace at 600-800: category tags, card titles, status tags, the
   'optional' note. Inter 11/600 at .14em, one step quieter than an eyebrow. */
.gl-item__cat,.ik-card__t,.rc-tag,.pw-status__tag,.ik-opt-note,.video-slot__ch,.x-when{
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
  font-weight:600 !important;letter-spacing:.14em !important;
}

/* ===========================================================================
   THREE DISPLAY SIZES AND A 13px FLOOR  (Dante review, 2026-09-10)
   ---------------------------------------------------------------------------
   Fifteen H1 sizes at 1280 (42.2 to 76.8px), one per template, each tuned in
   isolation. Three steps now, by page family:
     76  home and opportunities   (.hd-h1, untouched)
     62  deal, record, learn and partner pages
     50  everything else: pathway, 1031, IRA, intake, invest, story, 404, portal
   Each scales down with the viewport. !important for the same reason as the
   eyebrow rule above: the H1s are styled at a dozen specificities in six files.

   The floor: fine print, hints and disclosures ran at 11 to 12.5px on 26
   pages, and on the 1031 page the LEDE, the sentence under the headline, was
   12.5px with an 11px variant. Nothing that reads as body text goes below 13. */
body.dl-body main h1,
body.record main h1,
body.learn main h1,
body:not(.hd-paper-body):not(.hd-night) .pt-hero h1,
body:not(.hd-paper-body):not(.hd-night) .op-open h1{
  font-size:clamp(2.3rem,5vw,3.875rem) !important;line-height:1.05 !important;
}
body.hd-night main h1,body.hd-paper-body main h1{
  font-size:clamp(2rem,4vw,3.125rem) !important;line-height:1.06 !important;
}
.pw-fine,.rc-fine,.ins-fine,.learn-fine,.x-fine,.ik-group__hint,.ik-truth,.ik-direct__note,
.credit-cockpit__disclosure,.credit-decisions__answer,.mini-ledger dd,.pt-ledger dd,.pt-key dd,
.iw-note p,.portal-preview-banner p,.portal-cockpit-panel__head p,.portal-sample-card__body p,
.portal-entry__card p,.portal-detail-hero p,.pt-disclosure p,.portal-module-foot p,
.credit-decisions__answer p,.portal-module p,
/* re-audit: the footer risk disclaimer and base line (11.5px on all 44 pages),
   intake hints and labels, the 1031 notes, the how-it-works disclosure */
.ck-ft__disc,.ck-ft__disc p,.ck-ft__base,.ck-ft__base p,.ik-hint,.ik-group__hint,
.x-when,.x-answer__help,.page-disclosure,.page-disclosure p,
.portal-app .btn:not(.btn--primary),.portal-app button:not(.btn--primary),.portal-app p,.portal-app li,.portal-app dd{font-size:13px !important}
.ik-field label{font-size:15px !important}

/* ---------------------------------------------------------------------------
   THREE SUBHEAD SIZES  (Dante item 4, 2026-09-10)
   ---------------------------------------------------------------------------
   Below the H1 the site ran 18 heading sizes at 1280, from 17 to 51px, one
   per stylesheet. Every serif heading now sits on one of three steps:
     40  a section of the page              (S1)
     28  a band inside it, or a close        (S2)
     22  a card, a form, a column            (S3)
   and every small sans card title is one size, 17. The H1 block above still
   owns the page title. !important for the same reason as the H1s: these are
   set in eleven files at every specificity. */
main h2{
  font-size:clamp(1.75rem,3.2vw,2.5rem) !important;line-height:1.12 !important;
  /* A classless h2 fell back to the body sans on pages that do not load
     site-v1.css, which is how the property-types heading shipped in Inter. */
  font-family:"Playfair Display","Iowan Old Style",Georgia,"Times New Roman",serif !important;
  font-weight:400 !important;
}
.prose h2,.learn-next h2,.pw-route h2,.iw-close h2,.pw-deals__hd h2,
.portal-entry__card h2,.ins-essay h3,.hd-op__name,.hd-answer h3,.hd-h3{
  font-size:clamp(1.375rem,2.2vw,1.75rem) !important;line-height:1.2 !important;
}
main .x-answer h2,main .x-candidates h2,main .ik-form__head h2,main .ik-card h2,main .portal-panel h2,
.op-card--lg h3,.asset-card__t,.gl-item__term,.video-slot__t,.pt-who__col > h3,
.pt-cap h3,.pt-insight h3,.rc-spine li h3,.rc-ledger__col h3,.credit-decisions__answer h3{
  font-size:clamp(1.25rem,1.8vw,1.375rem) !important;line-height:1.25 !important;
  font-family:"Playfair Display","Iowan Old Style",Georgia,"Times New Roman",serif !important;
  font-weight:400 !important;letter-spacing:0 !important;
}
.rc-check__grid h3,.rc-set__grid h3,.rc-gap h3,.pw-req h3,.pw-ref h3,.pt-tier h3,
.iw-struct__sub,.portal-sample-card h3,.portal-permission-grid h3,.portal-question-grid h3{
  font-size:17px !important;line-height:1.3 !important;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  font-weight:650 !important;
}

/* ---------------------------------------------------------------------------
   FIVE TEXT SIZES  (Dante item 4, 2026-09-10)
   ---------------------------------------------------------------------------
   Running text was 13, 14, 15, 16 and 17px and ledes ran 14 to 19, often two
   sizes for the same job on neighbouring pages. Now:
     19  the lede, the sentence under the page title
     17  reading text, and the sentence that opens a section or a band
     15  compact text inside a card, a definition, a caption
     13  fine print (the floor, above)
   Reading text inherits 17 from <main>, so only the exceptions are listed.
   The masthead and footer set their own sizes and are not in <main>. */
main{font-size:17px}
main h1 + p,main h1 + p.lede,main h1 + p.hd-lede,main h1 + p.pw-lede,.learn-mast__lede{
  font-size:19px !important;line-height:1.55 !important;
}
.dl-lede,.dl-p,.pw-lede,.rc-sub,.rc-spine__hd p,.pw-hd p,.ins-index__head p,
.learn-glossary__head p,.learn-assets__head p,.learn-chapters__head p,.learn-video__head p,
.learn-next p,.iw-close p,.rc-spine li p,.rc-ledger__col p,.rc-quote .rc-after,.pw-status p{
  font-size:17px !important;
}
main .hd-lede,main .lede{font-size:17px !important}
.gl-item__catch,.asset-card dd,.pt-cap p,.pt-boundary p,.ik-form__head p,.ik-card > p,
.pw-chain__caption,.iw-card p,.video-slot__d,.portal-entry__copy p{
  font-size:15px !important;
}

/* ---------------------------------------------------------------------------
   DANTE RE-SCORE, 2026-09-10 (7.9): corners, hero spacing, the last off-scale
   text, the last monospace, and the label golds.
   --------------------------------------------------------------------------- */

/* ONE CORNER. Buttons were 2px everywhere while cards ran 0, 2, 3, 6, 8, 9,
   10, 12 and 13px. Cards, panels and fields take the button's 2px. 999px
   stays only on the small status pills. */
.op-card--lg,.access-card,.x-answer,.x-candidates,.x-candidate,.x-clock,.pw-chain__node,
.pw-deal,.pw-status,.iw-note,.iw-card,.ik-form,.ik-card,.ik-choice,.ik-routes a,.gl-item,
.asset-card,.video-slot,.story-hero__visual,.credit-decisions,.ins-qset,.rc-outcome,
.x-stage,.ik-truth,.mini-ledger > div,.iw-close,.pt-open__card,.learn-next,
main textarea,main select,main input:not([type=radio]):not([type=checkbox]){
  border-radius:2px !important;
}

/* HERO SPACING. On the 404 the headline, sentence and buttons touched, and on
   about the buttons sat on the lede. Every other hero runs 14-22px, then 28. */
body .access-card h1{margin-bottom:14px !important}
body .access-card .actions,body .page-hero__copy .actions{margin-top:28px !important}

/* ONE COLUMN FOR THE TEXT-ONLY HEROES. about, disclosures and privacy hide
   their media but kept the two-column grid, so the copy used 479px of 1180
   and the about H1 broke onto four lines. */
main > .page-hero .page-hero__grid{grid-template-columns:minmax(0,1fr) !important}
main > .page-hero .page-hero__copy{max-width:760px}

/* THE 404 BUTTON ICON was gold on the gold button. The map icon above the
   card was inline and shared a line box with the eyebrow, so the pair was
   centred together and the icon sat 105px left of centre. */
.access-card .btn--primary .ico{color:currentColor !important}
.access-card > .ico{display:block;margin:0 auto 28px}

/* SECONDARY BUTTONS match the primary's 48px and 15px. */
.ik-direct a,.iw-btn-line{min-height:48px !important;font-size:15px !important}

/* H4s were Inter 16/800, 16.3/600 and 19.8/600. One card-title size, the
   same as the small sans H3s above. */
main h4{
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  font-size:17px !important;font-weight:650 !important;letter-spacing:0 !important;
}

/* THE LAST TEXT OFF THE SCALE. Sentence-case text below 13px, and card text
   between the 13 and 15 steps. Uppercase labels stay at 11 by design. */
.pt-who__col span,.gl-item__def,.chapter__d,.pt-open__facts dd,
.x-candidate strong,.asset-card__go,.credit-decisions__answer > a,.iw-card > em{
  font-size:15px !important;
}
.asset-card__go,.credit-decisions__answer > a,.iw-card > em{font-weight:600 !important;letter-spacing:0 !important}
.ik-routes small,.ik-choice small,.x-stage__body small,.x-candidate small,.x-candidate > em,
.x-candidates__head > small,.steps > div,.video-slot__status,.iw-rail span,
.credit-decisions__tabs button > span,.pt-open__facts dt,.pt-subnav a{
  font-size:13px !important;
}
.x-stage__body b{font-size:15px !important;line-height:1.3 !important}
@media (max-width:640px){.x-stage__body b{font-size:13px !important}}
.op-cat,.op-st,.iw-card__go > span{font-size:11px !important}
/* The partner pages set the who-does-what line in Inter 26/500; everywhere
   else a statement that size is the serif at the band step. */
body:not(.dl-body) .pt-who__line{
  font-family:"Playfair Display","Iowan Old Style",Georgia,"Times New Roman",serif !important;
  font-size:clamp(1.375rem,2.2vw,1.75rem) !important;font-weight:400 !important;
  letter-spacing:0 !important;line-height:1.3 !important;
}

/* THE LAST MONOSPACE joins the label system: Inter 11/600 at .14em. */
.ac-lens dt,.ik-direct__t,.iw-note h4,.pw-not,.rc-outcome,.rc > cite,.gl-count,
.credit-decisions__answer > span,.ins-qset > b,.pw-chain__role,.rc-n,
.rc-check__grid h3 > span,.pw-req h3 > span{
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
  font-size:11px !important;font-weight:600 !important;letter-spacing:.14em !important;
  text-transform:uppercase !important;font-style:normal !important;
}
/* Numerals that were monospace take Inter's tabular figures instead. */
.x-stage__n,.iw-struct__sub > span,.gl-chip__n{
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif !important;
  font-variant-numeric:tabular-nums;
}

/* LABEL GOLDS. Five more golds survived on labels. They take the two eyebrow
   golds by ground: #D9A441 on navy, #7E5A1D on paper and white. */
.ik-direct__t,.pw-status__tag,.pt-who__role,.rc > cite{color:#D9A441 !important}
.iw-note h4,.asset-card__go{color:var(--accent-ink,#D9A441) !important}
.rc-tag{color:var(--accent-ink,var(--hd-accent,#D9A441)) !important}

/* PORTAL: the active sidebar tab was white on gold at 3.2:1. The dark ink the
   gold buttons use. */
.portal-nav a:hover,.portal-nav a.is-active{color:#120C02 !important}

/* ---------------------------------------------------------------------------
   DANTE RE-SCORE, 2026-09-10 (8.5): collisions, and the last text and golds
   --------------------------------------------------------------------------- */
/* Deal closing band: the heading sat 1px above its lede on all twelve deals,
   because the lede spacing lives on .dl-hd and the closing band has none. */
.dl-h2 + .dl-lede{margin-top:clamp(14px,1.8vw,20px)}
/* The deal closing CTAs were the only stretched pair on desktop (540px each).
   Sized to their labels like every other CTA; full width on a phone. */
.dl-end .dl-end__cta .dl-btn{flex:0 0 auto}
@media (max-width:640px){.dl-end .dl-end__cta .dl-btn{flex:1 1 100%}}
/* Legal prose: headings sat 1-2px above their paragraph and a paragraph
   touched the button after it. */
main .prose h2{margin:54px 0 14px}
main .prose h3{margin:36px 0 10px}
main .prose p + :not(h2):not(h3){margin-top:14px}
/* 1031: H1 to lede was 8px against 14-22 everywhere else. */
body .x-intro h1{margin-bottom:18px}

/* The last body text off the scale (Dante counted about 70 elements on 12
   pages: 13.1, 13.3, 13.5, 13.8, 14, 14.1, 14.2, 14.5, 14.6, 15.5, 16.5). */
.pt-who__col li b,.ik-choice b,.ac-lens dd span,.op-opp__m,.ik-group > legend,.ik-group__t,
main .link-arrow,.pt-ledger dt,.pt-next a span,.pt-shut__link,body.record dl dt,body.record dl dd,
.ins-index__t > span,.ik-assure li span,.pw-chain__node span,.pw-deal__nm span,.pw-deal__go,
.pw-ref ol li p,.op-lock,.op-by,.x-clock small,.pw-deals__hd a,.pt-open__loc,.pt-open__lede{
  font-size:15px !important;
}
.ins-qset li,.pw-chain__node b{font-size:17px !important}
.pw-deal__nm b{font-size:17px !important;font-weight:650 !important}
.pt-shut__meta,.pt-tier span,.pw-deals__hd small{font-size:13px !important}
.pt-st,.pt-insight__kicker,.pt-who__role,.chapter__go{font-size:11px !important}
/* Two more golds on labels, on navy. */
.ik-card--dark .ik-card__t,.pw-chain__role{color:#D9A441 !important}

/* ONE HEADLINE ACCENT PER GROUND. The gold word in the H1 ran six golds on
   navy (#D99B1B, #D9A441, #E0A536, #E4A11F, #F0AD27, #E9CB93). It takes the
   champagne the homepage and the twelve deal pages already use; on paper it
   stays the paper gold. */
.pt-hero h1 .accent,.op-open h1 .accent,.page-hero__copy h1 .accent,.story-hero--dark h1 .accent,
.credit-cockpit__intro h1 .accent,.pw h1 em,.rc h1 em,.x-intro h1 .g,.iw-hero h1 .g,.ik-hero h1 .g,
body.hd-body:not(.learn) main .wrapc > h1 .g{color:#E9CB93 !important}
/* The last stray golds off the headlines: figures and numerals. */
.x-clock b,.iw-rail b,.x-stage__go{color:#D9A441 !important}
.iw-struct__sub > span,.iw-card > em,.chapter__n{color:var(--accent-ink,#D9A441) !important}
/* The large ghost button measured 50px at 390 (12px padding, 24px line, 1px
   borders) beside 48px primaries. */
main .ck-btn--lg:not(.ck-btn--gold){padding-block:11px}
