/* The fund's approved 2026 benefits (benefits-2026.js).
   Three places, one table markup (.bn-scroll > table.bn-table, a sticky first column of benefit names):
     the public benefits page  body.bn-page            (B, benefits-page.js into benefits.html)
     the member's view         .shell #benefits-view   (B, benefits-ui.js, "Packages & benefits")
     the staff schedule        .shell #benefits-view   (C, benefits-ui.js, "Packages")
   plus the headline figures on the application form's package panel (#package-info .package-facts, B).
   Every rule that sets a colour sets its background too (scripts/check-color-pairs.mjs). Tokens only. */

/* ===================== Public page (B) ===================== */
html[data-experience=brand] .bn-layout{position:relative;display:flex;flex-direction:column;gap:24px;max-width:1248px;margin:-72px auto 0;padding:0 24px 80px}
html[data-experience=brand] .bs-site .bn-jump{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:1px solid transparent;border-radius:var(--b-r-pill);background:var(--b-surface);color:var(--b-ink);box-shadow:var(--b-shadow)}
html[data-experience=brand] .bs-site .bn-jump a{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;border-radius:var(--b-r-pill);background:transparent;color:var(--b-ink-2);font-weight:700;text-decoration:none}
html[data-experience=brand] .bs-site .bn-jump a:hover{background:var(--b-mist);color:var(--b-ink)}
html[data-experience=brand] .bs-site .bn-card{min-width:0;scroll-margin-top:16px;padding:40px;border:1px solid transparent;border-radius:var(--b-r-card);background:var(--b-surface);color:var(--b-ink);box-shadow:var(--b-shadow)}
html[data-experience=brand][data-theme=dark] .bs-site .bn-card{border-color:var(--b-line)}
html[data-experience=brand] .bn-card-head{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}
html[data-experience=brand] .bs-site .bn-card h2{background:transparent;color:var(--b-ink);font:800 32px/36px var(--b-display);letter-spacing:-.02em}
html[data-experience=brand] .bs-site .bn-card h3{margin-top:32px;background:transparent;color:var(--b-ink);font:800 22px/28px var(--b-display);letter-spacing:-.02em}
html[data-experience=brand] .bs-site .bn-card p{max-width:72ch;margin-top:12px;background:transparent;color:var(--b-ink-2);font-size:17px;line-height:27px}
html[data-experience=brand] .bs-site .bn-card .bn-card-head p{margin-top:0}
html[data-experience=brand] .bn-pick{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}
html[data-experience=brand] .bs-site .bn-pick a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:1.5px solid var(--b-line-strong);border-radius:var(--b-r-pill);background:var(--b-surface);color:var(--b-ink);font-size:15px;font-weight:700;text-decoration:none}
html[data-experience=brand] .bs-site .bn-pick a:hover{border-color:var(--b-brand);background:var(--b-surface);color:var(--b-brand)}
html[data-experience=brand] .bs-site .bn-pick a[aria-current=page]{border-color:var(--b-navy);background:var(--b-navy);color:var(--b-on-navy)}
html[data-experience=brand][data-theme=dark] .bs-site .bn-pick a[aria-current=page]{border-color:var(--b-brand);background:var(--b-brand);color:var(--b-on-brand)}
html[data-experience=brand] .bs-site .bn-card p:is(.bn-legend,.bn-fine){margin-top:14px;background:transparent;color:var(--b-muted);font-size:14px;line-height:22px}
html[data-experience=brand] .bs-site .bn-notes{display:flex;flex-direction:column;gap:10px;margin:16px 0 0;padding:0;list-style:none}
html[data-experience=brand] .bs-site .bn-notes li{scroll-margin-top:16px;padding:12px 16px;border-radius:var(--b-r-card-sm);background:var(--b-sunken);color:var(--b-ink-2);font-size:16px;line-height:25px}
html[data-experience=brand] .bs-site .bn-notes li:target{background:var(--b-leaf-mist);color:var(--b-ink)}
html[data-experience=brand] .bs-site .bn-notes strong{background:transparent;color:var(--b-ink)}
html[data-experience=brand] .bn-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px;margin:16px 0 0}
html[data-experience=brand] .bs-site .bn-terms dt{background:transparent;color:var(--b-ink);font-weight:700;font-size:16px}
html[data-experience=brand] .bs-site .bn-terms dd{margin:4px 0 0;background:transparent;color:var(--b-ink-2);font-size:16px;line-height:25px}
html[data-experience=brand] .bs-site .bn-bullets{display:flex;flex-direction:column;gap:10px;margin:16px 0 0;padding-left:22px}
html[data-experience=brand] .bs-site .bn-bullets li{max-width:80ch;background:transparent;color:var(--b-ink-2);font-size:17px;line-height:27px}
html[data-experience=brand] .bs-site .bn-bullets strong{background:transparent;color:var(--b-ink)}
html[data-experience=brand] .bs-site .bn-cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px 32px;padding:32px 40px;border-radius:var(--b-r-card);background:var(--b-navy);color:var(--b-on-navy)}
html[data-experience=brand][data-theme=dark] .bs-site .bn-cta{box-shadow:inset 0 0 0 1px var(--b-line)}
html[data-experience=brand] .bs-site .bn-cta p{max-width:56ch;background:transparent;color:var(--b-on-navy-2);font-size:18px;line-height:28px}
html[data-experience=brand] .bs-site .bn-cta strong{background:transparent;color:var(--b-on-navy)}
html[data-experience=brand] .bs-site .bn-cta :focus-visible{outline-color:var(--b-lime)}
html[data-experience=brand] .bn-cta-actions{display:flex;flex-wrap:wrap;gap:12px}
html[data-experience=brand] .bs-site .bn-source{background:transparent;color:var(--b-muted);font-size:14px;line-height:22px}

