/* =====================================================================================
   fComply animated infographics (staging-build/components_ig.py; behaviour in js/fc-ig.js).
   Three components, one white panel each: funding (who covers whom), ledger (cost lines with
   counting figures) and fee-range (a min-to-max track with state markers). Every build animation
   is driven by .fc-in on the panel, which js/fc-scroll.js or js/fc-ig.js adds as it scrolls into
   view; without JavaScript (html without .fc-js) everything renders finished. Chrome follows the
   category colour variables (--cat-a/--cat-b/--cat-c/--cat-ink, set by the body class); the data
   marks keep the site's fixed palette: orange for the finding, grey for the general and lapsed.
   ===================================================================================== */
.fc-ig{--ig-ink:#16191f;--ig-grey:#5f6772;--ig-hair:#e6e8ee;--ig-orange:#f26430;--ig-orange-ink:#c94e22;--ig-grey-line:#c9cbe8;
  --ig-a:var(--cat-a,#0809ff);--ig-c:var(--cat-c,#eaeaff);--ig-ink2:var(--cat-ink,#0809ff);
  --ig-cols:minmax(0,1fr) minmax(120px,.55fr) minmax(0,1fr);
  position:relative;background:#fff;border-radius:22px;padding:30px 32px 26px;margin:8px 0 22px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.12);font-family:"Plus Jakarta Sans",sans-serif;color:var(--ig-ink);
  font-kerning:normal;-webkit-font-smoothing:antialiased}
.fc-ig :where(ol,ul,li){list-style:none;margin:0;padding:0}
.fc-ig li{list-style:none!important}
.fc-ig li::marker{content:""}
.fc-ig b,.fc-ig strong{font-weight:700}
.fc-ig .fc-nw{white-space:nowrap}
.fc-ig-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}

/* --- head: eyebrow with the category rule, a short title whose <em> takes the serif italic, one line of intro --- */
.fc-ig-head{margin:0 0 26px}
.fc-ig-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 12px;font:700 .74rem/1.4 "Plus Jakarta Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--ig-ink2);font-feature-settings:"c2sc","smcp"}
.fc-ig-eyebrow::before{content:"";display:inline-block;width:26px;height:2px;border-radius:2px;background:var(--ig-a);flex:0 0 auto}
.fc-ig-title{margin:0;font:700 clamp(1.45rem,1.2rem + 1vw,2.05rem)/1.15 "Plus Jakarta Sans",sans-serif;letter-spacing:-.025em;color:var(--ig-ink);max-width:32ch;text-wrap:balance}
.fc-ig-title em,.fc-ig em.fc-serif{font-family:"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;font-style:italic;font-weight:400;font-size:1.06em;letter-spacing:-.012em;color:var(--ig-ink2)}
.fc-ig-intro{margin:10px 0 0;font-size:var(--fc-small,.95rem);line-height:1.55;color:var(--ig-grey);max-width:62ch;text-wrap:pretty}

/* --- funding: sources left, populations right, connectors in the gutter --- */
.fc-ig-heads{display:grid;grid-template-columns:var(--ig-cols);margin:0 0 2px}
.fc-ig-heads span{font:700 .7rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--ig-grey);padding:0 0 10px 16px}
.fc-ig-grid{position:relative;display:grid;grid-template-columns:var(--ig-cols);align-items:stretch}
.fc-ig-src,.fc-ig-tgt{display:grid;grid-template-rows:repeat(var(--n,5),minmax(0,1fr));min-width:0}
.fc-ig-card{margin:6px 0;border-radius:14px;padding:15px 18px;min-width:0}
.fc-ig-s{position:relative;display:flex;flex-direction:column;justify-content:center;gap:4px;background:#f6f7fb;padding-left:21px;
  opacity:0;transform:translateX(-14px);--d:calc(var(--i,0)*.12s);transition:opacity .55s ease var(--d),transform .55s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-ig-s::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:2px;background:var(--ig-a)}
