/* The business-model history article: a research paper laid out on its own, scoped under .hme.
   Generated from the study's artifact build (docs/research/2026-10-09-historique-modeles-economiques). */
.hme{
  --bg:#fcfaf7; --surface:#f4f1eb; --card:#ffffff; --ink:#222222; --ink-2:#454745; --muted:#636862;
  --line:#ebece8; --line-strong:#d9dbd4; --brand:#163300; --brand-ink:#ffffff; --lime:#9fe870;
  --sky:#edf8ff; --sky-strong:#d8ecfd; --sky-ink:#0e3dd5; --peach:#fff6eb; --peach-ink:#a1480b;
  --c-ha:#3b5bdb; --c-lpc:#0c8599; --c-tri:#c2255c; --c-op:#e8590c; --c-lcdp:#5c940d; --c-cot:#7048e8;
  --c-don:#e67700; --c-why:#1098ad; --c-lorg:#ae3ec9; --c-lee:#8a8f87; --c-pap:#b5b9b1; --c-mem:#163300;
  --c-free:#008300; --c-prop:#4a3aa7; --c-pre:#e34948;
  --display:var(--font-family-bricolage),"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;
  --body:var(--font-family-body),"Schibsted Grotesk","Helvetica Neue",Arial,sans-serif;
  
  --figures:"Schibsted Grotesk Figures",var(--body);
  color-scheme:light;
}
.hme, .hme *{box-sizing:border-box}
.hme{background:var(--bg);color:var(--ink);font:17px/1.6 var(--body);-webkit-font-smoothing:antialiased}
.hme h1, .hme h2, .hme h3, .hme h4, .hme p, .hme figure, .hme ul, .hme ol, .hme table{margin:0}
.hme ul, .hme ol{padding:0}
.hme a{color:var(--brand);text-underline-offset:3px}
.hme h1, .hme h2, .hme h3{font-family:var(--display);text-wrap:balance;letter-spacing:-0.03em;color:var(--ink)}
.hme :focus-visible{outline:2px solid var(--sky-ink);outline-offset:3px;border-radius:6px}
.hme .page{padding-inline:clamp(16px,4vw,48px)}
.hme .wrap{max-width:1180px;margin:0 auto}
.hme .tab{font-family:var(--figures)}
.hme .hero{padding-block:clamp(28px,5vw,56px) 28px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.hme .pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.hme .pill{padding:4px 12px;border-radius:99px;font-size:13px;font-weight:600;background:var(--sky);color:var(--sky-ink)}
.hme .pill.dark{background:var(--brand);color:var(--brand-ink)}
.hme .hero h1{max-width:28ch;font-size:clamp(36px,5.6vw,62px);line-height:1.02;font-weight:700;letter-spacing:-0.04em}
.hme .dek{max-width:76ch;font-size:clamp(17px,1.7vw,20px);line-height:1.5;font-weight:500;color:var(--ink-2)}
.hme .meta{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 20px;font-size:14px;color:var(--muted)}
.hme .preface{max-width:64rem;margin:0 auto 8px;padding:22px 26px;border-radius:24px;background:var(--surface);display:flex;flex-direction:column;gap:10px}
.hme .preface-k{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hme .preface-body{font-size:15.5px;line-height:1.6;color:var(--ink-2)}
@media (min-width:900px){.hme .preface-body{column-count:2;column-gap:40px}}
.hme .results{padding-block:clamp(36px,5vw,64px);background:linear-gradient(180deg,transparent 0%,var(--sky-strong) 18%,var(--sky-strong) 82%,transparent 100%)}
.hme .results h2{text-align:center;font-size:clamp(26px,3vw,36px);line-height:1.1;margin-bottom:24px}
.hme .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px;list-style:none}
.hme .kpi{display:flex;flex-direction:column;gap:8px;padding:20px;background:var(--card);border:1px solid var(--line);border-radius:26px;box-shadow:0 6px 30px rgba(0,0,0,.04);min-width:0}
.hme .kpi b{font-family:var(--display);font-size:clamp(34px,3.6vw,46px);font-weight:600;letter-spacing:-0.04em;line-height:1}
.hme .kpi span{font-size:14.5px;line-height:1.45;color:var(--ink-2)}
.hme .kpi small{font-size:12.5px;color:var(--muted)}
.hme .chip{align-self:flex-start;padding:2px 9px;border-radius:99px;font-size:12px;font-weight:700;background:var(--surface);color:var(--muted)}
.hme .chip.est{background:var(--peach);color:var(--peach-ink)}
.hme .caveat{display:flex;gap:12px;align-items:flex-start;max-width:52rem;margin:22px auto 0;padding:16px 18px;border-radius:18px;background:var(--peach);font-size:15px;line-height:1.55;color:var(--ink-2)}
.hme .caveat strong{color:var(--ink)}
.hme .body{display:flex;flex-direction:row-reverse;flex-wrap:wrap;align-items:flex-start;gap:32px clamp(28px,4vw,56px);padding-block:40px 24px}
.hme .toc{flex:1 1 240px;max-width:100%;position:sticky;top:calc(env(safe-area-inset-top,0px) + 16px)}
.hme .toc details{padding:18px;border-radius:22px;background:var(--surface)}
.hme .toc summary{cursor:pointer;font-weight:600;font-size:15px}
.hme .toc ol{list-style:none;margin-top:10px;display:flex;flex-direction:column;gap:1px}
.hme .toc li.part{margin-top:10px;font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding-left:8px}
.hme .toc a{display:block;padding:5px 8px;border-radius:9px;font-size:14px;line-height:1.35;color:var(--ink-2);text-decoration:none}
.hme .toc a:hover{background:var(--card);color:var(--ink)}
.hme .toc a[aria-current="true"]{background:var(--sky);color:var(--sky-ink);font-weight:600}
@media (max-width:900px){.hme .toc{position:static}}
.hme article{flex:999 1 600px;min-width:0;display:flex;flex-direction:column;gap:20px}
.hme .part-head{margin-top:36px;padding-top:22px;border-top:2px solid var(--brand);display:flex;flex-direction:column;gap:6px}
.hme .part-head:first-child{margin-top:0}
.hme .part-head .k{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hme .part-head h2{font-size:clamp(28px,3.2vw,40px);line-height:1.05;font-weight:700}
.hme section.s{display:flex;flex-direction:column;gap:14px;scroll-margin-top:20px}
.hme section.s>h3{font-size:clamp(21px,2.2vw,27px);line-height:1.15;font-weight:700;margin-top:18px}
.hme .hint{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.hme figure.card{padding:18px;background:var(--card);border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column;gap:12px;min-width:0}
.hme figure.card figcaption{font-size:13.5px;line-height:1.5;color:var(--muted)}
.hme .fig-title{font-size:15px;font-weight:600;color:var(--ink)}
.hme .chartbox{position:relative;width:100%;height:340px}
.hme .chartbox.tall{height:420px}
.hme .chartbox.short{height:260px}
.hme .tools{display:flex;flex-wrap:wrap;gap:10px 16px;justify-content:space-between;align-items:center}
.hme .seg-a{display:inline-flex;gap:2px;padding:3px;border-radius:10px;background:var(--surface)}
.hme .seg-a button{border:0;background:none;padding:5px 12px;border-radius:8px;font:inherit;font-size:13.5px;font-weight:600;color:var(--muted);cursor:pointer}
.hme .seg-a button[aria-pressed="true"]{background:var(--card);color:var(--ink);box-shadow:0 0 0 1px var(--line-strong)}
.hme .check{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:6px 0;font:inherit;font-size:14px;font-weight:500;color:var(--ink);cursor:pointer}
.hme .check i{width:16px;height:16px;border-radius:4px;background:var(--brand);display:inline-block}
.hme .check[aria-pressed="false"]{color:var(--muted)}
.hme .check[aria-pressed="false"] i{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.hme .legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13.5px;color:var(--ink-2);list-style:none}
.hme .legend li{display:inline-flex;align-items:center;gap:7px}
.hme .legend i{width:10px;height:10px;border-radius:3px;display:inline-block}
.hme .legend i.hollow{background:transparent!important;box-shadow:inset 0 0 0 2px var(--muted);border-radius:99px}
.hme .srcpanel{font-size:13px;line-height:1.5;color:var(--muted);border-top:1px dashed var(--line-strong);padding-top:8px;min-height:2.6em}
.hme .srcpanel q{color:var(--ink)}
.hme .note{padding:16px 18px;border-radius:18px;background:var(--peach);font-size:15px;line-height:1.55;color:var(--ink-2)}
.hme .note.sky{background:var(--sky)}
.hme .note b{color:var(--ink)}
.hme .tablewrap{overflow-x:auto;border:1px solid var(--line-strong);border-radius:18px;background:var(--card)}
.hme table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.4}
.hme th, .hme td{padding:9px 12px;text-align:left;vertical-align:top}
.hme thead th{background:var(--surface);font-weight:600;font-size:12.5px;color:var(--ink-2)}
.hme tbody tr+tr td, .hme tbody tr+tr th{border-top:1px solid var(--line)}
.hme tfoot td{border-top:2px solid var(--line-strong);font-weight:600}
.hme td.n, .hme th.n{text-align:right;white-space:nowrap;font-family:var(--figures)}
.hme td .sub{display:block;font-size:12px;color:var(--muted)}
.hme .key{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:7px;vertical-align:-1px}
.hme .grid td.c{text-align:center;font-size:12.5px;white-space:nowrap;font-family:var(--figures)}
.hme .grid td.c span.t{display:inline-block;background:var(--surface);color:var(--muted);border-radius:6px;padding:1px 6px;font-size:11.5px}
.hme .grid td.ca{font-weight:600}
.hme details.more{border:1px solid var(--line);border-radius:16px;padding:10px 14px;background:var(--card)}
.hme details.more summary{cursor:pointer;font-weight:600;font-size:14.5px}
.hme details.more[open] summary{margin-bottom:10px}
.hme details.more .inner{display:flex;flex-direction:column;gap:10px;font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.hme details.more ul{padding-left:18px;display:flex;flex-direction:column;gap:6px}
.hme .limits{list-style:none;display:flex;flex-direction:column;gap:8px}
.hme .limits li{padding-left:18px;position:relative}
.hme .limits li::before{content:"";position:absolute;left:2px;top:.75em;width:7px;height:2px;background:var(--muted)}
.hme .range{display:flex;flex-direction:column;gap:10px}
.hme .range-row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr) auto;gap:12px;align-items:center;font-size:14px}
.hme .range-track{position:relative;height:14px;border-radius:99px;background:var(--surface)}
.hme .range-track i{position:absolute;top:0;bottom:0;border-radius:99px}
@media (max-width:620px){.hme .range-row{grid-template-columns:1fr}}
.hme sup.ref{font-size:10.5px;font-weight:600;margin-left:1px;white-space:nowrap;line-height:0}
.hme sup.ref a{text-decoration:none;color:var(--sky-ink)}
.hme sup.ref a::before{content:"["}
.hme sup.ref a::after{content:"]"}
.hme ol.sources{list-style:none;display:flex;flex-direction:column;gap:2px;font-size:13.5px;line-height:1.5}
.hme ol.sources li{display:grid;grid-template-columns:2.6em minmax(0,1fr);gap:8px;padding:7px 8px;border-radius:10px;scroll-margin-top:16px}
.hme ol.sources li:target{background:var(--sky)}
.hme ol.sources .num{font-weight:700;color:var(--muted);text-align:right;font-family:var(--figures)}
.hme ol.sources a{word-break:break-word}
.hme ol.sources .k{font-size:11.5px;font-weight:600;color:var(--muted);background:var(--surface);border-radius:6px;padding:0 6px;margin-left:4px}
.hme ol.sources details{font-size:12.5px}
.hme ol.sources details ul{padding-left:16px}
.hme .cite{padding:16px 18px;border-radius:18px;background:var(--sky);font-size:14.5px;display:flex;flex-direction:column;gap:10px}
.hme .cite code{font:13px/1.5 var(--body);background:var(--card);padding:10px 12px;border-radius:10px;display:block}
.hme .cite button{align-self:flex-start;border:0;border-radius:99px;padding:7px 14px;background:var(--brand);color:var(--brand-ink);font:inherit;font-weight:600;font-size:13.5px;cursor:pointer;min-height:36px}
.hme .series-nav{padding-block:24px 64px;display:flex;flex-direction:column;gap:16px}
.hme .series-nav h2{font-size:26px}
.hme .series-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;list-style:none}
.hme .series-grid a{padding:20px;border-radius:22px;border:1px solid var(--line);display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink);background:var(--card);height:100%}
.hme .series-grid .chip{background:var(--surface)}
.hme .series-grid .t{font-family:var(--display);font-size:19px;line-height:1.2;font-weight:600;letter-spacing:-0.02em}
.hme .series-grid .s{font-size:13.5px;color:var(--muted)}
.hme footer.end{padding-block:24px 48px;font-size:13px;color:var(--muted);max-width:70ch}
.hme{--m-c:#3b5bdb;--m-f:#e8590c;--m-t:#d6336c;--m-t-bg:#fde4ec;--m-p:#d6336c;--m-n:#b5b9b1;--m-bank:#9aa39a;--m-prop:#4a3aa7;--m-free:#2f9e44}
.hme .lanewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.hme .lane-svg{display:block;min-width:760px;width:100%;height:auto}
.hme .bar-svg, .hme .line-svg, .hme .hbar-svg{display:block;width:100%;height:auto}
.hme .scrollx{overflow-x:auto}
.hme .scrollx .line-svg{min-width:640px}
.hme .scrollx .hbar-svg{min-width:560px}
.hme svg .grid{stroke:var(--line);stroke-width:1}
.hme svg .tick{fill:var(--muted);font:12px var(--body)}
.hme svg .lane-name{fill:var(--ink);font:600 13px var(--body)}
.hme svg .lane-sub{fill:var(--muted);font:11.5px var(--body)}
.hme svg .lane-base{stroke:var(--line-strong);stroke-width:1;stroke-dasharray:2 4}
.hme svg .seg{stroke:var(--card);stroke-width:1.5}
.hme svg .seg:hover, .hme svg .bar:hover{opacity:.82}
.hme svg .seg-lbl{fill:#fff;font:600 11.5px var(--body);pointer-events:none}
.hme svg .seg-lbl.dark{fill:var(--ink);paint-order:stroke;stroke:var(--card);stroke-width:3px;stroke-linejoin:round}
.hme svg .win{fill:var(--ink-2);opacity:.55}
.hme svg .ev{fill:var(--ink)}
.hme svg .today{stroke:var(--ink);stroke-width:1;stroke-dasharray:3 3}
.hme svg .end-lbl{font:600 12px var(--body)}
.hme svg .val{fill:var(--ink);font:600 12.5px var(--body)}
.hme svg .grp{fill:var(--ink-2);font:700 12.5px var(--body)}
.hme svg .note-lbl{fill:var(--muted);font:12px var(--body)}
.hme .legend.models{flex-direction:column;gap:8px}
.hme ul.legend{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:8px 18px;font-size:13.5px}
.hme ul.legend li{display:flex;gap:9px;align-items:flex-start;line-height:1.35}
.hme ul.legend small{display:block;color:var(--muted);font-size:12.5px;font-weight:400}
.hme i.sw{flex:none;width:22px;height:13px;border-radius:3px;margin-top:2px;display:inline-block}
.hme i.sw.hatch-t{background:repeating-linear-gradient(45deg,var(--m-t) 0 2.4px,var(--m-t-bg) 2.4px 6px)}
.hme i.sw.hatch-n{background:repeating-linear-gradient(45deg,var(--m-n) 0 1.6px,var(--surface) 1.6px 6px)}
.hme .pill-m{display:inline-block;padding:1px 8px;border-radius:99px;font-size:11.5px;font-weight:700;white-space:nowrap;vertical-align:1px}
.hme .m-C{background:#e7ecff;color:#2b44b0}
.hme .m-F{background:#ffeadb;color:#a6400a}
.hme .m-T{background:var(--card);color:#a61e4d;box-shadow:inset 0 0 0 1.5px #e9a3bd;background-image:repeating-linear-gradient(45deg,transparent 0 5px,rgba(214,51,108,.1) 5px 7px)}
.hme .m-P{background:#fde4ec;color:#a61e4d}
.hme .m-N{background:var(--surface);color:var(--muted)}
.hme .pf-grid{display:flex;flex-direction:column;gap:18px}
.hme article.pf{padding:20px 20px 16px;background:var(--card);border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column;gap:14px;scroll-margin-top:16px;min-width:0}
.hme .pf-h{display:flex;flex-direction:column;gap:6px}
.hme .pf-h h4{font-family:var(--display);font-size:24px;letter-spacing:-0.02em;line-height:1.1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.hme .pf-h h4 .sub{font-family:var(--body);font-size:16px;font-weight:500;color:var(--muted);letter-spacing:0}
.hme .pf-dot{width:12px;height:12px;border-radius:99px;display:inline-block;flex:none}
.hme .pf-meta{font-size:13.5px;color:var(--muted)}
.hme .pf-today{font-size:14.5px;line-height:1.5;padding:10px 12px;border-radius:12px;background:var(--surface)}
.hme .step-b{display:flex;flex-direction:column;gap:5px;font-size:14.5px;line-height:1.55;color:var(--ink-2);min-width:0}
.hme .step-h{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center}
.hme .step-h .when{font-weight:700;color:var(--ink)}
.hme .step-b .quote{font-size:14px;color:var(--ink)}
.hme .step-b .quote q{quotes:"« " " »";background:var(--surface);padding:1px 4px;border-radius:4px}
.hme .win-t{font-size:12.5px;color:var(--muted)}
.hme .pf-open{font-size:13.5px;color:var(--ink-2);border-top:1px dashed var(--line-strong);padding-top:10px}
.hme .pf-open ul{padding-left:18px;margin-top:4px;display:flex;flex-direction:column;gap:3px}
.hme td q, .hme p q{quotes:"« " " »"}
.hme td.muted{color:var(--muted);font-size:12.5px}
.hme .findings{list-style:none;display:flex;flex-direction:column;gap:10px}
.hme .findings li{display:grid;grid-template-columns:2em minmax(0,1fr);gap:8px}
.hme .findings b.n{font-family:var(--display);font-size:20px;color:var(--brand);line-height:1.2}
.hme .draft{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--peach-ink);background:var(--peach);padding:2px 8px;border-radius:6px;align-self:flex-start}
.hme .preface-body p+p{margin-top:10px}
.hme .sig{font-weight:600;color:var(--ink)}
.hme .pf-toc{display:flex;flex-wrap:wrap;gap:6px;list-style:none}
.hme .pf-toc a{display:inline-block;padding:4px 10px;border-radius:99px;background:var(--surface);font-size:13.5px;text-decoration:none;color:var(--ink-2)}
.hme .pf-toc a:hover{background:var(--sky);color:var(--sky-ink)}
.hme .intro-frise{display:flex;flex-direction:column;gap:14px;padding-block:8px 28px}
.hme .intro-frise h2{font-size:clamp(24px,2.6vw,32px);line-height:1.1}
.hme .intro-frise .prose{font-size:15.5px;color:var(--ink-2)}
.hme svg .seg, .hme svg .ev{cursor:pointer}
.hme svg .seg:focus-visible, .hme svg .ev:focus-visible{outline:none;stroke:var(--sky-ink);stroke-width:2.5}
.hme svg .seg.is-on{stroke:var(--ink);stroke-width:2.5}
.hme svg .out-lbl{fill:var(--ink-2);font:600 10.5px var(--body);pointer-events:none}
.hme .seg-panel{border-top:1px dashed var(--line-strong);padding-top:12px;font-size:14.5px;line-height:1.55;color:var(--ink-2);display:flex;flex-direction:column;gap:8px}
.hme .panel-h{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;color:var(--ink)}
.hme .panel-h .when{color:var(--ink-2)}
.hme .panel-t, .hme .step-t{font-weight:700;color:var(--ink);font-size:15.5px}
.hme .panel-s{font-size:13px}
.hme ul.seg-src{list-style:none;display:flex;flex-direction:column;gap:3px;margin-top:3px}
.hme ul.seg-src a{word-break:break-word}
.hme .panel-more{font-size:13.5px;font-weight:600}
.hme blockquote{margin:2px 0 0;padding:10px 14px;border-left:3px solid var(--line-strong);background:var(--surface);border-radius:0 10px 10px 0;font-size:14.5px;color:var(--ink);display:flex;flex-direction:column;gap:4px}
.hme blockquote q{quotes:"« " " »"}
.hme .pf-curves{display:flex;flex-direction:column;gap:8px;margin:0}
.hme .pc-title{font-size:13.5px;font-weight:600;color:var(--ink-2)}
.hme .pf-curves .tipwrap{position:relative}
.hme .pc-svg{display:block;width:100%;height:auto}
.hme .pc-svg .pc-line{fill:none;stroke:var(--c);stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}
.hme .pc-svg .pc-dot{fill:var(--c);stroke:var(--card);stroke-width:1.5}
.hme .pc-svg .pc-lbl{font-size:12px;fill:var(--ink-2);font-weight:600}
.hme .pc-legend{list-style:none;display:flex;flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;font-size:12.5px;color:var(--ink-2)}
.hme .pc-legend li{display:flex;align-items:center;gap:6px}
.hme .pc-sw{display:inline-block;width:18px;height:0;border-top:3px solid var(--c);border-radius:2px}
.hme .pc-sw.dashed{border-top-style:dashed}
.hme .pc-accent .pc-curve, .hme .pc-accent .pc-lbl, .hme .pc-accent .pc-legend li{opacity:.22!important}
.hme .pc-accent .pc-curve.is-cur, .hme .pc-accent .pc-lbl.is-cur, .hme .pc-accent .pc-legend li.is-cur{opacity:1!important}
.hme .pc-accent .pc-curve.is-cur .pc-line{stroke-width:3.6}
.hme .pc-accent .pc-legend li.is-cur{font-weight:700}
.hme .pc-note{font-size:12.5px;color:var(--muted)}
.hme .seg-panel .pf-curves{margin:4px 0 6px;max-width:600px}
.hme .seg-panel .pc-title{font-size:13px}
.hme svg .is-off{display:none}
.hme svg.is-phone{display:none}
@media (max-width:700px){.hme svg.is-desk{display:none}
.hme svg.is-phone{display:block}}
.hme .brush{display:flex;flex-direction:column;gap:4px;margin-top:2px}
.hme .brush-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.hme .brush{border-top:1px dashed var(--line-strong);padding-top:10px}
.hme .brush-label{display:flex;flex-direction:column;gap:1px;font-size:12.5px;color:var(--muted)}
.hme .brush-label b{font-size:14px;color:var(--ink)}
.hme .brush-range{font-weight:700;color:var(--ink);font-family:var(--figures)}
.hme a.tile-frise{display:inline-block;margin-top:8px;font-size:12.5px;font-weight:600;color:var(--brand)}
.hme .brush-presets{display:flex;gap:4px}
.hme .brush-presets button{padding:3px 10px;border-radius:99px;border:1px solid var(--line);background:var(--card);font:500 12.5px var(--body);color:var(--ink-2);cursor:pointer}
.hme .brush-presets button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--card);font-weight:700}
.hme .brush-svg{display:block;width:100%;height:auto;touch-action:none;user-select:none}
.hme .brush-svg .brush-win{fill:var(--ink);fill-opacity:.06;stroke:var(--ink);stroke-width:1.5;cursor:grab}
.hme .brush-svg .brush-shade{fill:var(--card);fill-opacity:.7}
.hme .brush-svg .brush-h{fill:var(--card);stroke:var(--ink);stroke-width:1.5;cursor:ew-resize}
.hme .brush-hint{font-size:12px;color:var(--muted)}
@media (max-width:700px){.hme .brush{display:none}}
.hme .pc-all{display:flex-direction:column;gap:10px;margin:0}
.hme .pc-all .tipwrap{position:relative}
.hme .pc-all-svg .pc-line{stroke:var(--c)}
.hme .pc-all-svg .pc-line{stroke-width:1.8}
.hme .pc-all-svg .pc-com{stroke-width:2.6;stroke-linecap:round}
.hme .pc-kinds{list-style:none;display:flex;flex-wrap:wrap;gap:4px 18px;margin:0;padding:0;font-size:12.5px;color:var(--ink-2)}
.hme .pc-kinds li{display:flex;align-items:center;gap:8px}
.hme .pc-kind{display:inline-block;width:24px;height:0;border-top:2.5px solid var(--ink-2)}
.hme .pc-kind.fee{border-top-style:dashed}
.hme .pc-kind.com{border-top:3px dotted var(--ink-2)}
.hme .pc-all.by-date .pc-line{opacity:.1}
.hme .pc-all.by-date .pc-line.in-force{opacity:1;stroke-width:2.6}
.hme .pc-all.by-date .pc-lbl{opacity:0}
.hme .pc-dates{display:flex;flex-wrap:wrap;gap:6px}
.hme .pc-date{padding:4px 10px;border-radius:99px;border:1px solid var(--line);background:var(--card);font:500 12.5px var(--body);color:var(--ink-2);cursor:pointer}
.hme .pc-date[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--card);font-weight:700}
.hme .pc-all-svg .pc-lbl{font-size:11.5px}
.hme .pc-all.has-focus .pc-plat{opacity:.12}
.hme .pc-all.has-focus .pc-plat.is-focus{opacity:1}
.hme .pc-all.has-focus .pc-lbl{opacity:.25}
.hme .pc-all.has-focus .pc-lbl.is-focus{opacity:1}
.hme .pc-keys{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0}
.hme .pc-key{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;border:1px solid var(--line);background:var(--card);font:500 12.5px var(--body);color:var(--ink-2);cursor:pointer}
.hme .pc-key i{width:14px;height:3px;border-radius:2px;background:var(--c)}
.hme .pc-key[aria-pressed="true"]{border-color:var(--c);color:var(--ink);font-weight:700}
.hme .pc-all figcaption{font-size:13px;line-height:1.5;color:var(--muted)}
.hme .step-shot{margin:4px 0 2px;display:flex;flex-direction:column;gap:6px}
.hme .step-shot img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:10px;background:#fff}
.hme .step-shot figcaption{font-size:12.5px;line-height:1.45;color:var(--muted)}
.hme .shots{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-start}
.hme .shots .step-shot{flex:1 1 100%;min-width:0}
.hme .shots .step-shot.is-tall{flex:1 1 240px;max-width:360px}
.hme blockquote cite{font-style:normal;font-size:12.5px;color:var(--muted)}
.hme .pf-intro{font-size:15px;line-height:1.55;color:var(--ink-2)}
.hme ul.words{list-style:none;display:flex;flex-direction:column;gap:4px}
.hme ul.words .when{font-weight:600;color:var(--ink);margin-right:4px}
.hme article.pf{border-top:4px solid var(--c,var(--line))}
.hme article.pf blockquote{border-left-color:var(--c,var(--line-strong))}
.hme .pf-dot{background:var(--c)}
.hme .pf-toc a{display:inline-flex;align-items:center;gap:7px}
.hme .pf-toc a i{width:10px;height:10px;border-radius:2px;background:var(--c);display:inline-block;flex:none}
.hme ol.tiles{list-style:none;display:flex;flex-direction:column;gap:10px;position:relative;margin:0;padding:0 0 0 28px}
.hme ol.tiles::before{content:"";position:absolute;left:6px;top:16px;bottom:16px;width:2px;background:var(--line)}
.hme li.tile{position:relative;padding:12px 14px 13px;border:1px solid var(--line);border-radius:14px;background:var(--card);min-width:0}
.hme li.tile .step-b{gap:6px}
.hme li.tile .step-t{margin-top:2px}
.hme li.tile-ev{border-style:dashed;background:transparent}
.hme li.tile-ev::before{background:var(--card)!important;box-shadow:inset 0 0 0 2.5px var(--ink),0 0 0 3px var(--card)!important;transform:scale(.8)}
.hme li.tile-ev p{font-style:italic}
.hme li.tile::before{content:"";position:absolute;left:-28px;top:14px;width:14px;height:14px;border-radius:99px;background:var(--tc);box-shadow:0 0 0 3px var(--card)}
.hme li.tile .tile-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px}
.hme li.tile .tile-top .tile-when{margin-top:0}
.hme li.tile .tile-top .pill-m{white-space:normal}
.hme .tile-C{--tc:var(--m-c)}
.hme .tile-F{--tc:var(--m-f)}
.hme .tile-P{--tc:var(--m-p)}
.hme .tile-T{--tc:repeating-linear-gradient(45deg,var(--m-t) 0 2.4px,var(--m-t-bg) 2.4px 6px)}
.hme .tile-N{--tc:repeating-linear-gradient(45deg,var(--m-n) 0 1.6px,var(--surface) 1.6px 6px)}
.hme .tile-when{font-size:12px;font-weight:600;color:var(--muted);margin-top:3px}
.hme .tile-fig{font-family:var(--display);font-size:24px;line-height:1.1;letter-spacing:-0.02em;color:var(--ink);font-variant-numeric:tabular-nums}
.hme dl.tile-dl{display:grid;grid-template-columns:minmax(110px,max-content) minmax(0,1fr);gap:4px 12px;margin:4px 0 0;font-size:12.5px;line-height:1.35}
.hme dl.tile-dl dt{color:var(--muted)}
@media (max-width:560px){.hme dl.tile-dl{grid-template-columns:minmax(0,1fr);gap:1px}
.hme dl.tile-dl dt{margin-top:5px}}
.hme li.tile a.tile-more{justify-self:start}
.hme dl.tile-dl dd{margin:0;color:var(--ink);font-weight:600}
.hme .tipwrap{position:relative}
.hme svg .col-hit{fill:var(--ink);fill-opacity:0;cursor:pointer}
.hme svg .col-hit:hover, .hme svg .col-hit:focus-visible, .hme svg .col-hit.is-on{fill-opacity:.06;outline:none}
.hme .hover-tip{position:absolute;z-index:5;top:0;left:0;width:max-content;max-width:min(320px,90%);padding:10px 12px;border-radius:12px;background:var(--card);border:1px solid var(--line-strong);box-shadow:0 8px 24px rgba(0,0,0,.12);font-size:13px;line-height:1.4;pointer-events:none}
.hme .hover-tip .tip-h{display:flex;justify-content:space-between;gap:16px;margin-bottom:6px}
.hme .hover-tip ul{list-style:none;display:flex;flex-direction:column;gap:6px;margin:0;padding:0}
.hme .hover-tip li{display:flex;gap:8px;align-items:flex-start}
.hme .hover-tip small{display:block;color:var(--muted);font-size:12px}
.hme .pf-bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:6;margin-inline:-8px;padding:10px 8px;background:var(--bg);border-bottom:1px solid var(--line)}
.hme .pf-bar .pf-toc a{padding:3px 10px;font-size:13px}
.hme .pf-bar .pf-toc a[aria-current="true"]{background:var(--brand);color:var(--brand-ink)}
.hme .pf-bar .pf-toc a[aria-current="true"] i{box-shadow:0 0 0 1.5px var(--brand-ink)}
.hme article.pf{scroll-margin-top:110px}
@media (max-width:700px){.hme .pf-bar .pf-toc{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.hme .pf-bar .pf-toc li{flex:none}
.hme article.pf{scroll-margin-top:64px}}
.hme .data-links{list-style:none;display:flex;flex-wrap:wrap;gap:10px}
.hme .data-links a{display:inline-flex;padding:8px 14px;border-radius:99px;background:var(--brand);color:var(--brand-ink);font-weight:600;font-size:14px;text-decoration:none}
.hme svg.mini{display:block;width:100%;max-width:240px;height:auto}
.hme svg.mini .mt{fill:var(--muted);font:10px var(--body)}
.hme svg.mini .mt.strong{fill:var(--ink);font-weight:700}
.hme svg.mini .mini-line{fill:none;stroke:var(--c);stroke-width:2;stroke-linejoin:round}
.hme svg.mini .mini-area{fill:var(--c);fill-opacity:.12}
.hme svg.mini .mini-dot{fill:var(--c);stroke:var(--card);stroke-width:1.5}
.hme .tile-acts{font-size:12.5px;color:var(--ink-2);margin:2px 0 0}
.hme .tile-acts b{color:var(--ink)}
.hme a.tile-more{align-self:flex-start;margin-top:4px;padding:4px 10px;border-radius:99px;background:var(--surface);font-size:12.5px;font-weight:600;color:var(--brand);text-decoration:none}
.hme a.tile-more:hover{background:var(--sky);color:var(--sky-ink)}
.hme ul.legend.compact{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12.5px}
.hme ul.legend.compact li{align-items:center}
.hme ul.legend.compact i.sw{width:16px;height:10px;margin-top:0}
.hme .lane-m{display:none;overflow-x:auto;-webkit-overflow-scrolling:touch}
.hme .lm-inner{display:flex;flex-direction:column;gap:5px}
.hme .lm-row{display:flex;flex-direction:column;gap:2px}
.hme .lm-row svg, .hme .lm-axis{display:block}
.hme .lm-link{position:sticky;left:0;align-self:flex-start;z-index:1;padding:0 10px 0 2px;text-decoration:none;color:var(--ink);background:linear-gradient(90deg,var(--card) 85%,transparent)}
.hme .lm-name b{font:600 12.5px/1.25 var(--body)}
.hme .lm-name small{display:block;font-size:11px;line-height:1.2;color:var(--muted)}
@media (max-width:700px){.hme svg.lane-svg{display:none}
.hme .lane-m{display:block}
.hme .lanewrap{overflow:visible}}
.hme .read-next{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;border-radius:26px;overflow:hidden;background:var(--card);border:1px solid var(--line-strong);color:var(--ink);text-decoration:none;box-shadow:0 10px 40px rgba(0,0,0,.05);transition:transform .2s ease,box-shadow .2s ease}
.hme .read-next:hover{transform:translateY(-2px);box-shadow:0 16px 48px rgba(0,0,0,.08)}
.hme .read-next-shot{align-self:stretch;display:flex;align-items:center;padding:18px;background:var(--surface)}
.hme .read-next-shot img{width:100%;height:auto;display:block;border-radius:14px;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.hme .read-next-body{display:flex;flex-direction:column;gap:12px;padding:clamp(20px,3vw,36px)}
.hme .read-next .chip{align-self:flex-start;padding:3px 10px;border-radius:99px;font-size:12px;font-weight:600;background:var(--sky);color:var(--sky-ink)}
.hme .read-next .t{font-family:var(--display);font-size:clamp(22px,2.4vw,30px);line-height:1.12;font-weight:700;letter-spacing:-0.03em}
.hme .read-next .s{font-size:15.5px;line-height:1.55;color:var(--ink-2)}
.hme .read-next-points{list-style:none;display:flex;flex-direction:column;gap:6px;font-size:14.5px;color:var(--ink)}
.hme .read-next-points li{display:flex;gap:8px;align-items:baseline}
.hme .read-next-points li::before{content:"";flex:0 0 auto;width:7px;height:7px;border-radius:99px;background:var(--lime);transform:translateY(-1px)}
.hme .read-next-cta{align-self:flex-start;margin-top:4px;padding:10px 18px;border-radius:99px;background:var(--brand);color:var(--brand-ink);font-size:14.5px;font-weight:600}
@media (max-width:760px){.hme .read-next{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.hme .read-next, .hme .read-next:hover{transition:none;transform:none}}
.hme .crumb{display:inline-flex;align-items:center;gap:6px;font-size:15px;font-weight:600;color:var(--ink-2);text-decoration:none}
