/* ==========================================================================================
   Shared slash-lockup spec (wip-hero-fun, Oct 23 2026, Jason 11:02 AM ET). ONE source of truth for
   coteau. / INDEPENDENT · RESEARCH (public), coteau. / DESK · ACCESS (Desk) and the trader app's
   coteau. / SYSTEMATIC · STRATEGIES. Every value is relative to the wordmark size, so it scales identically.
   Measured from the shipped General Sans files (fontTools glyph bounds, UPM 1000):
     'c' (600) ink left = .0268 wm     '/' (500) ink left = -.025 of its size     stem caps (I D R E…) lsb = .0736
   Markup:
     <span class="slk" style="--slk-wm:96px">            container; font-size = wordmark size (1 wm)
       <span class="slk-wm">coteau<b>.</b></span>        or .bwx inside; wordmark at 1em
       <span class="slk-ss">
         <span class="slk-ln slk-ol-I"><i class="slk-sl">/</i>INDEPENDENT</span>
         <span class="slk-ln slk-l2 slk-ol-R"><i class="slk-sl slk-gh">/</i>RESEARCH</span>
       </span></span>
   slk-ol-<first letter> is the optical correction so every first letter's ink starts on the same x.
   ========================================================================================== */
:root{
 --slk-cap:.4;          /* caps size = .4 wm */
 --slk-gap-top:.23;     /* wordmark box bottom -> caps stack top = .23 wm (wordmark line-height 1) */
 --slk-lh:1.3;          /* caps line-height (in caps em) */
 --slk-tr:.18em;        /* caps tracking */
 --slk-sl-ml:.092em;    /* slash box offset (caps em) -> slash ink left = c ink left = .0268 wm */
 --slk-sl-w:.935em;     /* slash box width (caps em) -> word box starts at .4106 wm, first-letter ink at .44 wm */
 --slk-sl-wt:500;
 --slk-sl-c:#3EC8C9;
 --slk-c1:#F2F5FA;      /* line 1 ink (on navy); trader app may map to var(--ink) */
 --slk-c2:#AEBBD0;      /* line 2 ink (on navy); trader app may map to var(--ink-2) */
}
.slk{font-size:var(--slk-wm,72px);display:inline-flex;flex-direction:column;align-items:flex-start;width:max-content;padding:0;line-height:1}
.slk .slk-wm,.slk .bwx{font-size:1em!important;line-height:1!important;letter-spacing:-.01em!important;margin:0;padding:0}
.slk .slk-ss{display:flex;flex-direction:column;align-items:flex-start;margin:calc(var(--slk-gap-top) * 1em) 0 0;padding:0}
.slk .slk-ln{display:block;margin:0 calc(-1 * var(--slk-tr)) 0 0;padding:0;font:600 calc(var(--slk-cap) * 1em)/var(--slk-lh) "General Sans",Inter,system-ui,sans-serif;letter-spacing:var(--slk-tr);text-transform:uppercase;white-space:nowrap;color:var(--slk-c1)}
.slk .slk-ln.slk-l2{color:var(--slk-c2)}
.slk .slk-sl{display:inline-block;box-sizing:border-box;width:var(--slk-sl-w);margin:0 0 0 var(--slk-sl-ml);padding:0;font-style:normal;font-weight:var(--slk-sl-wt);letter-spacing:0;color:var(--slk-sl-c);text-align:left}
.slk .slk-sl.slk-gh{visibility:hidden}
/* first-letter optical correction (caps em) = .0736 - lsb(letter); 0 for stem letters */
.slk .slk-ln>.slk-sl{width:calc(var(--slk-sl-w) + var(--slk-ol,0em))}   /* the slash never moves; only the word start does */
.slk-ol-A{--slk-ol:.061em}.slk-ol-C,.slk-ol-G,.slk-ol-O,.slk-ol-Q{--slk-ol:.042em}.slk-ol-J{--slk-ol:.064em}.slk-ol-S{--slk-ol:.044em}
.slk-ol-T{--slk-ol:.057em}.slk-ol-V{--slk-ol:.066em}.slk-ol-W{--slk-ol:.061em}.slk-ol-X{--slk-ol:.052em}.slk-ol-Y{--slk-ol:.068em}.slk-ol-Z{--slk-ol:.033em}
/* Trader app (tops.css .ss-lk) adapter recipe: .ss-w{font-size:<wordmark px>} .ss-1{font-size:1em;margin-bottom:0}
   and give .ss-w/.ss-2/.ss-2 i the .slk / .slk-ln / .slk-sl rules above (or swap the classes in sslock()). */
/* Host pages that force a global body font (e.g. ct-cleanup.css) must not reach the lockup lines: the optical table assumes General Sans. */
html body .slk .slk-ln:not(#_):not(#__):not(#___):not(#____),html body .slk .slk-sl:not(#_):not(#__):not(#___):not(#____){font-family:"General Sans",Inter,system-ui,sans-serif!important}
