
/* skip link: visible only on keyboard focus */
.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:#0E1626;color:#F7F5F2;font:500 14px/1 var(--f-ui,system-ui);padding:14px 18px;border-radius:0 0 10px 0;text-decoration:none}
.skip-link:focus{left:0}


.art{max-width:720px;margin:0 auto}
.art .byline{display:flex;gap:22px;flex-wrap:wrap;margin:0 0 clamp(32px,3.6vw,48px);font-family:var(--f-ui);font-size:13.5px;color:var(--stone-6);padding-bottom:22px;border-bottom:1px solid var(--line-soft)}
.art .byline b{color:var(--ink);font-weight:560}
.art h2{font-family:var(--f-display);font-weight:500;font-size:clamp(22px,2vw,30px);letter-spacing:-.01em;line-height:1.2;margin:clamp(36px,4vw,54px) 0 14px}
.art p{font-size:17px;line-height:1.7;color:var(--ink-2);margin:0 0 18px;text-wrap:pretty}
.art p.lede{font-size:clamp(18px,1.5vw,21px);color:var(--ink);line-height:1.55}
.art ol,.art ul{padding-left:22px;margin:0 0 18px;color:var(--ink-2);font-size:17px;line-height:1.7}
.art li{margin:0 0 10px}
.art li b{color:var(--ink);font-weight:560}
.art blockquote{margin:clamp(30px,3vw,44px) 0;padding:0 0 0 22px;border-left:2px solid var(--sky);font-family:var(--f-display);font-weight:500;font-size:clamp(21px,1.9vw,27px);line-height:1.35;color:var(--ink);letter-spacing:-.01em}
.art a{color:var(--sky-deep);border-bottom:1px solid var(--line)}
.art .endnote{margin-top:clamp(40px,4vw,60px);padding-top:22px;border-top:1px solid var(--line-soft);font-size:14.5px;color:var(--stone-6)}
.art .endnote a{color:var(--ink)}

/* display headlines: one notch under 500 */
.lsec,.lsec span,.sec,.pghero h1,.teamhead h2,.introduo h2,.hero h1,.hero h1 em,.hero h1 .dot,.cap-head h3,.cap-left h3,.scard h3,.seccard h3,.newscard h3,.xtile h3,.tlabel,.cta-band h2,#waitlist .cta-band h2,.wz-h1,.wz-done h2,.wlm-card h3,#wlmTitle,.sechome .lsec,.sechome .lsec span,#capabilities .cap-head h3,.headblock h1,.art h1,.arthead h1,.nr-hero h1{font-weight:460!important}
.sechome .lsec,.sechome .lsec span,.teamband .lsec{font-weight:400!important}


/* one slider control across the site: a short centred hairline */
.capnav{justify-content:center!important;gap:0!important}
.capnav .capbtns{display:none!important}
.capnav .capbar{flex:0 0 auto!important;width:180px!important;max-width:60%;height:1px!important;background:rgba(20,26,46,.16)!important}
.capnav .capbar i{height:1px!important;background:rgba(20,26,46,.72)!important}
.mslider-nav{display:flex!important;align-items:center;justify-content:center!important;gap:0!important;margin-top:clamp(18px,2vw,28px)!important}
.msl-btn{display:none!important}
.mslider-dots,.capdots{width:180px;max-width:60%;margin:0 auto!important;gap:0!important;justify-content:center}
.mslider-dots i,.capdots i{flex:1 1 0;width:auto!important;height:1px!important;border-radius:0!important;background:rgba(20,26,46,.16)!important;transform:none!important;transition:background .25s}
.mslider-dots i.on,.capdots i.on{background:rgba(20,26,46,.72)!important;transform:none!important}


/* one type system everywhere: headlines SF Pro Display, everything else Figtree */
body,button,input,textarea,select{font-family:var(--f-ui)!important}
h1,h2,h3,h4,.lsec,.sec,.hero h1,.pghero h1,.cap-head h3,.stk>h3,.scard h3,.seccard h3,.newscard h3,.xtile h3,.cta-band h2,.sv-tabs .sv-tab b,.tlabel,.agl-h,.hw-h3,.hw-big,.hw-lead,.hw-kpi b,.hw-wfbar b,.hw-agl-h,#hwApp h1,#work h1,#work h2,#work .agl-h,.disp .agl-h,.turn .ans-h,.mdl h4,.wf-title{font-family:var(--f-display)!important}
#hwApp,#hwApp *:not(h1):not(.hw-big):not(.hw-kpi b):not(.hw-lead):not(.hw-wfbar b):not(.hw-agl-h):not(.hw-h3){font-family:var(--f-ui)}
#work .disp *:not(h1):not(h2):not(h3):not(.agl-h):not(.hw-big):not(.hw-lead){font-family:var(--f-ui)}
.stk *:not(h3):not(.agl-h){font-family:var(--f-ui)}