.fc-ig-s.k-general::before{background:var(--ig-grey-line)}
.fc-ig-s.k-mandate::before{background:var(--ig-orange)}
.fc-ig-s.k-mandate{background:#fdf3ee}
.fc-ig-s.k-lapsed::before{background:color-mix(in srgb,var(--ig-a) 40%,#fff)}
.fc-ig-k{font:700 .66rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:.11em;text-transform:uppercase;color:var(--ig-ink2)}
.k-general .fc-ig-k,.k-lapsed .fc-ig-k{color:var(--ig-grey)}
.k-mandate .fc-ig-k{color:var(--ig-orange-ink)}
.fc-ig-l{display:block;font:700 1.02rem/1.25 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:var(--ig-ink);text-wrap:balance}
.fc-ig-f{display:block;font:500 .84rem/1.4 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey);text-wrap:pretty;font-variant-numeric:tabular-nums lining-nums}
.fc-ig-t{display:grid;grid-template-columns:auto minmax(0,1fr) auto;column-gap:14px;align-items:center;background:var(--ig-c);
  opacity:0;transform:translateX(14px);--d:calc(.15s + var(--i,0)*.12s);
  transition:opacity .55s ease var(--d),transform .55s cubic-bezier(.2,.7,.2,1) var(--d),background .45s ease var(--gd,2.8s),box-shadow .45s ease var(--gd,2.8s)}
.fc-ig-tx{display:flex;flex-direction:column;gap:2px;min-width:0}
.fc-ig-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:22%;background:#fff;box-shadow:0 14px 28px -18px rgba(22,25,31,.35),0 1px 3px rgba(22,25,31,.06)}
.fc-ig-icon .fc-ic{width:64%}
.fc-in .fc-ig-s,.fc-in .fc-ig-t{opacity:1;transform:none}
/* the empty cell: the population the mandate points at, with nothing dedicated behind it */
.fc-in .fc-ig-t.is-gap{background:#fff;box-shadow:inset 0 0 0 2px var(--ig-orange)}
.fc-ig-gap{display:flex;flex-direction:column;align-items:flex-end;text-align:right;line-height:1;padding-left:6px;
  opacity:0;transform:scale(.6);transform-origin:right center;transition:opacity .35s ease var(--gd,2.8s),transform .7s cubic-bezier(.34,1.56,.64,1) var(--gd,2.8s)}
.fc-in .fc-ig-gap{opacity:1;transform:none}
.fc-ig-gap-n{font:800 2.1rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:-.04em;color:var(--ig-orange);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}
.fc-ig-gap-w{font:800 .78rem/1.25 "Plus Jakarta Sans",sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--ig-orange);max-width:11ch;text-wrap:balance}
.fc-ig-gap-t{margin-top:5px;font:700 .6rem/1.25 "Plus Jakarta Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--ig-orange-ink);max-width:10ch;text-wrap:balance}
/* connectors: a 100x100 box stretched over the gutter is the static state (first paint, no JavaScript): plain solid strokes,
   because WebKit mis-renders dashes under a non-uniform viewBox. fc-ig.js measures the cards, redraws in pixels (.is-px,
   pathLength = measured length in --len) and only then dashes and draws the lines on. */
.fc-ig-gutter{position:relative;min-width:0}
.fc-ig-lines{position:absolute;inset:0;width:100%;height:100%;display:block;overflow:visible}
.fc-ig-link{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:.5;--ld:calc(.5s + var(--j,0)*.22s);transition:none}
.fc-ig-link.k-covers{stroke:var(--ig-a)}
.fc-ig-link.k-general{stroke:#bfc2dc;stroke-width:.3}
.fc-ig-link.k-mandate{stroke:var(--ig-orange)}
.fc-ig-link.is-dash{opacity:0}
html.fc-js .fc-ig-lines:not(.is-px) .fc-ig-link{opacity:0}
.fc-ig-lines.is-px .fc-ig-link{stroke-width:2.6;stroke-dasharray:var(--len,1000);stroke-dashoffset:var(--len,1000)}
.fc-ig-lines.is-px .fc-ig-link.k-general{stroke-width:1.6}
.fc-ig-lines.is-px .fc-ig-link.is-dash{stroke-dasharray:8 6;stroke-dashoffset:0}
.fc-in .fc-ig-lines.is-px .fc-ig-link{stroke-dashoffset:0;transition:stroke-dashoffset 1.1s cubic-bezier(.2,.7,.2,1) var(--ld),opacity .5s ease calc(var(--ld) + 1.1s)}
/* the orange line draws solid, then dissolves into dashes: the requirement is there, the money is not */
.fc-in .fc-ig-lines.is-px .fc-ig-link.k-mandate:not(.is-dash){opacity:0}
.fc-in .fc-ig-lines.is-px .fc-ig-link.is-dash{opacity:1}
/* legend */
.fc-ig-legend{display:flex;flex-wrap:wrap;gap:8px 22px;margin:20px 0 0;font-size:.86rem;line-height:1.35;color:var(--ig-grey)}
.fc-ig-legend li{display:flex;align-items:center;gap:9px}
.fc-ig-legend i{display:inline-block;width:26px;height:0;border-top:3px solid var(--ig-a);border-radius:2px;flex:0 0 auto}
.fc-ig-legend i.k-general{border-top:2px solid var(--ig-grey-line)}
.fc-ig-legend i.k-mandate{border-top:3px dashed var(--ig-orange)}
.fc-ig-legend i.who-state,.fc-ig-legend i.who-mixed,.fc-ig-legend i.who-applicant{width:12px;height:12px;border:0;border-radius:50%}
.fc-ig-legend i.who-state{background:#0809ff}.fc-ig-legend i.who-mixed{background:#8f90ff}.fc-ig-legend i.who-applicant{background:var(--ig-orange)}

/* --- ledger: one cost line at a time, a hairline drawing under each, the figure counting --- */
.fc-ig-rows{border-top:1px solid var(--ig-hair)}
.fc-ig-row,.fc-ig-foot{position:relative;display:grid;grid-template-columns:2.4rem minmax(0,1fr) minmax(220px,.62fr);gap:4px 24px;padding:20px 0 18px}
.fc-ig-row{opacity:0;transform:translateY(10px);--d:calc(var(--i,0)*.14s);transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-ig-row::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ig-hair);transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--d) + .25s)}
.fc-in .fc-ig-row{opacity:1;transform:none}
.fc-in .fc-ig-row::after{transform:none}
.fc-ig-row-n{font:800 .78rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:.08em;color:var(--ig-ink2);padding-top:.4rem;font-variant-numeric:tabular-nums}
.fc-ig-row-l b{display:block;font:700 1.1rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:var(--ig-ink);text-wrap:balance}
.fc-ig-row-l span{display:block;margin-top:5px;font-size:.92rem;line-height:1.5;color:var(--ig-grey);max-width:52ch;text-wrap:pretty}
.fc-ig-row-fig{min-width:0}
.fc-ig-num{display:block;font:800 clamp(1.7rem,1.4rem + 1vw,2.3rem)/1 "Plus Jakarta Sans",sans-serif;letter-spacing:-.035em;color:var(--ig-ink2);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}
.fc-ig-pre,.fc-ig-suf{font-size:.62em;font-weight:700;opacity:.9}
.fc-ig-suf{margin-left:.06em}
.fc-ig-num.is-static{font-size:clamp(1.3rem,1.05rem + .8vw,1.75rem);letter-spacing:-.02em;line-height:1.15}
.fc-ig-num.is-empty{color:var(--ig-grey-line);font-size:1.8rem}
.t-orange .fc-ig-num{color:var(--ig-orange)}.t-dark .fc-ig-num{color:var(--ig-ink)}
.fc-ig-fig-sub{display:block;margin-top:7px;font-size:.84rem;line-height:1.45;color:var(--ig-grey);max-width:36ch;text-wrap:pretty}
.fc-ig-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.fc-ig-foot{opacity:0;transition:opacity .5s ease calc(var(--i,6)*.14s + .2s)}
.fc-in .fc-ig-foot{opacity:1}
.fc-ig-foot.has-total{border-top:2px solid var(--ig-ink);margin-top:-1px}
.fc-ig-foot.no-total{border-top:2px dashed var(--ig-grey-line);margin-top:-1px}
.fc-ig-foot .fc-ig-row-l b{color:var(--ig-ink)}
.fc-ig-foot.no-total .fc-ig-row-l b{color:var(--ig-grey)}

/* --- fee-range: two figures at the ends, a band that fills, pins that drop onto the track --- */
.fc-ig-range-wrap{padding:6px 0 0}
.fc-ig-ends{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:0 0 10px}
.fc-ig-end{display:flex;flex-direction:column;gap:5px;max-width:46%}
.fc-ig-end.hi{text-align:right;align-items:flex-end}
.fc-ig-end .fc-ig-num{color:var(--ig-ink)}
.fc-ig-end>span{font-size:.84rem;line-height:1.45;color:var(--ig-grey);text-wrap:balance}
.fc-ig-track{position:relative;height:14px;border-radius:7px;background:#f4f5f8;margin:78px 8px 80px}
.fc-ig-band{position:absolute;inset:0;border-radius:7px;background:color-mix(in srgb,var(--ig-a) 16%,#e6e8f2);transform:scaleX(0);transform-origin:left;transition:transform 1.2s cubic-bezier(.2,.7,.2,1) .2s}
.fc-in .fc-ig-band{transform:none}
.fc-ig-pin{position:absolute;left:var(--x);top:50%;width:0;display:flex;flex-direction:column;align-items:center;color:#8f90ff;
  opacity:0;transform:translateY(-10px);--d:calc(.9s + var(--i,0)*.2s);transition:opacity .4s ease var(--d),transform .6s cubic-bezier(.34,1.56,.64,1) var(--d)}
.fc-ig-pin.up{top:auto;bottom:50%;flex-direction:column-reverse;transform:translateY(10px)}
.fc-in .fc-ig-pin{opacity:1;transform:none}
.fc-ig-pin.who-state{color:#0809ff}.fc-ig-pin.who-mixed{color:#8f90ff}.fc-ig-pin.who-applicant{color:var(--ig-orange)}.fc-ig-pin.who-fee{color:var(--ig-a)}
.fc-ig-pin i{position:relative;display:block;width:14px;height:14px;margin-top:-7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #fff;flex:0 0 auto}
.fc-ig-pin.up i{margin-top:0;margin-bottom:-7px}
.fc-ig-pin i::after{content:"";position:absolute;left:50%;top:100%;width:2px;height:20px;margin-left:-1px;background:currentColor;opacity:.55}
.fc-ig-pin.up i::after{top:auto;bottom:100%}
.fc-ig-pin b{margin-top:26px;font:800 .98rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:-.02em;color:var(--ig-ink);white-space:nowrap;font-variant-numeric:tabular-nums lining-nums}
.fc-ig-pin.up b{margin-top:0;margin-bottom:26px}
.fc-ig-pin em{margin-top:4px;font:600 .74rem/1.2 "Plus Jakarta Sans",sans-serif;font-style:normal;letter-spacing:.02em;color:var(--ig-grey);white-space:nowrap}
.fc-ig-pin.up em{margin-top:0;margin-bottom:4px}
.fc-ig-aside{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:4px 0 0;font-size:.86rem;color:var(--ig-grey)}
.fc-ig-aside-k{margin-right:4px}
.fc-ig-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 9px;border-radius:999px;background:#f6f7fb;font:700 .8rem/1 "Plus Jakarta Sans",sans-serif;color:var(--ig-ink)}
.fc-ig-chip::before{content:"";width:9px;height:9px;border-radius:50%;background:#8f90ff}
.fc-ig-chip.who-state::before{background:#0809ff}.fc-ig-chip.who-applicant::before{background:var(--ig-orange)}
.fc-ig-range .fc-ig-legend{margin-top:16px}

/* --- years: a strip of tiles (filled, hollow, half-filled) that pop in left to right, with counting figures --- */
.fc-ig-years-wrap{display:block}
.fc-ig-tiles{display:grid;grid-template-columns:repeat(var(--n,15),minmax(0,1fr));gap:6px}
.fc-ig-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:58px;padding:8px 4px;border-radius:12px;background:var(--ig-a);color:#fff;text-align:center;
  opacity:0;transform:scale(.6);--d:calc(var(--i,0)*.07s);transition:opacity .35s ease var(--d),transform .45s cubic-bezier(.34,1.56,.64,1) var(--d)}
.fc-in .fc-ig-tile{opacity:1;transform:none}
.fc-ig-tile b{font:800 .6rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:-.01em;font-variant-numeric:tabular-nums lining-nums;color:inherit}
.fc-ig-tile span{font:600 .62rem/1.25 "Plus Jakarta Sans",sans-serif;color:inherit;opacity:.92;text-wrap:balance}
.fc-ig-tile.s-none{background:#fff;color:var(--ig-grey);box-shadow:inset 0 0 0 2px var(--ig-grey-line)}
.fc-ig-tile.s-none b{color:#8a93a0}
.fc-ig-tile.s-partial{background:linear-gradient(90deg,var(--ig-a) 0 50%,#fff 50%);color:var(--ig-ink);box-shadow:inset 0 0 0 2px var(--ig-a)}
.fc-ig-tile.s-partial b,.fc-ig-tile.s-partial span{background:#fff;padding:1px 5px;border-radius:5px;color:var(--ig-ink)}
.fc-ig-figs{display:flex;flex-wrap:wrap;gap:18px 44px;margin-top:24px}
.fc-ig-fig{opacity:0;transform:translateY(8px);--d:calc(var(--gd,1.2s) + var(--i,0)*.25s);transition:opacity .5s ease var(--d),transform .5s ease var(--d)}
.fc-in .fc-ig-fig{opacity:1;transform:none}
.fc-ig-fig .fc-ig-num{color:var(--ig-orange)}
.fc-ig-fig>span{display:block;margin-top:6px;font-size:.86rem;line-height:1.4;color:var(--ig-grey);max-width:26ch;text-wrap:balance}
.fc-ig-legend i.s-valid,.fc-ig-legend i.s-none,.fc-ig-legend i.s-partial{width:16px;height:12px;border:0;border-radius:4px;background:var(--ig-a)}
.fc-ig-legend i.s-none{background:#fff;box-shadow:inset 0 0 0 2px var(--ig-grey-line)}
.fc-ig-legend i.s-partial{background:linear-gradient(90deg,var(--ig-a) 0 50%,#fff 50%);box-shadow:inset 0 0 0 2px var(--ig-a)}

/* --- pairs: a requirement, what happens today, what the record makes possible; the right card arrives second --- */
.fc-ig-pair-heads{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);gap:0 16px;margin:0 0 4px}
.fc-ig-pair-heads span{font:700 .7rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--ig-grey);padding:0 0 8px 16px}
.fc-ig-pair-heads span:nth-child(3){color:var(--ig-ink2)}
.fc-ig-pair{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(0,1fr);gap:0 16px;padding:8px 0;border-top:1px solid var(--ig-hair);
  opacity:0;--d:calc(var(--i,0)*.16s);transition:opacity .5s ease var(--d)}
.fc-ig-pairs>.fc-ig-pair:first-child{border-top:0}
.fc-ig-pairs.no-before .fc-ig-pair,.fc-ig-pairs.no-before~.fc-ig-pair-heads{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
.fc-ig-pair-heads.two{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
.fc-in .fc-ig-pair{opacity:1}
.fc-ig-pair-l{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:12px 16px 12px 0}
.fc-ig-key{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ig-c);color:var(--ig-ink2);font:800 .78rem/1 "Plus Jakarta Sans",sans-serif;font-variant-numeric:tabular-nums;margin-bottom:6px}
.fc-ig-pair-l b{font:700 1.05rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:var(--ig-ink);text-wrap:balance}
.fc-ig-pair-l small{font:500 .8rem/1.35 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey)}
.fc-ig-pair-a,.fc-ig-pair-b{position:relative;border-radius:14px;padding:16px 18px;font:500 .98rem/1.45 "Plus Jakarta Sans",sans-serif;text-wrap:pretty;align-self:center;margin:6px 0}
.fc-ig-pair-a{background:#f6f7fb;color:var(--ig-ink);transform:translateX(-12px);opacity:0;--d:calc(var(--i,0)*.16s + .1s);transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-ig-pair-b{background:var(--ig-a);color:#fff;transform:translateX(-12px);opacity:0;--d:calc(var(--i,0)*.16s + .45s);transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-in .fc-ig-pair-a,.fc-in .fc-ig-pair-b{opacity:1;transform:none}
.fc-ig-pair-b::before{content:"";position:absolute;left:-13px;top:50%;margin-top:-6px;border-left:8px solid var(--ig-grey-line);border-top:6px solid transparent;border-bottom:6px solid transparent}
.fc-ig-pair-k{display:none}
.fc-ig-pair.is-hollow .fc-ig-pair-b{background:#fff;color:var(--ig-grey);box-shadow:inset 0 0 0 2px var(--ig-grey-line)}
.fc-ig-pair-tag{display:block;margin-top:8px;font:700 .66rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;font-style:normal;color:var(--ig-orange-ink)}
.fc-ig-pair:not(.is-hollow) .fc-ig-pair-tag{color:rgba(255,255,255,.85)}

/* --- marked: the statute whole, its working phrases underlined in turn, each lighting a card --- */
.fc-ig-marked-wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px 40px;align-items:start}
.fc-ig-quote{margin:0;padding:0;border:0;background:transparent}
.fc-ig-quote p{margin:0 0 18px;font-family:"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(1.25rem,1.05rem + .9vw,1.7rem);line-height:1.45;color:var(--ig-ink);letter-spacing:-.005em;text-wrap:pretty;hanging-punctuation:first}
.fc-ig-quote footer{display:flex;flex-direction:column;gap:4px;font:500 .9rem/1.45 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey)}
.fc-ig-quote footer b{color:var(--ig-ink2);font-weight:700}
.fc-ig-mark{position:relative;background:linear-gradient(var(--ig-a),var(--ig-a)) no-repeat 0 100%/0% 3px;color:inherit;padding-bottom:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone;
  --d:calc(.5s + var(--i,0)*.9s);transition:background-size .8s cubic-bezier(.2,.7,.2,1) var(--d),color .4s ease var(--d)}
.fc-in .fc-ig-mark{background-size:100% 3px;color:var(--ig-ink2)}
.fc-ig-mark-n{font:800 .55em/1 "Plus Jakarta Sans",sans-serif;font-style:normal;color:#fff;background:var(--ig-a);border-radius:50%;display:inline-grid;place-items:center;width:1.5em;height:1.5em;margin-left:.3em;vertical-align:.55em;opacity:0;transform:scale(.6);transition:opacity .3s ease calc(var(--d) + .6s),transform .45s cubic-bezier(.34,1.56,.64,1) calc(var(--d) + .6s)}
.fc-in .fc-ig-mark-n{opacity:1;transform:none}
.fc-ig-mcards{display:flex;flex-direction:column;gap:12px}
.fc-ig-mcard{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:start;background:var(--ig-c);border-radius:14px;padding:16px 18px;
  opacity:0;transform:translateX(12px);--d:calc(.9s + var(--i,0)*.9s);transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-in .fc-ig-mcard{opacity:1;transform:none}
.fc-ig-mcard .fc-ig-key{margin:0;background:#fff;grid-row:1/3}
.fc-ig-mcard b{font:700 1rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:var(--ig-ink);text-wrap:balance}
.fc-ig-mcard-p{grid-column:2;font:500 .88rem/1.45 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey);text-wrap:pretty}

/* --- the fold beneath a graphic: the original table and its citations, unchanged --- */
.fc-ig-fold{margin-top:2px}
.fc-ig-fold .fc-x-body{padding-left:0}
.fc-ig-fold .fc-x-body .fc-table{margin-top:6px}
.fc-ig-fold .fc-x-body .fc-note{margin-top:10px}

/* --- no JavaScript: the finished state, nothing moving --- */
html:not(.fc-js) .fc-ig-s,html:not(.fc-js) .fc-ig-t,html:not(.fc-js) .fc-ig-gap,html:not(.fc-js) .fc-ig-row,html:not(.fc-js) .fc-ig-foot,html:not(.fc-js) .fc-ig-pin,html:not(.fc-js) .fc-ig-band{opacity:1;transform:none}
html:not(.fc-js) .fc-ig-row::after{transform:none}
html:not(.fc-js) .fc-ig-tile,html:not(.fc-js) .fc-ig-fig,html:not(.fc-js) .fc-ig-pair,html:not(.fc-js) .fc-ig-pair-a,html:not(.fc-js) .fc-ig-pair-b,html:not(.fc-js) .fc-ig-mcard,html:not(.fc-js) .fc-ig-mark-n{opacity:1;transform:none}
html:not(.fc-js) .fc-ig-mark{background-size:100% 3px;color:var(--ig-ink2)}
html:not(.fc-js) .fc-ig-legend i.k-mandate{border-top-style:solid}
html:not(.fc-js) .fc-ig-t.is-gap{background:#fff;box-shadow:inset 0 0 0 2px var(--ig-orange)}
html:not(.fc-js) .fc-ig *{transition:none!important;animation:none!important}

/* --- tablets --- */
@media only screen and (max-width:999px){
  .fc-ig{--ig-cols:minmax(0,1fr) minmax(84px,.42fr) minmax(0,1fr)}
  .fc-ig-row,.fc-ig-foot{grid-template-columns:2.2rem minmax(0,1fr) minmax(180px,.55fr)}
  .fc-ig-marked-wrap{grid-template-columns:1fr}
  .fc-ig-tiles{grid-template-columns:repeat(8,minmax(0,1fr))}
}
/* --- phones: the same three columns, tighter; the ledger's figure drops under its label --- */
@media only screen and (max-width:690px){
  .fc-ig{padding:20px 16px 18px;border-radius:18px;--ig-cols:minmax(0,1.08fr) 40px minmax(0,.92fr)}
  .fc-ig-head{margin-bottom:20px}
  .fc-ig-eyebrow{font-size:.66rem;letter-spacing:.11em}
  .fc-ig-heads span{padding:0 0 8px 10px;font-size:.58rem;letter-spacing:.08em}
  .fc-ig-card{margin:4px 0;padding:11px 11px;border-radius:12px}
  .fc-ig-s{padding-left:14px}
  .fc-ig-s::before{top:11px;bottom:11px}
  .fc-ig-k{font-size:.56rem;letter-spacing:.08em}
  .fc-ig-l{font-size:.86rem;line-height:1.22}
  .fc-ig-f{font-size:.72rem;line-height:1.32}
  .fc-ig-t{grid-template-columns:auto minmax(0,1fr);column-gap:7px;row-gap:6px;padding-left:9px;padding-right:9px}
  .fc-ig-t .fc-ig-l{font-size:.84rem;overflow-wrap:anywhere}
  .fc-ig-icon{width:26px;height:26px;border-radius:8px}
  .fc-ig-gap{grid-column:1/-1;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:7px;padding:2px 0 0;transform-origin:left center;text-align:left}
  .fc-ig-gap-n{font-size:1.5rem}
  .fc-ig-gap-t{margin-top:0;max-width:none}
  .fc-ig-gap-w{font-size:.7rem;max-width:none}
  .fc-ig-pairs.no-before .fc-ig-pair{grid-template-columns:1fr}
  .fc-ig-legend{gap:6px 16px;font-size:.78rem;margin-top:16px}
  .fc-ig-legend i{width:20px}
  .fc-ig-row,.fc-ig-foot{grid-template-columns:1.7rem minmax(0,1fr);gap:8px 12px;padding:16px 0 14px}
  .fc-ig-row-fig{grid-column:2}
  .fc-ig-row-l b{font-size:1rem}
  .fc-ig-row-l span{font-size:.86rem}
  .fc-ig-num{font-size:1.7rem}
  .fc-ig-track{margin:74px 6px 76px}
  .fc-ig-end .fc-ig-num{font-size:1.6rem}
  .fc-ig-end>span{font-size:.76rem}
  .fc-ig-pin b{font-size:.9rem}
  .fc-ig-pin em{font-size:.68rem}
  .fc-ig-chip{font-size:.74rem;padding:5px 10px 5px 8px}
  .fc-ig-tiles{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  .fc-ig-tile{min-height:50px;border-radius:9px;padding:6px 2px}
  .fc-ig-tile b{font-size:.62rem}
  .fc-ig-tile span{font-size:.54rem}
  .fc-ig-figs{gap:16px 26px;margin-top:18px}
  .fc-ig-fig .fc-ig-num{font-size:1.6rem}
  .fc-ig-pair-heads{display:none}
  .fc-ig-pair{grid-template-columns:1fr 1fr;gap:8px 8px;padding:12px 0}
  .fc-ig-pair-l{grid-column:1/-1;padding:4px 0 2px}
  .fc-ig-pair-l b{font-size:.98rem}
  .fc-ig-pair-a,.fc-ig-pair-b{margin:0;padding:12px 12px 12px;font-size:.84rem;line-height:1.4;align-self:stretch}
  .fc-ig-pair-b::before{display:none}
  .fc-ig-pair-k{display:block;font:700 .58rem/1.2 "Plus Jakarta Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;opacity:.75}
  .fc-ig-marked-wrap{grid-template-columns:1fr;gap:18px}
  .fc-ig-quote p{font-size:1.12rem;line-height:1.5}
  .fc-ig-mcard{padding:12px 14px}
}

/* ---- formula: a fill-in ledger's lines as chips, coloured by where each input comes from (P public, S state-held, A assumption) */
.fc-ig-frow{grid-template-columns:2.4rem minmax(150px,.3fr) minmax(0,1fr)}
.fc-ig-formula-cell{display:flex;flex-wrap:wrap;align-items:center;gap:8px 8px;min-width:0;padding-top:.15rem}
.fc-ig-term{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:#f6f7fb;border:1.5px solid transparent;font:600 .9rem/1.2 "Plus Jakarta Sans",sans-serif;color:var(--ig-ink);letter-spacing:-.005em;text-wrap:balance;
  opacity:0;transform:translateX(-8px);--dj:calc(var(--i,0)*.14s + var(--j,0)*.05s);transition:opacity .45s ease var(--dj),transform .45s cubic-bezier(.2,.7,.2,1) var(--dj)}
.fc-ig-term.tag-P{background:#eaf4ee}
.fc-ig-term.tag-S{background:#eaeaff}
.fc-ig-term.tag-A{background:#fff;border-color:#e0a25a;border-style:dashed}
.fc-ig-term.tag-S.tag-A{background:linear-gradient(100deg,#eaeaff 0 55%,#fff 55%);border-color:#e0a25a;border-style:dashed}
.fc-ig-term.tag-P.tag-S{background:linear-gradient(100deg,#eaf4ee 0 55%,#eaeaff 55%)}
.fc-ig-term.tag-none{color:var(--ig-grey)}
.fc-ig-tag{display:inline-grid;place-items:center;min-width:1.45em;height:1.45em;padding:0 .35em;border-radius:6px;font:800 .66rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:.06em;font-style:normal}
.fc-ig-tag.tag-P{background:#2f6b46;color:#fff}
.fc-ig-tag.tag-S{background:#0809ff;color:#fff}
.fc-ig-tag.tag-A{background:#fff;color:#a85f0f;box-shadow:inset 0 0 0 1.5px #e0a25a}
.fc-ig-op{font:600 1.05rem/1 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey);opacity:0;--dj:calc(var(--i,0)*.14s + var(--j,0)*.05s + .12s);transition:opacity .4s ease var(--dj)}
.fc-in .fc-ig-term{opacity:1;transform:none}
.fc-in .fc-ig-op{opacity:1}
.fc-ig-flegend{margin:0 0 18px}
.fc-ig-flegend li{display:inline-flex;align-items:center;gap:8px;margin:0 18px 6px 0;font:600 .82rem/1.3 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey)}
.fc-ig-flegend b.fc-ig-tag{font-size:.7rem;min-width:1.6em;height:1.6em}
.fc-ig-fnet .fc-ig-row-l span{max-width:70ch}
html:not(.fc-js) .fc-ig-term,html:not(.fc-js) .fc-ig-op{opacity:1;transform:none}
@media only screen and (max-width:690px){
  .fc-ig-frow{grid-template-columns:1.7rem minmax(0,1fr)}
  .fc-ig-formula-cell{grid-column:2;gap:6px}
  .fc-ig-term{font-size:.84rem;padding:6px 10px}
}

/* ---- career: the person's name is the control that opens their chips, summary line and biography.
       The number keeps its own column; the fold takes the rest of the row, because the biography
       needs a reading measure and the old right-hand column was too narrow to give it one. */
.fc-ig-person{grid-template-columns:2.4rem minmax(0,1fr)}
/* a grid item will not shrink below its longest word unless it is told it may */
.fc-ig-person>.fc-ig-bio{min-width:0;margin-top:0;border-bottom:0}   /* the row draws its own hairline: a second under the fold reads as an empty row */
/* the summary is the name, not a bar the name sits in: font:inherit hands the row back the weight
   the disclosure heading would otherwise impose on the role line under every name */
.fc-ig-person>.fc-ig-bio>summary{align-items:flex-start;gap:0;padding:0;font:inherit}
.fc-ig-person .fc-ig-row-l b{display:flex;align-items:center;gap:var(--sp-1,8px)}
/* the +/- drawn at name size: the 30px default was sized to lead a full-width question, not follow a
   name, and its shadow was thrown for that larger disc — at 22px it needs a rim to read as a control */
.fc-ig-person .fc-x-mark{flex:0 0 auto;width:22px;height:22px;box-shadow:0 6px 12px -9px rgba(22,25,31,.5),0 0 0 1px rgba(22,25,31,.12)}
.fc-ig-person .fc-x-mark::before,.fc-ig-person .fc-x-mark::after{left:6px;top:10px;width:10px;height:2px}
/* a name is not a link, so hover and focus have to say "this opens" some other way: the category
   ink on the name, the mark growing, and a ring a keyboard reader can actually see */
.fc-ig-person>.fc-ig-bio>summary:hover b,.fc-ig-person>.fc-ig-bio>summary:focus-visible b{color:var(--ig-ink2)}
.fc-ig-person>.fc-ig-bio>summary:focus-visible{outline:2px solid var(--ig-a);outline-offset:6px;border-radius:10px}
.fc-ig-person>.fc-ig-bio>.fc-x-body{padding:var(--sp-2,16px) 0 2px}
.fc-ig-roles{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 6px}
.fc-ig-role{display:inline-flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:12px;background:#f6f7fb;font:600 .88rem/1.25 "Plus Jakarta Sans",sans-serif;color:var(--ig-ink);text-wrap:balance;
  opacity:0;transform:translateX(-8px);--dj:calc(var(--i,0)*.14s + var(--j,0)*.06s);transition:opacity .45s ease var(--dj),transform .45s cubic-bezier(.2,.7,.2,1) var(--dj)}
.fc-ig-role b{font:800 .64rem/1 "Plus Jakarta Sans",sans-serif;letter-spacing:.08em;color:var(--ig-grey);font-variant-numeric:tabular-nums}
.fc-ig-role.now{background:var(--ig-c);box-shadow:inset 0 0 0 1.5px var(--ig-a)}
.fc-ig-role.now b{color:var(--ig-ink2)}
.fc-ig-next{align-self:center;font-size:1.2rem;line-height:1;padding-bottom:6px}
.fc-in .fc-ig-role{opacity:1;transform:none}
.fc-ig-line{margin:12px 0 0;font:500 .95rem/1.5 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey);max-width:60ch;text-wrap:pretty}
.fc-ig-bio .fc-x-body p{font-size:.92rem;line-height:1.6;color:var(--ig-ink);max-width:70ch}
html:not(.fc-js) .fc-ig-role{opacity:1;transform:none}
/* ---- trio: three drawn-icon cards */
.fc-ig-trio-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.fc-ig-trio-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 22px 20px;border-radius:16px;background:#f6f7fb;
  opacity:0;transform:translateY(12px);--d:calc(var(--i,0)*.16s);transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-ig-trio-card b{font:700 1.15rem/1.25 "Plus Jakarta Sans",sans-serif;letter-spacing:-.015em;color:var(--ig-ink);text-wrap:balance}
.fc-ig-trio-card>span:last-child{font:500 .95rem/1.5 "Plus Jakarta Sans",sans-serif;color:var(--ig-grey);text-wrap:pretty}
.fc-ig-trio-card .fc-ig-icon{width:56px;height:56px;background:#fff}
.fc-in .fc-ig-trio-card{opacity:1;transform:none}
html:not(.fc-js) .fc-ig-trio-card{opacity:1;transform:none}
@media only screen and (max-width:690px){
  .fc-ig-person{grid-template-columns:1.7rem minmax(0,1fr)}
  .fc-ig-trio-list{grid-template-columns:1fr}
}

/* =====================================================================================
   Biography pages: /about-fcomply/<person>/  (Gavin, 13 Sep)
   "When you expand the text, you get these super long vertical comment columns of details
   about the person… what we need to do is actually have it so that it creates new pages."
   A 1,400-character career history never belonged in a 250px column. Each person now has a
   page: a half-width portrait in the hero, the career as a sequence, then the biography as
   prose in the site's reading column. Nothing here sets a pixel measure on running text —
   the body keeps whatever --fc-measure the stylesheet gives it.
   ===================================================================================== */

/* ---- the career, as a sequence. One rail, a dot per role, the year above the label where
        the biography gives one, and the current role marked the way the chips used to be. */
.fc-per-seq{margin:6px 0 30px}
/* wide enough for two columns, the panel puts its label beside the sequence rather than
   leaving 400px of it empty; below that the head sits above the list as usual */
@media only screen and (min-width:1000px){
  .fc-per-seq{display:grid;grid-template-columns:minmax(0,.62fr) minmax(0,1fr);column-gap:48px;align-items:start}
}
.fc-per-seq .fc-ig-head{margin:0 0 18px}
.fc-per-seq .fc-ig-intro{margin:10px 0 0;max-width:34ch}
.fc-per-steps{position:relative;margin:0;padding:0 0 0 2px}
/* the rail runs between the first and last dot, and draws itself as the panel arrives */
.fc-per-steps::before{content:"";position:absolute;left:7px;top:20px;bottom:20px;width:2px;border-radius:2px;
  background:linear-gradient(180deg,var(--ig-a),color-mix(in srgb,var(--ig-a) 15%,#fff));
  transform:scaleY(0);transform-origin:top;transition:transform .95s cubic-bezier(.3,.8,.3,1) .12s}
.fc-in .fc-per-steps::before{transform:none}
html:not(.fc-js) .fc-per-steps::before{transform:none}
.fc-per-step{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;
  padding:11px 0 12px;
  opacity:0;transform:translateY(9px);--d:calc(.15s + var(--i,0)*.10s);
  transition:opacity .5s ease var(--d),transform .5s cubic-bezier(.2,.7,.2,1) var(--d)}
.fc-in .fc-per-step{opacity:1;transform:none}
html:not(.fc-js) .fc-per-step{opacity:1;transform:none}
.fc-per-dot{grid-column:1;width:16px;height:16px;margin-top:3px;border-radius:50%;background:#fff;
  box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--ig-a) 35%,#fff)}
.fc-per-step.is-now .fc-per-dot{background:var(--ig-a);box-shadow:inset 0 0 0 2px var(--ig-a),0 0 0 5px var(--ig-c)}
.fc-per-what{grid-column:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px;min-width:0}
.fc-per-when{flex:0 0 100%;font:800 .66rem/1.3 "Plus Jakarta Sans",sans-serif;letter-spacing:.1em;
  color:var(--ig-grey);font-variant-numeric:tabular-nums lining-nums}
.fc-per-step.is-now .fc-per-when{color:var(--ig-ink2)}
.fc-per-what b{font:700 1.06rem/1.35 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:var(--ig-ink);
  text-wrap:pretty;max-width:48ch}
.fc-per-now{display:inline-block;padding:3px 9px;border-radius:999px;background:var(--ig-c);
  box-shadow:inset 0 0 0 1.5px var(--ig-a);font:700 .64rem/1.4 "Plus Jakarta Sans",sans-serif;
  letter-spacing:.09em;text-transform:uppercase;font-style:normal;color:var(--ig-ink2);white-space:nowrap}

/* ---- the rest of the team: every bio page ends with all five, the one you are on marked,
        and the way back to About Us. */
.fc-per-team{margin:46px 0 4px;padding-top:30px;border-top:1px solid rgba(22,25,31,.12);
  font-family:"Plus Jakarta Sans",sans-serif}
.fc-per-team-k{display:flex;align-items:center;gap:12px;margin:0 0 12px;
  font:700 .74rem/1.4 "Plus Jakarta Sans",sans-serif;letter-spacing:.14em;text-transform:uppercase;
  color:var(--cat-ink,#0809ff)}
.fc-per-team-k::before{content:"";width:26px;height:2px;border-radius:2px;background:var(--cat-a,#0809ff);flex:0 0 auto}
.fc-per-team-k+.fc-per-team-list{margin-bottom:26px}
.fc-per-team-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.fc-per-team-list>li{list-style:none;margin:0}
.fc-per-team-list>li::marker{content:""}
.fc-per-card{display:flex}
.fc-per-card>a,.fc-per-card.is-current{display:flex;align-items:center;gap:14px;min-width:0;flex:1 1 auto;
  padding:12px 16px 12px 12px;border-radius:16px;background:#f6f7fb;text-decoration:none;
  box-shadow:inset 0 0 0 1px rgba(22,25,31,.07);
  transition:background .22s ease,transform .22s cubic-bezier(.3,.9,.3,1),box-shadow .22s ease}
.fc-per-card>a:hover{background:var(--cat-c,#eaeaff);transform:translateY(-2px);
  box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cat-a,#0809ff) 30%,transparent),0 18px 30px -22px rgba(22,25,31,.55)}
.fc-per-card>a:focus-visible{outline:2px solid var(--cat-a,#0809ff);outline-offset:3px}
.fc-per-card.is-current{background:var(--cat-c,#eaeaff);box-shadow:inset 0 0 0 1.5px var(--cat-a,#0809ff)}
.fc-per-face{width:56px!important;height:56px!important;max-width:56px!important;flex:0 0 auto;
  border-radius:50%;object-fit:cover;margin:0;background:#e6e8ee}
.fc-per-who{display:flex;flex-direction:column;gap:2px;min-width:0}
.fc-per-who b{font:700 1rem/1.25 "Plus Jakarta Sans",sans-serif;letter-spacing:-.012em;color:#16191f}
.fc-per-who>span{font:500 .8rem/1.4 "Plus Jakarta Sans",sans-serif;color:#5f6772;text-wrap:pretty}
.fc-per-card>a:hover .fc-per-who b{color:var(--cat-ink,#0809ff)}
.fc-per-back{margin:4px 0 0}
.fc-per-back a{font:700 .92rem/1.4 "Plus Jakarta Sans",sans-serif;color:var(--cat-ink,#0809ff);text-decoration:none}
.fc-per-back a::before{content:"\2039";margin-right:.45em;font-size:1.25em;line-height:0}
.fc-per-back a:hover{text-decoration:underline;text-underline-offset:.2em}

/* ---- About Us: the name on each card is the link to that person's page ---------------
   The in-card disclosure is gone (its seater in js/fc-ig.js and the panel it opened went with
   it). What the card carries now is what it always showed — photograph, role, one-line
   summary — with the name as a real link, so the detail happens on a page instead of in a
   column. */
/* The name carries the card now, so it is sized as the card's title rather than as a caption
   under the role. !important is not decoration here: style.css's footer fix is written as
   "#ajax-content-wrap .wpb_row h5+*" with font-size:...!important, and a team card is an h5
   (the role) followed by an h3 (the name), so every person's name on About Us was being drawn
   at footer-link size. Scoped to team cards, and left to style.css on phones, where the card
   is deliberately compact. Nothing here touches the measure of running text. */
@media only screen and (min-width:691px){
  #ajax-content-wrap .team-member .team-meta h3{font-size:1.26rem!important;line-height:1.22;
    letter-spacing:-.02em;font-weight:700;margin:3px 0 10px}
}
.team-meta h3 .fc-person-link{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.42em}
.team-meta h3 .fc-person-link::after{content:"";width:.42em;height:.42em;flex:0 0 auto;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(-45deg);opacity:.45;transition:transform .22s cubic-bezier(.3,.9,.3,1),opacity .22s ease}
.team-member:hover .team-meta h3 .fc-person-link,.team-meta h3 .fc-person-link:hover{color:var(--cat-solid,#0809ff)}
.team-member:hover .team-meta h3 .fc-person-link::after,.team-meta h3 .fc-person-link:hover::after{opacity:.95;transform:rotate(-45deg) translate(2px,2px)}
.team-meta h3 .fc-person-link:focus-visible{outline:2px solid var(--cat-solid,#0809ff);outline-offset:3px;border-radius:3px}
/* the theme's arrow under the card had href="#" and nowhere to go; js/fc-ig.js points it at
   the same page the name does, so the whole card reads as one destination */
.team-member[data-fc-person]{cursor:pointer}
.team-meta .nectar-cta svg{transition:transform .22s cubic-bezier(.3,.9,.3,1)}
.team-member[data-fc-person]:hover .team-meta .nectar-cta svg{transform:translateX(4px)}

@media only screen and (max-width:999px){
  .fc-per-team-list{grid-template-columns:1fr}
  .fc-per-team{margin-top:36px;padding-top:24px}
}
@media only screen and (max-width:690px){
  .fc-per-seq{padding:24px 20px 22px}
  .fc-per-step{grid-template-columns:26px minmax(0,1fr);padding:10px 0}
  .fc-per-steps::before{left:5px}
  .fc-per-dot{width:12px;height:12px;margin-top:4px}
  .fc-per-what b{font-size:1rem;max-width:none}
  .fc-per-face{width:48px!important;height:48px!important;max-width:48px!important}
}
