/* CG165 · the MetaLab finish of the whole site. Loaded last on every page.
   One measured system on top of the layers below it:
   - type: eight steps only (13, 15, 17, 20, 24, 32, 40, 56), Source Serif for the headlines and the letter, Rubik for the rest;
   - spacing: a 4px grid, one section token, one card token, two radii (12 and 20), no shadows;
   - logos: every family mark sized by the cap height of its C, not by file width (--cap), baselines on one line;
   - labels: sentence case in Rubik at 13, never tracked caps in mono;
   - color: the palette and nothing else, blue #1559F5 as the only accent;
   - states: every control has hover, focus-visible and active; targets 44px.
   The living pills (kit-pill-cg153.css) and the phone shell's behaviour are not touched here. */

:root{
  --t1:13px;--t2:15px;--t3:17px;--t4:20px;--t5:24px;--t6:32px;--t7:40px;--t8:56px;
  --s-sec:96px;--s-card:24px;--s-gap:16px;--s-stack:12px;
  --r-s:12px;--r-l:20px;
  --cap:13px;
  /* the C of each master, as a share of the file's height (measured from the viewBoxes) */
  --k-group:2.2464;--k-lab:2.2464;--k-ai:2.2403;--k-system:2.2403;--k-hv:1.8288;
}
html.px-page{--px-gut:56px}
@media (width<=1023px){:root{--s-sec:72px}html.px-page{--px-gut:40px}}
@media (width<=640px){:root{--s-sec:48px;--s-card:20px}html.px-page{--px-gut:20px}}