/* ===================== The table (B: public page and member view) ===================== */
html[data-experience=brand] .bn-scroll{position:relative;max-width:100%;overflow-x:auto;border:1px solid var(--b-line);border-radius:var(--b-r-card-sm);background:var(--b-surface);color:var(--b-ink);overscroll-behavior-x:contain}
html[data-experience=brand] .bn-scroll:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}
html[data-experience=brand] .bn-scroll .bn-table{width:100%;min-width:0;margin:0;border-collapse:separate;border-spacing:0;font-size:15px}
html[data-experience=brand] .bn-scroll .bn-table[data-columns="6"]{min-width:1040px}
html[data-experience=brand] .bn-scroll .bn-table :is(th,td){height:auto;padding:12px 16px;border:0;border-bottom:1px solid var(--b-line);font-size:15px;line-height:1.45;letter-spacing:0;text-align:left;text-transform:none;white-space:normal;vertical-align:top;background:var(--b-surface);color:var(--b-ink)}
html[data-experience=brand] .bn-scroll .bn-table thead th{font-weight:700;background:var(--b-navy);color:var(--b-on-navy)}
html[data-experience=brand][data-theme=dark] .bn-scroll .bn-table thead th{background:var(--b-mist);color:var(--b-ink)}
html[data-experience=brand] .bn-scroll .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){position:sticky;left:0;z-index:1;width:220px;min-width:180px;max-width:260px;box-shadow:inset -1px 0 0 var(--b-line)}
html[data-experience=brand] .bn-scroll .bn-table tbody th[scope=row]{font-weight:600;background:var(--b-surface);color:var(--b-ink)}
html[data-experience=brand] .bn-scroll .bn-table thead th.bn-rowhead{z-index:2}
html[data-experience=brand] .bn-scroll .bn-table .bn-group-row th{padding:18px 16px 10px;font:800 16px/22px var(--b-display);background:var(--b-mist);color:var(--b-ink)}
html[data-experience=brand] .bn-scroll .bn-table .bn-group-row th>span{position:sticky;left:16px;display:inline-block}
html[data-experience=brand] .bn-scroll .bn-table .bn-group-row small{font:500 14px/20px var(--b-body);background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] .bn-scroll .bn-table td.bn-money{font-variant-numeric:tabular-nums;white-space:nowrap}
html[data-experience=brand] .bn-scroll .bn-table :is(td.bn-na,td.bn-none){background:var(--b-surface);color:var(--b-muted)}
html[data-experience=brand] .bn-scroll .bn-table tr:target>:is(th,td){background:var(--b-leaf-mist);color:var(--b-ink)}
html[data-experience=brand] .bn-scroll .bn-table tr:target{scroll-margin-top:16px}
html[data-experience=brand] .bn-scroll .bn-table tbody:last-child tr:last-child>:is(th,td){border-bottom:0}
html[data-experience=brand] .bn-scroll .bn-fn{position:relative;display:inline-block;margin-left:2px;padding:0 4px;font-weight:800;text-decoration:none;background:transparent;color:var(--b-brand)}
/* A 44px hit area round the small footnote marker, without moving the row (found in review, 26 Sep). */
html[data-experience=brand] .bn-scroll .bn-fn::after{content:'';position:absolute;inset:-12px -15px}
html[data-experience=brand] .bn-scroll-narrow .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){width:auto;min-width:140px;max-width:none}
html[data-experience=brand] .bn-nowrap,html[data-experience=console] .bn-nowrap{white-space:nowrap}
html[data-experience=brand] .bs-site .bn-card p+.bn-scroll{margin-top:16px}
html[data-experience=brand] .bn-scroll-compact{max-width:560px}
html[data-experience=brand] .bs-site .bn-list{display:flex;flex-wrap:wrap;gap:4px 20px;margin:0;padding-left:18px}
html[data-experience=brand] .bs-site .bn-list li{background:transparent;color:var(--b-ink);font-size:15px;line-height:1.45}
html[data-experience=brand] .bn-scroll .bn-waiting tbody th[scope=row],html[data-experience=brand] .bn-scroll .bn-discounts tbody th[scope=row]{white-space:nowrap}

