  :root{
    --ink:#111111;
    --ink-soft:#333333;
    --muted:#6a6a6a;
    --faint:#8a8a8a;
    --line:#e6e2dc;
    --line-strong:#d2cdc5;
    --paper:#ffffff;
    --tint:#faf8f5;

    /* ===================================================================
       REGISTRY-DRIVEN PALETTE TOKENS
       These are the ONLY colors a per-domain theme overrides. The shared
       design system (white bg, serif heads, boxes, kickers, charts) reads
       everything below through these tokens. Default values = the original
       warm coral palette; each domain HTML head overrides a subset.
       ------------------------------------------------------------------- */
    --primary:#e8552d;       /* domain primary (kickers, rules, rank #1) */
    --primary-ink:#c8431f;   /* darker primary for text-on-white / hover  */
    --accent-2:#14a3a0;      /* support hue 2 (rank #2, weights bar)       */
    --accent-2-ink:#0e7d7a;
    --accent-3:#e5a021;      /* support hue 3 (rank #3, stat/nl accents)   */
    --accent-3-ink:#c8871a;
    --accent-4:#b8477e;      /* support hue 4 (rank #4)                    */
    --accent-5:#4c86d6;      /* support hue 5 (rank #5, chart series)      */
    --accent-6:#6bb844;      /* support hue 6 (rank #6, chart series)      */

    /* chart series aliases — recolored per domain via the tokens above */
    --chart-1:var(--primary);
    --chart-2:var(--accent-2);
    --chart-3:var(--accent-3);
    --chart-4:var(--accent-4);
    --chart-5:var(--accent-5);
    --chart-6:var(--accent-6);

    /* legacy names kept as aliases so existing rules/markup still resolve */
    --coral:var(--primary);
    --coral-ink:var(--primary-ink);
    --teal:var(--accent-2);
    --teal-ink:var(--accent-2-ink);
    --gold:var(--accent-3);
    --gold-ink:var(--accent-3-ink);
    --plum:var(--accent-4);
    --accent:var(--primary);
    --accent-ink:var(--primary-ink);

    --serif:"Source Serif 4", Georgia, "Times New Roman", serif;
    --sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  }
  *{box-sizing:border-box;}
  /* lively per-section hue helpers */
  .k-coral{color:var(--coral)!important;}
  .k-teal{color:var(--teal-ink)!important;}
  .k-gold{color:var(--gold-ink)!important;}
  .k-plum{color:var(--plum)!important;}
  .rule-teal{border-top-color:var(--teal)!important;}
  .rule-gold{border-top-color:var(--gold)!important;}
  .rule-plum{border-top-color:var(--plum)!important;}
  .lrule-teal{border-left-color:var(--teal)!important;}
  .lrule-gold{border-left-color:var(--gold)!important;}
  html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);}
  body{font-family:var(--sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;}
  a{color:inherit;text-decoration:none;}
  .serif{font-family:var(--serif);}
  .wrap{max-width:1180px;margin:0 auto;padding:0 28px;}

  /* mockup ribbon */
  .mockbar{background:#f7ecd0;border-bottom:1px solid #e6d5a8;color:#6b5518;font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;text-align:center;padding:5px 10px;font-weight:600;}

  /* ---- masthead ---- */
  .topmeta{border-bottom:1px solid var(--line);}
  .topmeta .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);}
  .topmeta .r{display:flex;gap:20px;align-items:center;}
  .masthead{border-bottom:3px solid var(--coral);}
  .masthead .wrap{display:flex;align-items:center;justify-content:space-between;padding:18px 28px;}
  .wordmark{font-family:var(--serif);font-weight:700;font-size:34px;letter-spacing:-.01em;line-height:1;}
  .wordmark .rev{color:var(--accent);}
  .mh-right{display:flex;align-items:center;gap:22px;}
  .subscribe{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-weight:600;}
  .glyph{width:16px;height:16px;stroke:var(--ink);fill:none;stroke-width:1.6;}
  nav.primary{border-bottom:1px solid var(--line);}
  nav.primary .wrap{display:flex;gap:28px;height:42px;align-items:center;font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;}
  nav.primary a:hover{color:var(--accent);}

  /* ---- layout grid ---- */
  .main{display:grid;grid-template-columns:1fr 316px;gap:44px;padding-top:30px;padding-bottom:48px;}
  @media(max-width:900px){ .main{grid-template-columns:1fr;gap:34px;} }

  /* ---- article head ---- */
  .kicker{font-size:11.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:14px;}
  h1.head{font-family:var(--serif);font-weight:700;font-size:46px;line-height:1.05;letter-spacing:-.015em;margin:0 0 16px;max-width:15ch;}
  .deck{font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.4;color:var(--ink-soft);margin:0 0 18px;max-width:52ch;font-weight:400;}
  .byline{font-size:12.5px;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;display:flex;gap:16px;flex-wrap:wrap;letter-spacing:.02em;}
  .byline .b-au{color:var(--ink);font-weight:600;}

  /* ---- lead feature ---- */
  .lead{margin-top:26px;display:grid;grid-template-columns:340px 1fr;gap:28px;align-items:start;border:1px solid var(--line-strong);border-top:3px solid var(--accent);background:#fff;padding:24px;}
  @media(max-width:560px){ .lead{grid-template-columns:1fr;} }
  .lead .imgbox{background:#fff;border:1px solid var(--line);padding:0;overflow:hidden;}
  .lead .imgbox img{width:100%;height:280px;object-fit:cover;display:block;}
  .lead .imgbox svg{width:100%;height:auto;display:block;}
  .lead .cap{font-size:11px;color:var(--faint);margin-top:8px;letter-spacing:.03em;}
  .lead .best-tag{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:8px;}
  .lead h2{font-family:var(--serif);font-weight:600;font-size:27px;line-height:1.12;margin:0 0 6px;}
  .lead .brandmeta{font-size:12.5px;color:var(--muted);margin-bottom:12px;}
  .lead p{font-size:15px;line-height:1.62;color:var(--ink-soft);margin:0 0 14px;}
  .scoreflex{display:flex;gap:26px;align-items:flex-end;border-top:1px solid var(--line);padding-top:14px;}
  .scoreflex .big{font-family:var(--serif);font-weight:700;font-size:40px;line-height:.9;}
  .scoreflex .lbl{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-top:5px;}
  .scoreflex .price{font-family:var(--serif);font-weight:600;font-size:26px;}

  /* ---- section divider ---- */
  .divider{display:flex;align-items:center;gap:16px;margin:40px 0 22px;}
  .divider::before,.divider::after{content:"";flex:1;height:2px;background:var(--coral);border-radius:2px;opacity:.85;}
  .divider span{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--coral-ink);font-weight:600;}

  /* ---- ranked table ---- */
  .ranktable{border-top:3px solid var(--coral);}
  .rankrow{display:grid;grid-template-columns:34px 92px 1fr 92px 118px;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);}
  @media(max-width:560px){ .rankrow{grid-template-columns:26px 64px 1fr;grid-template-areas:"num img body" "num img specs" "num score price";row-gap:8px;} .rankrow .r-score{grid-area:score;} .rankrow .r-price{grid-area:price;text-align:right;} .rankrow .r-img{grid-area:img;} .rankrow .r-num{grid-area:num;} .rankrow .r-body{grid-area:body;} }
  .r-num{font-family:var(--serif);font-weight:700;font-size:26px;color:var(--accent);text-align:center;line-height:1;}
  .r-img{background:#fff;border:1px solid var(--line);padding:6px;}
  .r-img svg{width:100%;height:auto;display:block;}
  .r-body h3{font-family:var(--serif);font-weight:600;font-size:18px;margin:0 0 3px;}
  .r-body .specs{font-size:12.5px;color:var(--muted);line-height:1.45;}
  .r-body .specs b{color:var(--ink-soft);font-weight:600;}
  .r-score{text-align:center;}
  .r-score .sc{font-family:var(--serif);font-weight:700;font-size:24px;line-height:1;}
  .r-score .of{font-size:10px;color:var(--faint);letter-spacing:.05em;}
  .scorebar{height:5px;background:var(--line);margin-top:6px;position:relative;border-radius:3px;overflow:hidden;}
  .scorebar i{position:absolute;left:0;top:0;bottom:0;background:var(--accent);border-radius:3px;}
  /* cheerful per-rank hue cycling */
  .rankrow:nth-child(1) .r-num{color:var(--coral);}   .rankrow:nth-child(1) .scorebar i{background:var(--coral);}
  .rankrow:nth-child(2) .r-num{color:var(--teal-ink);} .rankrow:nth-child(2) .scorebar i{background:var(--teal);}
  .rankrow:nth-child(3) .r-num{color:var(--gold-ink);} .rankrow:nth-child(3) .scorebar i{background:var(--gold);}
  .rankrow:nth-child(4) .r-num{color:var(--plum);}     .rankrow:nth-child(4) .scorebar i{background:var(--plum);}
  .rankrow:nth-child(5) .r-num{color:var(--accent-5);}         .rankrow:nth-child(5) .scorebar i{background:var(--accent-5);}
  .rankrow:nth-child(6) .r-num{color:var(--accent-6);}         .rankrow:nth-child(6) .scorebar i{background:var(--accent-6);}
  .r-price{text-align:right;}
  .r-price .p{font-family:var(--serif);font-weight:600;font-size:19px;}
  .r-price .asof{font-size:10.5px;color:var(--faint);letter-spacing:.02em;margin-top:2px;}

  /* ---- boxes ---- */
  .box{border:1px solid var(--line-strong);padding:22px;margin-top:14px;background:#fff;}
  .box.tint{background:#fff;border-top:3px solid var(--accent);}
  .box h4{font-family:var(--serif);font-weight:600;font-size:19px;margin:0 0 4px;}
  .box .boxk{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:9px;}
  .weights{list-style:none;margin:12px 0 0;padding:0;}
  .weights li{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px;}
  .weights li:first-child{border-top:none;}
  .weights .wname{color:var(--ink-soft);}
  .weights .wbar{flex:1;height:6px;background:var(--line);margin:0 14px;position:relative;max-width:150px;}
  .weights .wbar i{position:absolute;left:0;top:0;bottom:0;background:var(--teal);border-radius:3px;}
  .weights .wbar{border-radius:3px;overflow:hidden;}
  .weights .wval{font-family:var(--serif);font-weight:600;width:38px;text-align:right;}

  /* key findings stat box */
  .stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-strong);border:1px solid var(--line-strong);border-top:3px solid var(--gold);margin-top:14px;}
  .stats .cell{background:#fff;padding:20px 18px;}
  .stats .num{font-family:var(--serif);font-weight:700;font-size:34px;line-height:1;color:var(--coral-ink);}
  .stats .cell:nth-child(1) .num{color:var(--coral);}
  .stats .cell:nth-child(2) .num{color:var(--teal-ink);}
  .stats .cell:nth-child(3) .num{color:var(--gold-ink);}
  .stats .cell:nth-child(4) .num{color:var(--plum);}
  .stats .cap{font-size:12.5px;color:var(--muted);margin-top:7px;line-height:1.4;}

  /* feature / takeaway box — white with heavy left accent rule */
  .darkbox{background:#fff;color:var(--ink);padding:26px 26px 26px 30px;margin-top:26px;border:1px solid var(--line);border-left:5px solid var(--accent);}
  .darkbox .boxk{color:var(--accent);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:10px;}
  .darkbox h4{color:var(--ink);font-family:var(--serif);font-weight:600;font-size:22px;margin:0 0 10px;}
  .darkbox p{font-size:14.5px;line-height:1.62;color:var(--ink-soft);margin:0;}
  .darkbox .quote{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.4;color:var(--ink);margin:0 0 16px;font-weight:500;}

  /* figure / chart */
  figure.fig{margin:26px 0 0;border:1px solid var(--line-strong);padding:20px;background:#fff;}
  figure.fig .figk{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:600;}
  figure.fig h4{font-family:var(--serif);font-weight:600;font-size:18px;margin:3px 0 2px;}
  figure.fig .figsub{font-size:12px;color:var(--muted);margin-bottom:18px;}
  .barchart{display:flex;flex-direction:column;gap:11px;}
  .bcrow{display:grid;grid-template-columns:96px 1fr 64px;gap:10px;align-items:center;font-size:12.5px;}
  .bcrow .bname{color:var(--ink-soft);text-align:right;}
  .bctrack{height:20px;background:#f2f0ec;position:relative;}
  .bctrack i{position:absolute;left:0;top:0;bottom:0;background:var(--accent);opacity:.88;}
  .bcrow .bval{font-family:var(--serif);font-weight:600;color:var(--ink);}
  figure.fig figcaption{font-size:11.5px;color:var(--faint);margin-top:16px;border-top:1px solid var(--line);padding-top:10px;line-height:1.5;}

  /* second chart: coverage donut-ish stacked */
  .cov{display:flex;flex-direction:column;gap:14px;margin-top:4px;}
  .covrow{font-size:12.5px;}
  .covrow .clbl{display:flex;justify-content:space-between;margin-bottom:5px;color:var(--ink-soft);}
  .covrow .clbl b{font-family:var(--serif);}
  .covtrack{height:14px;background:#f2f0ec;position:relative;}
  .covtrack i{position:absolute;left:0;top:0;bottom:0;}

  /* editorial photos */
  .photofig{margin:0;}
  .photofig img{width:100%;display:block;border:1px solid var(--line);}
  .photofig figcaption{font-size:11px;color:var(--faint);margin-top:7px;letter-spacing:.02em;line-height:1.4;}
  .photofig figcaption .cr{color:var(--faint);}
  .inlinephoto{margin:26px 0 0;}
  .inlinephoto img{width:100%;height:300px;object-fit:cover;display:block;border:1px solid var(--line);}
  .inlinephoto figcaption{font-size:11px;color:var(--faint);margin-top:7px;letter-spacing:.02em;line-height:1.4;}
  .railphoto{margin:0 0 10px;}
  .railphoto img{width:100%;height:150px;object-fit:cover;display:block;border:1px solid var(--line);}
  .railphoto figcaption{font-size:10.5px;color:var(--faint);margin-top:6px;line-height:1.4;}
  .bylinephoto{width:52px;height:52px;border-radius:50%;object-fit:cover;border:1px solid var(--line);flex:0 0 auto;}
  .byline{align-items:center;}

  /* body prose */
  .prose{margin-top:30px;}
  .prose p{font-size:16px;line-height:1.68;color:var(--ink-soft);margin:0 0 18px;}
  .prose p.drop::first-letter{font-family:var(--serif);font-weight:700;font-size:56px;line-height:.8;float:left;padding:6px 10px 0 0;color:var(--ink);}
  .prose h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:28px 0 10px;}

  /* ---- right rail ---- */
  aside .railmod{border-top:3px solid var(--coral);padding-top:14px;margin-bottom:32px;}
  aside .railk{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-bottom:14px;color:var(--coral-ink);}
  .mostread{list-style:none;margin:0;padding:0;}
  .mostread li{display:grid;grid-template-columns:30px 1fr;gap:12px;padding:13px 0;border-top:1px solid var(--line);align-items:start;}
  .mostread li:first-child{border-top:none;}
  .mostread .mrnum{font-family:var(--serif);font-weight:700;font-size:24px;color:var(--accent);line-height:.9;}
  .mostread li:nth-child(1) .mrnum{color:var(--coral);}
  .mostread li:nth-child(2) .mrnum{color:var(--teal-ink);}
  .mostread li:nth-child(3) .mrnum{color:var(--gold-ink);}
  .mostread li:nth-child(4) .mrnum{color:var(--plum);}
  .mostread li:nth-child(5) .mrnum{color:var(--accent-5);}
  .mostread .mrt{font-family:var(--serif);font-weight:500;font-size:15px;line-height:1.28;}
  .mostread .mrt span{display:block;font-family:var(--sans);font-size:11.5px;color:var(--muted);margin-top:4px;letter-spacing:.02em;text-transform:uppercase;}

  .nlbox{border:1px solid var(--line-strong);border-top:3px solid var(--gold);background:#fff;padding:22px;}
  .nlbox .nlk{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);font-weight:600;margin-bottom:8px;}
  .nlbox h4{font-family:var(--serif);font-weight:600;font-size:20px;margin:0 0 8px;line-height:1.2;}
  .nlbox p{font-size:13px;color:var(--muted);margin:0 0 14px;line-height:1.5;}
  .nlform{display:flex;flex-direction:column;gap:8px;}
  .nlform input{border:1px solid var(--line-strong);padding:10px 12px;font-family:var(--sans);font-size:13px;background:#fff;}
  .nlform button{background:var(--coral);color:#fff;border:none;padding:11px;font-family:var(--sans);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;cursor:pointer;border-radius:4px;}
  .nlform button:hover{background:var(--coral-ink);}

  .related{list-style:none;margin:0;padding:0;}
  .related li{padding:12px 0;border-top:1px solid var(--line);}
  .related li:first-child{border-top:none;}
  .related a{font-family:var(--serif);font-size:15px;line-height:1.3;display:block;}
  .related .rk{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:600;margin-bottom:3px;}
  .related li:nth-child(1) .rk{color:var(--teal-ink);}
  .related li:nth-child(2) .rk{color:var(--gold-ink);}
  .related li:nth-child(3) .rk{color:var(--plum);}
  .related li:nth-child(4) .rk{color:var(--coral);}
  .railmod.teal{border-top-color:var(--teal);}
  .railmod.teal .railk{color:var(--teal-ink);}

  .provenance{font-size:11.5px;color:var(--faint);line-height:1.55;border-top:1px solid var(--line);padding-top:12px;}

  /* footer */
  footer{border-top:3px solid var(--coral);margin-top:20px;padding:34px 0 46px;}
  footer .wrap{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;flex-wrap:wrap;}
  footer .fmark{font-family:var(--serif);font-weight:700;font-size:22px;}
  footer .fmark .rev{color:var(--accent);}
  footer .fmark .est{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:6px;font-weight:500;}
  footer nav{display:flex;gap:26px;flex-wrap:wrap;font-size:12.5px;letter-spacing:.03em;color:var(--ink-soft);}
  footer .copy{width:100%;font-size:11.5px;color:var(--faint);border-top:1px solid var(--line);padding-top:16px;margin-top:22px;line-height:1.6;}

  /* ===== shared extras for page 2 & 3 (same design system) ===== */
  /* provider logo-style block */
  .logoblock{width:100%;height:100%;min-height:52px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-weight:700;font-size:13.5px;color:#fff;letter-spacing:0;text-align:center;line-height:1.08;padding:5px 4px;overflow:hidden;}
  .r-img.logo{padding:0;overflow:hidden;}
  /* small colored text labels (NOT badges) */
  .tlabel{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;font-weight:700;}
  .tlabel.fast{color:var(--teal-ink);}
  .tlabel.cheap{color:var(--gold-ink);}
  .tlabel.avail{color:var(--plum);}
  /* filter bar */
  .filterbar{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:center;border:1px solid var(--line-strong);border-top:3px solid var(--coral);padding:14px 18px;margin-top:22px;background:#fff;}
  .filterbar .flbl{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-right:2px;}
  .filtergroup{display:flex;gap:7px;flex-wrap:wrap;align-items:center;}
  .chip{font-size:12px;padding:5px 12px;border:1px solid var(--line-strong);border-radius:20px;color:var(--ink-soft);background:#fff;cursor:pointer;font-family:var(--sans);}
  .chip.on{background:var(--coral);border-color:var(--coral);color:#fff;font-weight:600;}
  .chip.on.teal{background:var(--teal);border-color:var(--teal);}
  .filterbar .fdiv{width:1px;align-self:stretch;background:var(--line);}
  /* grouped/scatter figure legend */
  .figlegend{display:flex;flex-wrap:wrap;gap:14px;font-size:11.5px;color:var(--ink-soft);margin-bottom:14px;}
  .figlegend span{display:inline-flex;align-items:center;gap:6px;}
  .figlegend i{width:11px;height:11px;border-radius:2px;display:inline-block;}
  /* two-series grouped bar */
  .g2row{display:grid;grid-template-columns:96px 1fr;gap:10px;align-items:center;font-size:12.5px;margin-bottom:13px;}
  .g2row .bname{color:var(--ink-soft);text-align:right;}
  .g2bars{display:flex;flex-direction:column;gap:4px;}
  .g2track{height:15px;background:#f2f0ec;position:relative;border-radius:3px;overflow:hidden;}
  .g2track i{position:absolute;left:0;top:0;bottom:0;border-radius:3px;}
  .g2track b{position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:10.5px;font-family:var(--serif);font-weight:600;color:var(--ink);}
  /* line chart (svg) */
  .linechart{width:100%;height:auto;display:block;}
  /* stat callout row (page 3) */
  .statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line-strong);border:1px solid var(--line-strong);border-top:3px solid var(--coral);margin-top:24px;}
  .statrow .cell{background:#fff;padding:22px 18px;}
  .statrow .num{font-family:var(--serif);font-weight:700;font-size:38px;line-height:1;}
  .statrow .cell:nth-child(1) .num{color:var(--coral);}
  .statrow .cell:nth-child(2) .num{color:var(--teal-ink);}
  .statrow .cell:nth-child(3) .num{color:var(--gold-ink);}
  .statrow .cell:nth-child(4) .num{color:var(--plum);}
  .statrow .cap{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.4;}
  @media(max-width:560px){ .statrow{grid-template-columns:1fr 1fr;} }
  /* cite this study block */
  .citebox{border:1px solid var(--line);border-left:5px solid var(--coral);padding:22px 24px;margin-top:26px;background:#fff;}
  .citebox .boxk{color:var(--coral);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:600;margin-bottom:9px;}
  .citebox p{font-family:var(--serif);font-size:14px;line-height:1.55;color:var(--ink-soft);margin:0;}
  .citebox code{font-family:var(--sans);font-size:12.5px;color:var(--muted);}
  /* findings list (page 3) */
  .findings{list-style:none;margin:14px 0 0;padding:0;}
  .findings li{padding:12px 0 12px 26px;border-top:1px solid var(--line);position:relative;font-size:15px;line-height:1.55;color:var(--ink-soft);}
  .findings li:first-child{border-top:none;}
  .findings li::before{content:"";position:absolute;left:0;top:18px;width:10px;height:10px;border-radius:2px;}
  .findings li:nth-child(1)::before{background:var(--coral);}
  .findings li:nth-child(2)::before{background:var(--teal);}
  .findings li:nth-child(3)::before{background:var(--gold);}
  .findings li:nth-child(4)::before{background:var(--plum);}
  .findings li:nth-child(5)::before{background:var(--accent-5);}
  /* table of contents (page 3 rail) */
  .toc{list-style:none;margin:0;padding:0;counter-reset:toc;}
  .toc li{display:grid;grid-template-columns:26px 1fr;gap:10px;padding:11px 0;border-top:1px solid var(--line);align-items:baseline;}
  .toc li:first-child{border-top:none;}
  .toc .tnum{font-family:var(--serif);font-weight:700;font-size:15px;color:var(--coral);}
  .toc a{font-family:var(--serif);font-size:14.5px;line-height:1.3;}