/* ---------- logos: one optical system ---------- */
.px-brand{--cap:13px}
.px-brand img{height:calc(var(--cap) * var(--k-group))!important;width:auto!important}
.tg-sky-home .px-head .px-brand img,.tg .px-brand img{height:calc(var(--cap) * var(--k-group))!important}
.cg-pmark{--cap:14px;height:32px;margin:0 0 16px;display:flex;align-items:flex-end}
.cg-pmark img{height:auto;width:auto;max-width:100%}
.cg-pmark img.mk-system,.cg-pmark img.mk-ai{height:calc(var(--cap) * var(--k-ai))}
.cg-pmark img.mk-lab,.cg-pmark img.mk-group{height:calc(var(--cap) * var(--k-lab))}
.cg-fam{--cap:18px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px 40px;padding:32px 0;border-top:1px solid var(--px-line);border-bottom:1px solid var(--px-line);margin:0}
.cg-fam li{display:block;flex:0 0 auto}
.cg-fam img{display:block;width:auto;max-width:none}
.cg-fam img.mk-system,.cg-fam img.mk-ai{height:calc(var(--cap) * var(--k-ai))}
.cg-fam img.mk-group,.cg-fam img.mk-lab{height:calc(var(--cap) * var(--k-lab))}
.cg-famrow{padding:var(--s-sec) 0;background:var(--px-paper)}
.cg-famrow .cg-fam{border:0;padding:0}
.cg-famk{margin:0 0 24px;font:500 var(--t1)/1.25 var(--px-sans);letter-spacing:0;text-transform:none;color:var(--px-char)}
.cg-colist{--cap:14px}
.cg-colist a{display:inline-flex;align-items:center;align-self:flex-start;width:auto;padding:16px 20px;border-radius:var(--r-s);background:#fff}
.cg-colist img{display:block;height:calc(var(--cap) * var(--k-hv));width:auto}
/* the closing row: the same marks at one cap height on white chips, no spinning coins */
.tg-close .tg-coins2{--cap:10px;gap:8px;margin:0 auto 32px}
.tg-close .tg-coins2 .tg-coin,.tg-close .tg-coins2 .tg-coin.lg,.tg-close .tg-coins2 .tg-coin.md,.tg-close .tg-coins2 .tg-coin.seat{position:static;translate:none;transform:none;animation:none;width:auto;height:48px;padding:0 16px;border-radius:var(--r-s);background:#fff;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-direction:row}
.tg-close .tg-coins2 .tg-coin img{width:auto;height:calc(var(--cap) * var(--k-ai))}
.tg-close .tg-coins2 .tg-coin img.mk-hv{height:calc(var(--cap) * var(--k-hv))}
.tg-close .tg-coins2 .tg-coin img.mk-lab,.tg-close .tg-coins2 .tg-coin img.mk-group{height:calc(var(--cap) * var(--k-lab))}
.tg-close .tg-coins2 .tg-coin.seat{background:transparent;border:1px dashed #ffffff8c;color:#fff}
.tg-close .tg-coins2 .tg-coin.seat span{font:500 var(--t3)/1 var(--px-sans);color:#fff}
.tg-close .tg-coins2 .tg-coin.seat small{font:400 var(--t1)/1 var(--px-sans);color:#fff;letter-spacing:0;text-transform:none}
.tg-close .tg-coins2 .tg-coin:hover{transform:translateY(-2px);box-shadow:none}
.tg-close .tg-coins2 .tg-coin:active{transform:translateY(0)}
.tg-close .tg-coins2 .tg-coin:focus-visible{outline:2px solid #fff;outline-offset:3px}

/* ---------- labels: sentence case, Rubik, one size ---------- */
.tg-num,.cg-crit dt,.cg-fn dt,.cg-famk,.cg-orglist .ol,.tg-ft-k,.tg-lcard-k,.tg-listen-k,.tg-fit-k,.tg-fit-pk,.tg-fit-pn,.tg-fb-k,.tg-ep-k,.tg-facts dt,.tg-calc-k,.tg-plat-k,.tg-ps-k,.tg-ps-lab,.tg-rk,.tg-role,.tg-cl,.tg-wb,.tg-wp,.tg-svv,.px-askp-by,.px-asksum-k,.cg-qk,.cg-lane,.cg-stop b,.tg-mo-nk,.cg-shot figcaption,.tg-shot figcaption,.tg-mo figcaption,.tg-mtab caption,.tg-vs-t thead th,.tg-vs-t tbody th,.tg-wstats dd,.ts-as,.tg-ps-chip,.tg-ps-on,.tg-ps-src,.px-ph-chip,.tg-ft-sell .tg-ft,.tg-layers .tg-fit-k,.tg-clk h4,.fc-ex,.px-askf-try span,.px-asksum-page h3,.tg-fit-ring span{font-family:var(--px-sans)!important;font-size:var(--t1)!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.tg-num{line-height:1.25;color:var(--px-char);margin:0 0 24px;display:flex;align-items:center;gap:12px}
.tg-num span{color:var(--px-blue);font-variant-numeric:tabular-nums}
.tg-num:after{display:none}
.tg-num.w,.tg-blue .tg-num,.px-close .tg-num{color:#ffffffd9}
.tg-num.w span,.tg-blue .tg-num span{color:#fff}
.cg-cos .tg-num.w{margin-bottom:24px;justify-content:flex-start}
.cg-proof .tg-proof-p{text-align:left;margin:0 0 32px;color:#fff}
.cg-proof .tg-glass{margin-left:0}

/* ---------- type: the scale ---------- */
.cg-sec h2,main .px-sec h2,.px-sechead h2,.tg-whead h2,.tg-frail h2,.tg-essay h2{font:400 var(--t7)/1.1 var(--px-serif)!important;letter-spacing:-.02em!important;margin:0 0 16px;max-width:24ch;text-wrap:balance}
.tg-close h2{font:400 var(--t7)/1.1 var(--px-serif)!important;letter-spacing:-.02em!important;max-width:22ch;margin-left:auto;margin-right:auto}
.cg-llead .tg-big,.cg-letter h2.tg-big{font-size:var(--t7)!important;line-height:1.1!important;margin:0 0 32px}
.px-sub,.cg-struct .cg-ssub,body.tg-structure .cg-sec .px-sub,.tg-close-sub,.px-sechead .px-sub,.tg-fit-sub,.tg-proof-p{font:400 var(--t3)/1.6 var(--px-sans)!important;max-width:62ch}
.cg-struct .cg-ssub{margin:0 0 40px}
.cg-blead .px-sub{margin:0 0 24px}
.tg-h3,.cg-fit .tg-fit-head .tg-h3,.tg-figure .tg-h3,.cg-after2 .tg-h3{font:400 var(--t5)/1.2 var(--px-serif)!important;letter-spacing:-.015em!important}
.tg-fit>.tg-fit-head>.tg-h3{margin:0 0 8px!important}
.cg-fnclose{font:400 var(--t4)/1.4 var(--px-serif);max-width:40ch}
.cg-fn dd,.cg-crit dd,body.tg-structure .cg-plist li,.cg-part p,.tg-glass dd,.cg-colist span,.tg-listen-d,.px-foot .px-legal p,.px-addr,.px-addr a{font-size:var(--t2)!important;line-height:1.5!important}
.cg-fn dd{margin:8px 0 0}
.cg-fn dt{color:var(--px-ink)!important}
.cg-crit dt{color:var(--px-ink)!important}
.cg-part .cg-pnote{font-size:var(--t1)!important;color:var(--px-mute)}
.px-link,.cg-more .px-link,.tg-lmore .px-link,.tg-fm .px-link,.cg-part .cg-pgo a,.tg-close-more a,.px-links a,.tg-owns li,.tg-lcard .tg-lp,.tg-ft-lead,.px-askp-t{font-size:var(--t3)!important}
.tg-lcard .tg-lp{line-height:1.6!important}
.tg-lcard .tg-salute{font-size:var(--t4)!important}
.px-motto{font-size:var(--t6)!important;line-height:1.15!important;margin:16px 0 0!important}
.px-foot .px-legal .px-meter{font:400 var(--t1)/1.5 var(--px-mono)!important}
.px-fbtn,.px-fl,.px-fbtn span,.cg-qnext,.cg-qback,.tg-fit-reset,.tg-opt span,.tg-opt span small,.tg-fb-v,.tg-fit-n,.tg-fv-why li,.tg-fv-d,.tg-lsig span,.tg-lsig b,.px-askp-d,.px-askp-h p,.px-askp-h button,.px-askp-sug button,.px-askp-foot *,.tg-fv-t{font-size:var(--t2)!important}
.tg-q legend{font-size:var(--t4)!important;line-height:1.3!important}
.tg-fit-rn{font-size:var(--t6)!important}
.tg-fit-ring span{font-weight:400!important}
.tg-btn,.px-btn,.px-cta,.px-signin,.tg-fv-acts .px-btn,.px-alinks .px-btn,.tg-door .px-btn,.tg-who .px-alinks .px-btn{font-size:var(--t2)!important}
.px-nav a,.px-panel a{font-size:var(--t2)!important}
.tg-sky-dek{font:400 var(--t4)/1.5 var(--px-sans)!important}
.tg-pghero h1,.px-chero h1{font-size:var(--t8)!important;line-height:1.02!important;letter-spacing:-.025em!important}
.tg-pghero .px-dek,.tg-pghero .rlede,.px-dek{font:400 var(--t4)/1.5 var(--px-sans)!important}
.px-kick{font:500 var(--t1)/1.25 var(--px-sans)!important}
.tg-glass dt,.cg-home .cg-proof .tg-glass dt,.tg-proof .tg-glass dt{font-size:var(--t7)!important;line-height:1!important;font-weight:500!important}
.tg-glass>.lead dt,.cg-home .cg-proof .tg-glass>.lead dt,.tg-proof .tg-glass>.lead dt{font-size:var(--t8)!important}
.tg-glass dd,.cg-home .cg-proof .tg-glass dd{font-size:var(--t2)!important;margin-top:8px!important}
.tg-glass dd b{font-weight:500}
.tg-glass dd a{font-size:inherit!important}
.tg-listen-t{font-size:var(--t5)!important}
.tg-lcard .tg-lcard-k2{font-size:var(--t2)!important}
small,.cg-orglist .ob small,.cg-part p small{font-size:var(--t1)!important}
.px-ledger,.px-ledger *{font-size:var(--t1)!important}

/* ---------- spacing: one rhythm ---------- */
main .px-sec.cg-sec,body.tg-pg main .px-sec.cg-sec{padding-top:var(--s-sec)!important;padding-bottom:var(--s-sec)!important}
main .px-sec.cg-sec+.px-sec.cg-sec,body.tg-pg main .px-sec.cg-sec+.px-sec.cg-sec{padding-top:0!important}
main .px-sec.cg-sec+.px-sec.cg-sec>.px-wrap{padding-top:var(--s-sec)}
.cg-home .cg-proof{padding-top:var(--s-sec)!important;padding-bottom:var(--s-sec)!important}
.cg-home .tg-close,.tg-pg .tg-close{padding-top:var(--s-sec)!important;padding-bottom:var(--s-sec)!important}
.cg-sec .tg-num,.tg-head .tg-num{margin-bottom:24px!important}
.cg-org{margin:0 0 48px;padding:var(--s-card);border:1px solid var(--px-line);border-radius:var(--r-l);background:var(--px-paper2)}
.cg-fn{margin:0 0 16px;padding-top:24px;gap:16px 24px}
.cg-struct .cg-more{margin:24px 0 0}
.cg-parts{gap:var(--s-gap);margin:0 0 48px}
.cg-part{display:grid;grid-template-rows:auto auto 1fr auto;align-content:start;padding:var(--s-card);border-radius:var(--r-l);gap:8px;height:100%}
.cg-colist{margin:0 0 32px;gap:var(--s-gap)}
.cg-colist li{padding:var(--s-card);border-radius:var(--r-l);gap:12px}
.tg-glass{border-radius:var(--r-l);box-shadow:none!important}
.tg-glass>div{padding:24px!important}
.cg-letter .tg-lcard,.tg-lcard{padding:var(--s-card)!important;border-radius:var(--r-l)!important;box-shadow:none!important}
.cg-letter .tg-listen{padding:var(--s-card);border-radius:var(--r-l);gap:16px 20px}
.tg-lcard-k{margin-bottom:24px!important}
.tg-lcard-k2{margin:24px 0 8px!important}
.tg-owns{margin-bottom:24px!important}
.tg-lsig{margin-top:8px;padding-top:24px}
.tg-lmore{margin-top:24px}
.cg-crit>div{padding:16px 0;gap:16px}
.cg-fit,.tg-fit{border-radius:var(--r-l)!important;box-shadow:none!important}
.tg-fit-card{border-radius:var(--r-l)!important;box-shadow:none!important}
.tg-fit-card .tg-fit-cin,.tg-fit-cin{padding:var(--s-card)!important}
.tg-fit-prog{margin-bottom:24px}
.tg-fit-foot{margin-top:16px;padding-top:24px}
.tg-fit-head{padding:var(--s-card)!important}
.tg-fit-grid{gap:var(--s-gap)}
.tg-fit-qs{padding:var(--s-card)!important}
.cg-qnav{margin-top:24px}
.cg-qnext,.cg-qback{padding:12px 20px!important;border-radius:999px}
.tg-opt span{padding:12px 16px 12px 48px!important}
.px-askp,.tg-askwrap #px-askpage>div{border-radius:var(--r-l)!important;box-shadow:none!important}
.px-askp-h{padding:24px!important}
.px-askp-f{padding:16px 24px!important}
.px-askp-f textarea{padding:12px 16px!important;border-radius:var(--r-s)!important}
.px-askp-h button,.px-askp-sug button{padding:8px 16px!important}
.px-askp-send{padding:0!important}
.tg-close .tg-close-more{margin-top:24px}
.tg-sky-cta,.tg-close-cta{margin-top:32px}
.tg-btn{padding:0 24px!important;min-height:48px;border-radius:999px;box-shadow:none!important}
.px-btn{min-height:48px;padding:0 24px;box-shadow:none!important}
.px-cta{padding:0 24px!important}
.px-head .px-in{padding-left:24px!important;padding-right:24px!important}
.px-signin{padding:0 16px 0 12px}
.px-fbtn{padding:0 16px 0 12px!important;min-height:44px}
.tg-ft-k{margin:0 0 16px!important;color:var(--px-char)!important}
.px-motto{margin-top:16px!important}
.px-foot .px-legal{margin-top:48px;padding-top:24px;gap:12px 24px}
.tg-ft-top{padding-bottom:40px!important}
.tg-ft-grid{padding-top:40px!important}
.px-links a{display:inline-flex;align-items:center;min-height:44px;padding:0;margin:0}
.px-addr a{display:inline-flex;align-items:center;min-height:44px}
.tg-close .tg-coins2{margin-bottom:32px}
.cg-fn,.cg-crit{border-color:var(--px-line)}
.cg-sec .px-sechead{margin-bottom:32px}

/* ---------- the hero: a composition ---------- */
.cg-home .tg-sky{min-height:0;display:block;place-items:initial;text-align:left;padding:128px 0 var(--s-sec)}
.cg-home .tg-sky .px-wrap.tg-sky-in{max-width:var(--px-max);margin:0 auto;pointer-events:auto;padding-left:var(--px-gut);padding-right:var(--px-gut)}
.cg-home .tg-sky h1{font:400 var(--t8)/1.02 var(--px-serif)!important;letter-spacing:-.025em;max-width:16ch;margin:0!important;text-wrap:balance}
.cg-home .tg-sky h1 .rwi{white-space:normal}
.cg-home .tg-sky-dek{margin:24px 0 0!important;max-width:34em;color:#fff;opacity:1}
.cg-home .tg-sky-dek strong{font-weight:500}
.cg-own{display:flex;flex-wrap:wrap;gap:12px 40px;margin:40px 0 0;padding:24px 0 0;border-top:1px solid #ffffff4d;list-style:none}
.cg-own li{display:block;font:500 var(--t3)/1.3 var(--px-sans);color:#fff}
.cg-own li small{display:block;margin-top:4px;font:400 var(--t1)/1.3 var(--px-sans);color:#ffffffd9}
.cg-own li a{color:#fff;text-decoration:none;display:inline-block;padding:12px 0;margin:-12px 0}
.cg-own li a:hover{text-decoration:underline;text-underline-offset:4px}
.cg-own li a:focus-visible{outline:2px solid #fff;outline-offset:3px;border-radius:4px}
.cg-own li a:active{opacity:.8}
.cg-home .tg-sky-cta{justify-content:flex-start;margin:40px 0 0}
.cg-home .tg-bl{opacity:.9}
@media (width<=640px){.cg-home .tg-sky{padding-top:96px}.cg-home .tg-sky h1{font-size:var(--t7)!important}.cg-own{gap:16px;margin-top:32px}}

/* ---------- the chart: a designed object ---------- */
.cg-org svg{max-width:992px;font-family:var(--px-sans)}
.cg-org .bx{fill:#fff;stroke:var(--px-line2);stroke-width:1.5}
.cg-org .bx.add{stroke-dasharray:4 4;fill:transparent}
.cg-org .bx.top{fill:var(--px-blue);stroke:var(--px-blue);stroke-width:1.5}
.cg-org .ln{fill:none;stroke:var(--px-line2);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.cg-org .tx{fill:var(--px-ink);font-size:15px;font-weight:500;letter-spacing:0}
.cg-org .tx.top{fill:#fff;font-size:17px}
.cg-org .sub{fill:var(--px-char);font-size:13px;font-weight:400}
.cg-org .sub.top{fill:#fff}
.cg-org .lab{fill:var(--px-ink);font-family:var(--px-sans);font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}
.cg-org .edge{fill:var(--px-char);font-size:13px;font-weight:400;text-anchor:start}
@media (width<=640px){
  .cg-org{padding:0;border:0;border-radius:0;background:transparent}
  .cg-orglist ul{margin:12px 0 0 16px;padding:0 0 0 16px;border-left:1.5px solid var(--px-line2);gap:8px}
  .cg-orglist ul ul{border-left-color:var(--px-line2)}
  .cg-orglist ul li{position:relative}
  .cg-orglist ul li::before{content:"";position:absolute;left:-16px;top:24px;width:12px;height:1.5px;background:var(--px-line2)}
  .cg-orglist .ob{padding:12px 16px;border:1.5px solid var(--px-line2);border-radius:var(--r-s);background:#fff;font:500 var(--t2)/1.35 var(--px-sans);color:var(--px-ink)}
  .cg-orglist .ob.top{background:var(--px-blue);border-color:var(--px-blue);color:#fff;font-size:var(--t3)}
  .cg-orglist .ob.top small{color:#fff}
  .cg-orglist .ob.add{border-style:dashed;background:transparent}
  .cg-orglist .ob small{margin-top:4px;font:400 var(--t1)/1.4 var(--px-sans);color:var(--px-char)}
  .cg-orglist .ol{margin:16px 0 0;font:500 var(--t1)/1.4 var(--px-sans)!important;color:var(--px-ink)}
  .cg-orglist .ol small{display:block;margin-top:0;font:400 var(--t1)/1.4 var(--px-sans);color:var(--px-char)}
}

/* ---------- the three doors ---------- */
.cg-part .cg-pk{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;margin:0}
.cg-part{position:relative}
.cg-part h3{font:500 var(--t3)/1.35 var(--px-sans)!important;letter-spacing:0!important;color:var(--px-ink);margin:0;text-wrap:normal!important}
.cg-part p{font:400 var(--t2)/1.5 var(--px-sans)!important;color:var(--px-char);text-wrap:normal!important}
.cg-part p+p{margin-top:0}
.cg-part .cg-pgo{margin:0;padding-top:16px;line-height:1.4}
.cg-part .cg-pgo a{font:500 var(--t2)/1.4 var(--px-sans)!important;color:var(--px-blue);display:inline-block;padding:12px 0;margin:-12px 0;min-height:0}
.cg-part .cg-pnote{font:400 var(--t2)/1.4 var(--px-sans)!important;color:var(--px-char);margin:0;padding-top:16px;display:block}
.cg-part:hover{transform:translateY(-2px)}
.cg-part{transition:transform .2s var(--ease-out,ease)}
.cg-part .cg-pgo a:active{opacity:.75}
.cg-part .cg-pgo a:focus-visible{outline:2px solid var(--px-blue);outline-offset:3px;border-radius:4px}

/* ---------- states: every control ---------- */
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--px-blue);outline-offset:3px}
.tg-blue a:focus-visible,.tg-blue button:focus-visible,.px-close a:focus-visible,.tg-fit-card a:focus-visible,.tg-fit-card button:focus-visible{outline-color:#fff}
.px-nav a,.px-panel a,.px-links a,.tg-close-more a,.px-link,.tg-owns a,.tg-glass dd a,.px-addr a,.tg-listen-d a,.tg-listen-t a,.cg-part .cg-pgo a,.px-lg{transition:color .15s,opacity .15s,text-decoration-color .15s}
.px-nav a:hover,.px-panel a:hover,.px-links a:hover,.px-addr a:hover,.tg-owns a:hover,.tg-listen-d a:hover{color:var(--px-blue)!important}
.px-nav a:active,.px-panel a:active,.px-links a:active,.tg-close-more a:active,.px-link:active,.tg-owns a:active,.tg-glass dd a:active,.px-addr a:active,.tg-listen-d a:active,.tg-listen-t a:active,.px-fbtn:active,.tg-btn:active,.px-btn:active,.px-cta:active,.px-signin:active,.sh-ask:active,.px-lg:active{opacity:.7;transform:none}
.tg-btn:hover,.px-btn:hover,.px-cta:hover{transform:translateY(-1px);box-shadow:none!important}
.tg-btn:active,.px-btn:active,.px-cta:active{transform:translateY(0)}
.px-fbtn:hover{border-color:var(--px-ink);color:var(--px-ink)}
.px-fbtn:focus-visible{outline:2px solid var(--px-blue);outline-offset:3px}
.tg-close-more a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.px-menu summary:hover span{background:var(--px-blue)}
.px-menu summary:active{opacity:.7}
.px-nav a{display:inline-flex;align-items:center;min-height:44px}
.px-lg{display:inline-flex;align-items:center;min-height:44px}
.px-lg:hover{opacity:.85}
.tg-owns a,.tg-glass dd a,.tg-listen-d a{text-underline-offset:3px}
.tg-opt:hover span{border-color:var(--px-blue)}
.tg-opt input:focus-visible+span{outline:2px solid var(--px-blue);outline-offset:2px}
.tg-opt:active span{opacity:.8}
.cg-qnext:hover,.cg-qback:hover,.tg-fit-reset:hover,.px-askp-sug button:hover,.px-askp-h button:hover,.px-askp-send:hover{opacity:.85}
.cg-qnext:active,.cg-qback:active,.tg-fit-reset:active,.px-askp-sug button:active,.px-askp-h button:active,.px-askp-send:active{opacity:.7}
.sh-ask:hover{opacity:.85}
.px-askf-try:hover,.px-askp-t a:hover{color:var(--px-blue)}
@media (prefers-reduced-motion:reduce){.cg-part,.tg-btn,.px-btn,.px-cta,.tg-close .tg-coins2 .tg-coin{transition:none;transform:none!important}}

/* ---------- the phone shell: the bars share the scale, nothing else changes ---------- */
html.sh-on{--ap-cap:var(--t1);--ap-fn:var(--t1);--ap-sub:var(--t2);--ap-body:var(--t3);--ap-hl:var(--t3);--ap-t3:var(--t4);--ap-t2:var(--t5);--ap-t1:var(--t6);--ap-lt:var(--t6);--ap-read:var(--t4);--ap-r1:var(--r-s);--ap-r2:var(--r-s);--ap-r3:var(--r-l)}
html.sh-on .sh-tab span{font-size:var(--t1)!important}
html.sh-on .sh-head-t,html.sh-on .sh-title{font-size:var(--t3)!important}
html.sh-on main>section#top.cg-sky .tg-sky-dek{font-size:var(--t2)!important}
html.sh-on main>section#top.cg-sky{height:auto!important;padding:48px 0 0!important;border-radius:var(--r-l)!important;box-shadow:none!important}
html.sh-on main>section#top.cg-sky .tg-sky-in{position:relative!important;padding:0 20px 24px!important}
html.sh-on main>section#top.cg-sky h1{font-size:var(--t7)!important;font-weight:400!important}
html.sh-on main .cg-own{margin-top:24px;padding-top:24px;gap:16px}
html.sh-on main .cg-own{padding-bottom:24px}
html.sh-on main>section.tg-close{border-radius:var(--r-l)!important}
html.sh-on main>section.tg-close .tg-coins2 .tg-coin{border:1px solid var(--px-line)}
html.sh-on main>section.tg-close .tg-coins2 .tg-coin.seat{border-color:var(--px-line2);color:var(--px-ink)}
html.sh-on main>section.tg-close .tg-coins2 .tg-coin.seat span,html.sh-on main>section.tg-close .tg-coins2 .tg-coin.seat small{color:var(--px-ink)}
html.sh-on main .cg-org{padding:0;border:0;background:transparent}
html.sh-on main .tg-num{font:500 var(--t1)/1.25 var(--px-sans)!important;letter-spacing:0!important;text-transform:none!important}

/* ---------- the /structure/ page ---------- */
body.tg-structure .cg-parent .cg-org{margin:40px 0 0}
body.tg-structure .cg-parent .cg-ssub{margin-bottom:16px}
body.tg-structure .cg-parent+.cg-fn{margin-top:40px}
body.tg-structure .cg-fam{border-bottom:0;padding-bottom:0}
body.tg-structure .cg-plist{gap:8px}
body.tg-structure .cg-plist li{padding-left:20px}
body.tg-structure .cg-plist li:before{width:8px;height:1.5px;top:.75em}
body.tg-structure .cg-plist b{font-weight:500;color:var(--px-ink)}

/* ---------- widths ---------- */
@media (width<=980px){.cg-fam{justify-content:flex-start;gap:24px 40px}}
@media (width<=640px){
  .cg-fam{--cap:14px;gap:20px 32px;padding:24px 0}
  .cg-pmark{--cap:13px}
  .tg-close .tg-coins2{--cap:9px;flex-wrap:wrap;gap:8px}
  .tg-close .tg-coins2 .tg-coin,.tg-close .tg-coins2 .tg-coin.lg,.tg-close .tg-coins2 .tg-coin.md,.tg-close .tg-coins2 .tg-coin.seat{height:44px;padding:0 12px}
  .cg-colist{--cap:13px}
  .cg-sec h2,main .px-sec h2,.px-sechead h2,.tg-whead h2,.tg-frail h2,.tg-essay h2,.tg-close h2,.cg-llead .tg-big,.cg-letter h2.tg-big{font-size:var(--t6)!important}
  .tg-pghero h1,.px-chero h1{font-size:var(--t7)!important}
  .tg-glass dt,.cg-home .cg-proof .tg-glass dt,.tg-proof .tg-glass dt{font-size:var(--t6)!important}
  .tg-glass>.lead dt,.cg-home .cg-proof .tg-glass>.lead dt,.tg-proof .tg-glass>.lead dt{font-size:var(--t7)!important}
  .px-motto{font-size:var(--t5)!important}
}

/* ---------- the sweep: targets, the skip link, the nav, the last off-grid values ---------- */
.px-skip{font-size:var(--t2)!important;padding:12px 16px!important}
.px-nav a{padding:12px 0!important}
.tg-qn{font-size:var(--t1)!important}
.px-foot .px-links a,.px-foot nav.px-links a{display:inline-flex!important;align-items:center;min-height:44px!important;padding:0!important;margin:0!important;line-height:1.3}
.tg-fm .px-link,.px-link{min-height:44px!important}
.cg-qnav button,.cg-qnext,.cg-qback,.tg-fit-reset{min-height:44px!important;padding:0 20px!important}
.tg-listen-k{margin-bottom:8px!important}
.tg-lmore,.tg-lcard .tg-lmore{margin-top:24px!important}
.tg-fit-prog{margin-bottom:24px!important}
.tg-qw,.tg-qw.is-next{margin-bottom:24px!important;padding-bottom:24px!important}
.tg-fit-card.tg-blue{padding-top:24px!important;padding-bottom:24px!important}
.tg-fit-foot{margin-top:16px!important;padding-top:24px!important}
.px-askp-h img{padding:4px!important}
.cg-tablist [role=tab],.cg-tablist button{min-height:44px!important}
.px-lis-b,.px-lis-pp{min-height:44px!important;height:44px!important}
.cg-strip-pv,.cg-strip-nx{min-height:44px!important;min-width:44px!important}
.px-toc a,.px-anc,.tg-contents a{min-height:44px!important;display:inline-flex!important;align-items:center}
.tg-ft{margin:0 0 16px!important}
.tg-ft-lead{margin-bottom:24px!important}
.px-btn{padding-left:24px!important;padding-right:24px!important}
.px-pub,.px-author a{display:inline-flex;align-items:center;min-height:44px}
.px-byl a{min-height:44px}
.px-byl+.px-follow,.px-art .px-follow{margin-bottom:24px}
@media (width<=640px){.px-foot .px-links a,.px-foot nav.px-links a{font-size:var(--t2)!important}}
.tg-mviews button{min-height:44px!important;padding:0 16px!important}
.tg-ph-wrap figcaption a{min-height:44px!important;padding:0 16px!important}
.tg-os-l a{display:inline-flex!important;align-items:center;min-height:44px!important}
nav.toc a{display:flex!important;align-items:center;min-height:44px!important;padding:0 12px!important}
/* the universal layer: a control is never still under the pointer, the keyboard or the thumb */
html body :is(a[href],button,summary):hover{filter:brightness(.93)}
html body :is(a[href],button,summary):active{opacity:.72!important}
html body :is(input,textarea,select):hover{border-color:var(--px-blue)!important;box-shadow:0 0 0 1px var(--px-blue)}
html body :is(input,textarea,select):active{opacity:.9}
html body :is(a,button,summary,input,textarea,select,[tabindex]):focus-visible{outline:2px solid var(--px-blue)!important;outline-offset:3px!important}
html body :is(.tg-blue,.px-close,.tg-fit-card,.tg-pghero,.px-ahero.tg-blue) :is(a,button,summary,input,textarea,[tabindex]):focus-visible{outline-color:#fff!important}
/* the last off-grid values: the letter's paragraphs, the shell's bars, the photo strip, the 404 on phones */
.px-art .prose>p,.px-art .prose .section>p,.px-art .prose .closing>p{margin:0 0 24px!important}
.sh-tabs{padding-left:max(8px,var(--sh-sl))!important;padding-right:max(8px,var(--sh-sr))!important}
html.sh-on main section>.tg-num.ap-sh{padding-bottom:12px!important}
.tg-shot figcaption{padding:8px 12px!important}
.tg-wall .tg-shot figcaption{padding:8px!important}
.cg-strip-pv,.cg-strip-nx{padding:0 8px!important}
html.sh-on main>section.px-mini .px-404{font-size:var(--t8)!important}
.px-mini .px-404{font-size:var(--t8)!important;margin-bottom:24px!important}
.px-receipt .px-src{font-size:var(--t1)!important;font-family:var(--px-sans)!important}
html.sh-on body .px-art .prose>p,html.sh-on body .px-art .prose .section>p,html.sh-on body .px-art .prose .closing>p,html.sh-on body .tg-salute,html.sh-on body main article.tg-lcard .tg-salute{margin-bottom:24px!important}
html.sh-on .tg-letterpage main .prose>p,html.sh-on .tg-letterpage main .prose p.tg-salute{margin:0 0 24px!important}
/* the headline law, above every earlier layer: one size per level on every page */
main h1:not(#a):not(#b),.tg-pghero h1:not(#a):not(#b),.px-chero h1:not(#a):not(#b){font-size:var(--t8)!important;line-height:1.02!important;letter-spacing:-.025em!important;font-weight:400!important}
main h2:not(#a):not(#b){font-size:var(--t7)!important;line-height:1.1!important;letter-spacing:-.02em!important;font-weight:400!important}
main h3:not(#a):not(#b):not(.cg-part h3){font-size:var(--t5)!important;line-height:1.2!important}
.px-dek:not(#a):not(#b),.tg-pgdek:not(#a):not(#b),.rlede:not(#a):not(#b),.tg-pghero p:not(#a):not(#b):not(.px-kick):not(.tg-num):not(.px-404){font-family:var(--px-sans)!important;font-size:var(--t4)!important;line-height:1.5!important}
@media (width<=640px){
  main h1:not(#a):not(#b),.tg-pghero h1:not(#a):not(#b),.px-chero h1:not(#a):not(#b){font-size:var(--t7)!important}
  main h2:not(#a):not(#b){font-size:var(--t6)!important}
  main h3:not(#a):not(#b):not(.cg-part h3){font-size:var(--t4)!important}
  .px-dek:not(#a):not(#b),.tg-pgdek:not(#a):not(#b),.rlede:not(#a):not(#b),.tg-pghero p:not(#a):not(#b):not(.px-kick):not(.tg-num):not(.px-404){font-size:var(--t3)!important}
}
/* numbers and small keys in the UI face too; mono stays only for the meter and code */
.tg-k,.tg-wn,.tg-days b,.tg-flow b,.tg-join b,.tg-leg b,.tg-clk b,.tg-lyn,.cg-layers,.px-art .px-hk,.px-no,.px-art .section-number b,.px-art .toc a b,.px-art .morecard .mt b,.px-byl,.px-meta,.px-call,.px-who,.px-ctime,.px-chip b,.tg-curve .lb,.tg-calc-scale,.tg-fit-n,.tg-map .cn,.tg-map .m-east,.tg-map .m-hq .hl,.tg-no,.px-pill,.px-ledger,.px-lis-time,.px-lis-k span,.px-dk-time,.px-rbar-n,.px-play,.px-askp-cite,.px-askp-src b,.px-asksum-page small,.cg-tablist [role=tab] span,.tg-ph-wrap figcaption .tg-ph-name .px-pill,.tg-ps-coach em,.tg-ps-row2 b,.tg-ps-rows b,.tg-li:before,.tg-nevers li:before,.tg-rules li:before,.px-ask-n,.px-ask-x,.px-sd-x,.px-lis-b{font-family:var(--px-sans)!important;letter-spacing:0!important;text-transform:none!important}
.ts-get h2:not(#a):not(#b){font:500 var(--t1)/1.25 var(--px-sans)!important;letter-spacing:0!important;text-transform:none!important;color:#fff;margin:0 0 16px}
.ts-dek:not(#a):not(#b){font-family:var(--px-sans)!important;font-size:var(--t4)!important;line-height:1.5!important}
.px-mini .px-404:not(#a):not(#b){font:400 var(--t8)/1 var(--px-serif)!important;letter-spacing:-.02em!important;margin:0 0 16px!important}
.px-mini .px-404 span{color:#fff}
.px-mini h1:not(#a):not(#b){margin-left:auto!important;margin-right:auto!important}
.px-mini .px-404:not(#a):not(#b){text-align:center}
.px-art .px-follow:not(#a):not(#b){margin-bottom:24px!important}
@media (width<=640px){.cg-orglist>li>.ol:first-of-type{font-weight:400!important;color:var(--px-char);margin-top:12px}}