/* ===================== Member view (B, in the app) ===================== */
html[data-experience=brand] #benefits-view>.panel+.panel,html[data-experience=console] #benefits-view>.panel+.panel{margin-top:20px}
/* The standalone "Compare…" and "Open the public benefits page" links: a 44px target on a phone. */
html[data-experience=brand] .shell #benefits-view .bn-public-link,html[data-experience=console] #benefits-view .bn-public-link{display:inline-flex;align-items:center;min-height:44px}
html[data-experience=brand] #benefits-view>.notice+.panel,html[data-experience=console] #benefits-view>.notice+.panel{margin-top:20px}
html[data-experience=brand] .shell #benefits-view .bn-source-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px;background:transparent;color:var(--b-ink-2);font-size:15px}
html[data-experience=brand] .shell #benefits-view .bn-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:0;list-style:none}
html[data-experience=brand] .shell #benefits-view .bn-facts li{display:flex;flex-direction:column;gap:4px;min-width:0;padding:16px;border-radius:var(--b-r-card-sm);background:var(--b-mist);color:var(--b-ink)}
html[data-experience=brand] .shell #benefits-view .bn-facts strong{font:800 22px/28px var(--b-display);letter-spacing:-.01em;overflow-wrap:anywhere;background:transparent;color:var(--b-ink)}
html[data-experience=brand] .shell #benefits-view .bn-facts span{font-size:13px;line-height:18px;background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] .shell #benefits-view .bn-scroll+p,html[data-experience=brand] .shell #benefits-view .bn-legend{margin-top:12px}
html[data-experience=brand] .shell #benefits-view .bn-until{display:inline-block;font-size:13px;background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] .shell #benefits-view .bn-not-mine{font-weight:600;background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] .shell #benefits-view .bn-notes{display:flex;flex-direction:column;gap:8px;margin:16px 0 0;padding:0;list-style:none}
html[data-experience=brand] .shell #benefits-view .bn-notes li{padding:10px 14px;border-radius:12px;font-size:14px;line-height:21px;background:var(--b-sunken);color:var(--b-ink-2)}
html[data-experience=brand] .shell #benefits-view .bn-bullets{margin:0 0 12px;padding-left:20px}
html[data-experience=brand] .shell #benefits-view .bn-bullets li{font-size:15px;line-height:24px;background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] .shell #benefits-view .bn-fn{display:inline-block;margin-left:2px;font-weight:800;background:transparent;color:var(--b-brand)}
html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-wait :is(thead th.bn-rowhead,tbody th[scope=row]){position:static;width:50%;min-width:0;max-width:none;box-shadow:none}
html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-wait td:nth-child(2){white-space:nowrap}
html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-table[data-columns="1"] :is(thead th.bn-rowhead,tbody th[scope=row]){width:58%;min-width:0;max-width:none}

/* ===================== Staff schedule (C) ===================== */
html[data-experience=console] #benefits-view .bn-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 12px}
html[data-experience=console] #benefits-view .bn-meta>div{min-width:0;padding:10px 12px;border:1px solid var(--c-line);border-radius:var(--c-r-control);background:var(--c-raised);color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-meta dt{font:500 10.5px/16px var(--c-mono);letter-spacing:.08em;text-transform:uppercase;background:transparent;color:var(--c-muted)}
html[data-experience=console] #benefits-view .bn-meta dd{margin:2px 0 0;font-size:14px;font-weight:600;background:transparent;color:var(--c-ink)}
html[data-experience=console] #benefits-view .panel-body>p{margin:8px 0 0;font-size:13px;line-height:20px;background:transparent;color:var(--c-ink-2)}
html[data-experience=console] #benefits-view .panel-body>p.small{font-size:12.5px;background:transparent;color:var(--c-muted)}
html[data-experience=console] #benefits-view .panel-body>h3{margin:20px 0 8px;font-size:13px;font-weight:600;background:transparent;color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-scroll{position:relative;max-width:100%;overflow-x:auto;border:1px solid var(--c-line);border-radius:var(--c-r-panel);background:var(--c-surface);color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-scroll:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
html[data-experience=console] #benefits-view .bn-table{width:100%;min-width:0;border-collapse:separate;border-spacing:0}
html[data-experience=console] #benefits-view .bn-table[data-columns="6"]{min-width:980px}
html[data-experience=console] #benefits-view .bn-table :is(th,td){height:auto;padding:8px 12px;border-bottom:1px solid var(--c-line);font:400 13px/18px var(--c-sans);letter-spacing:0;text-transform:none;white-space:normal;vertical-align:top;text-align:left;background:var(--c-surface);color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-table thead th{font:500 10.5px/16px var(--c-mono);letter-spacing:.08em;text-transform:uppercase;background:var(--c-raised);color:var(--c-muted)}
html[data-experience=console] #benefits-view .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){position:sticky;left:0;z-index:1;width:200px;min-width:170px;box-shadow:inset -1px 0 0 var(--c-line)}
html[data-experience=console] #benefits-view .bn-table tbody th[scope=row]{font-weight:500;background:var(--c-surface);color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-table thead th.bn-rowhead{z-index:2;background:var(--c-raised);color:var(--c-muted)}
html[data-experience=console] #benefits-view .bn-table .bn-group-row th{padding:12px 12px 6px;font:600 12px/16px var(--c-sans);background:var(--c-bg);color:var(--c-ink-2)}
html[data-experience=console] #benefits-view .bn-table .bn-group-row th>span{position:sticky;left:12px;display:inline-block}
html[data-experience=console] #benefits-view .bn-table .bn-group-row small{font-weight:400;background:transparent;color:var(--c-muted)}
html[data-experience=console] #benefits-view .bn-table td.bn-money{font-family:var(--c-mono);font-size:12.5px;white-space:nowrap}
html[data-experience=console] #benefits-view .bn-table :is(td.bn-na,td.bn-none){background:var(--c-surface);color:var(--c-muted)}
html[data-experience=console] #benefits-view .bn-scroll-narrow .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){width:auto;min-width:110px}
html[data-experience=console] #benefits-view .bn-fn{margin-left:2px;font-weight:700;background:transparent;color:var(--c-blue)}
html[data-experience=console] #benefits-view .bn-legend{margin:10px 0 0}
html[data-experience=console] #benefits-view .bn-notes{display:flex;flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none}
html[data-experience=console] #benefits-view .bn-notes li{padding:8px 12px;border-radius:var(--c-r-control);font-size:12.5px;line-height:18px;background:var(--c-raised);color:var(--c-ink-2)}
html[data-experience=console] #benefits-view .bn-notes strong{background:transparent;color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-terms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 24px;margin:0}
html[data-experience=console] #benefits-view .bn-terms dt{font-size:13px;font-weight:600;background:transparent;color:var(--c-ink)}
html[data-experience=console] #benefits-view .bn-terms dd{margin:2px 0 0;font-size:12.5px;line-height:18px;background:transparent;color:var(--c-ink-2)}
html[data-experience=console] #benefits-view .bn-bullets{margin:12px 0 0;padding-left:18px}
html[data-experience=console] #benefits-view .bn-bullets li{margin:4px 0;font-size:13px;line-height:19px;background:transparent;color:var(--c-ink-2)}
html[data-experience=console] #benefits-view .bn-bullets strong{background:transparent;color:var(--c-ink)}

/* ===================== The application form's package panel (B) ===================== */
html[data-experience=brand] #application-form #package-info .package-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 0;padding:0;list-style:none}
html[data-experience=brand] #application-form #package-info .package-facts li{display:flex;flex-direction:column;gap:2px;min-width:0;padding:14px 16px;border:0;border-radius:var(--b-r-card-sm);background:var(--b-surface);color:var(--b-ink)}
html[data-experience=brand] #application-form #package-info .package-facts b{font:800 20px/26px var(--b-display);overflow-wrap:anywhere;background:transparent;color:var(--b-ink)}
html[data-experience=brand] #application-form #package-info .package-facts span{margin:0;font-size:13px;line-height:18px;background:transparent;color:var(--b-ink-2)}
html[data-experience=brand] #application-form #package-info .package-benefits-link{margin:12px 0 0;background:transparent;color:var(--b-ink)}
html[data-experience=brand] #application-form #package-info .package-benefits-link a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;text-underline-offset:4px;background:transparent;color:var(--b-brand)}

@media (max-width:900px){
 html[data-experience=brand] .bn-terms{grid-template-columns:1fr}
 html[data-experience=brand] .shell #benefits-view .bn-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-experience=console] #benefits-view .bn-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
 html[data-experience=console] #benefits-view .bn-terms{grid-template-columns:1fr}
}
@media (max-width:600px){
 html[data-experience=brand] .bn-layout{gap:16px;margin-top:-56px;padding:0 8px 56px}
 html[data-experience=brand] .bs-site .bn-card{padding:24px 16px}
 html[data-experience=brand] .bs-site .bn-card h2{font-size:26px;line-height:30px}
 html[data-experience=brand] .bs-site .bn-card p{font-size:16px;line-height:25px}
 html[data-experience=brand] .bs-site .bn-jump{border-radius:var(--b-r-card-sm)}
 html[data-experience=brand] .bs-site .bn-jump a{padding:0 14px}
 html[data-experience=brand] .bs-site .bn-pick a{padding:0 14px;font-size:14px}
 html[data-experience=brand] .bn-scroll .bn-table :is(th,td){padding:10px 12px;font-size:14px}
 html[data-experience=brand] .bn-scroll .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){width:132px;min-width:132px;max-width:132px}
 html[data-experience=brand] .bn-scroll-narrow .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){width:auto;min-width:96px;max-width:none}
 html[data-experience=brand] .bs-site .bn-cta{padding:24px 20px}
 html[data-experience=brand] .bn-cta-actions{width:100%;flex-direction:column}
 html[data-experience=brand] .bn-cta-actions :is(.bs-btn,.bs-pill){width:100%;justify-content:center;white-space:normal;text-align:center}
 html[data-experience=brand] .bs-site .bn-bullets li{font-size:16px;line-height:25px}
 html[data-experience=brand] .shell #benefits-view .bn-facts{grid-template-columns:1fr 1fr;gap:8px}
 html[data-experience=brand] .shell #benefits-view .bn-facts strong{font-size:18px;line-height:24px}
 html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-table[data-columns="1"] :is(thead th.bn-rowhead,tbody th[scope=row]){width:55%;min-width:0;max-width:none}
 html[data-experience=brand] #application-form #package-info .package-facts{grid-template-columns:1fr 1fr;gap:8px}
 html[data-experience=brand] #application-form #package-info .package-facts li:first-child{grid-column:1/-1}
 html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-wait :is(thead th.bn-rowhead,tbody th[scope=row]){width:66%}
 html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-wait-known :is(thead th.bn-rowhead,tbody th[scope=row]){width:42%}
 html[data-experience=brand] .shell #benefits-view .bn-scroll .bn-wait :is(th,td){padding:10px 10px}
}
@media print{
 html[data-experience] .bn-scroll{overflow:visible;border:0}
 html[data-experience] .bn-scroll .bn-table :is(thead th.bn-rowhead,tbody th[scope=row]){position:static}
 html[data-experience] .bn-jump,html[data-experience] .bn-pick,html[data-experience] .bn-cta{display:none}
}
