/* =========================================================================
   Open Ice Initiative: theme fixes and the Settings panel (round 3).
   Loaded after site.css and nx.css. Rules that must beat a page stylesheet
   (nx-about, nx-camps, nx-support) carry an html prefix for specificity, so
   this file works wherever it sits in the head.
   Dark is the default. Light is html[data-theme="light"].
   ========================================================================= */

/* ---------- switching themes never fades through the wrong palette ---------- */
html.oii-theming,html.oii-theming *,html.oii-theming *::before,html.oii-theming *::after{transition:none!important}

/* ============================================================ the trigger == */
/* The header bar is dark in both themes, so the trigger is white in both. A
   hairline box makes it read as a control rather than a nav link. */
html header.shell .stg-btn{height:34px;padding:0 12px;gap:8px;border:1px solid rgba(255,255,255,.42);
  color:#fff;letter-spacing:.08em;box-sizing:border-box;transition:background .18s,border-color .18s,color .18s}
html header.shell .stg-btn:hover,html header.shell .stg-btn[aria-expanded="true"]{background:#fff;border-color:#fff;color:#14171B}
html header.shell .stg-btn:focus-visible{outline:3px solid #8FA0FF;outline-offset:3px}
@media (max-width:420px){html header.shell .stg-btn{padding:0 10px}}

/* ============================================================== the panel == */
.stg-veil{background:rgba(6,8,12,.6)}
html[data-theme="light"] .stg-veil{background:rgba(20,23,27,.42)}
.stg{width:min(440px,100vw);background:var(--bg);color:var(--ink);border-left:1px solid var(--rule);
  box-shadow:-40px 0 80px -30px rgba(0,0,0,.55)}
html[data-theme="light"] .stg{box-shadow:-30px 0 70px -30px rgba(20,26,40,.35)}

.stg-head{align-items:flex-start;padding:26px 28px 20px;border-bottom:1px solid var(--rule)}
.stg-h{font-size:calc(26px * var(--fs));line-height:1;letter-spacing:-.01em;text-transform:uppercase}
.stg-sub{margin:9px 0 0;font-size:calc(12.5px * var(--fs));line-height:1.4;font-weight:600;color:rgba(var(--ink-rgb),.66)}
.stg-x{width:42px;height:42px}
.stg-x:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}

.stg-body{padding:0 28px 8px}
.stg-g{padding:22px 0 12px;border-bottom:1px solid var(--rule)}
.stg-g:last-child{border-bottom:0}
.stg-gh{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-family:Archivo,Arial,sans-serif;
  font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.16em;text-transform:uppercase;
  color:rgba(var(--ink-rgb),.7)}
.stg-gh::before{content:'';flex:none;width:7px;height:7px;border-radius:50%;background:var(--ember)}

.stg-row{padding:12px 0;border:0}
.stg-lab,.stg-lab2{margin:0 0 9px;font-size:calc(14px * var(--fs));font-weight:700;letter-spacing:0;
  text-transform:none;line-height:1.3;color:var(--ink)}
.stg-lab2{margin:0}
.stg-hint{margin:7px 0 0;font-size:calc(12.5px * var(--fs));line-height:1.45;font-weight:600;color:rgba(var(--ink-rgb),.66)}

/* segmented control: one bordered strip, equal segments, the choice filled */
.stg-seg{display:grid;grid-template-columns:repeat(var(--n,3),minmax(0,1fr));gap:3px;padding:3px;
  border:1px solid rgba(var(--ink-rgb),.24);background:rgba(var(--ink-rgb),.035)}
.stg-seg .stg-o{all:unset;box-sizing:border-box;cursor:pointer;min-height:40px;padding:8px 6px;display:flex;
  align-items:center;justify-content:center;text-align:center;border:0;
  font-size:calc(13.5px * var(--fs));font-weight:700;line-height:1.15;color:rgba(var(--ink-rgb),.8);
  transition:background .16s,color .16s}
.stg-seg .stg-o:hover{background:rgba(var(--ink-rgb),.08);color:var(--ink)}
.stg-seg .stg-o[aria-checked="true"]{background:var(--ink);color:var(--bg)}
.stg-seg .stg-o:focus-visible{outline:3px solid var(--focus);outline-offset:1px;position:relative;z-index:1}

/* switch: square, like every other control on the site */
.stg-row-sw{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.stg-sw-t{min-width:0}
.stg-sw{all:unset;box-sizing:border-box;cursor:pointer;flex:none;position:relative;width:46px;height:26px;margin-top:1px;
  border:1px solid rgba(var(--ink-rgb),.45);background:transparent;transition:background .16s,border-color .16s}
.stg-sw-k{position:absolute;top:3px;left:3px;width:18px;height:18px;background:rgba(var(--ink-rgb),.62);
  transition:transform .18s cubic-bezier(.2,.7,.2,1),background .16s}
.stg-sw[aria-checked="true"]{background:var(--ink);border-color:var(--ink)}
.stg-sw[aria-checked="true"] .stg-sw-k{transform:translateX(20px);background:var(--bg)}
.stg-sw:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.stg-sw:disabled{cursor:not-allowed}
.stg-row.is-off .stg-sw-t,.stg-row.is-off .stg-sw{opacity:.45}

/* language list: two columns, endonym over the English name */
.stg-g-lang .stg-gh{margin-bottom:14px}
.stg-langs{grid-template-columns:1fr 1fr;gap:6px}
.stg-l{min-height:50px;padding:8px 13px;border:1px solid var(--rule)}
.stg-l:hover{border-color:rgba(var(--ink-rgb),.6)}
.stg-l[aria-checked="true"]{background:var(--ink);border-color:var(--ink)}
.stg-l[aria-checked="true"] .stg-l-n{color:var(--bg)}
.stg-l[aria-checked="true"] .stg-l-e{color:var(--bg);opacity:.75}
.stg-l-n{font-size:calc(14.5px * var(--fs))}
.stg-note{margin-top:14px;font-size:calc(12.5px * var(--fs))}
.stg-all{margin:8px 0 14px;font-size:calc(13px * var(--fs))}

.stg-foot{flex:none;padding:14px 28px 18px;border-top:1px solid var(--rule);background:var(--bg)}
.stg-reset{margin:0;min-height:44px;border:1px solid rgba(var(--ink-rgb),.4);color:var(--ink);
  font-size:calc(13px * var(--fs));letter-spacing:.08em;text-transform:uppercase;font-weight:800}
.stg-reset:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}

.stg[dir="rtl"] .stg-row-sw{flex-direction:row-reverse}
.stg[dir="rtl"] .stg-sw[aria-checked="true"] .stg-sw-k{transform:translateX(20px)}
.stg[dir="rtl"] .stg-gh{flex-direction:row-reverse;justify-content:flex-end}

@media (max-width:760px){
  .stg{width:100vw}
  .stg-head{padding:18px 20px 16px}
  .stg-body{padding:0 20px 8px}
  .stg-foot{padding:12px 20px calc(14px + env(safe-area-inset-bottom))}
  .stg-langs{grid-template-columns:1fr 1fr}
}
@media (prefers-reduced-motion:reduce){.stg-sw,.stg-sw-k,.stg-seg .stg-o{transition:none}}
html[data-motion="less"] .stg,html[data-motion="less"] .stg-veil,html[data-motion="less"] .stg-sw-k{transition:none}

/* ======================================================= reading options == */
/* Smooth scrolling off: anchor jumps are instant as well */
html[data-smooth="off"]{scroll-behavior:auto}

/* Underline links: prose, lists, tables, footers and crumbs. Buttons, cards
   and logo tiles keep their own look, because an underline across a whole
   card helps nobody. */
html[data-links="on"] main p a,html[data-links="on"] main li a:not([class*="btn"]):not([class*="card"]),
html[data-links="on"] main td a,html[data-links="on"] main dd a,html[data-links="on"] main a:not([class]),
html[data-links="on"] footer a,html[data-links="on"] .nx-crumb a,html[data-links="on"] .stg-all{
  text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important}
html[data-links="on"] main p a[class*="btn"]{text-decoration:none!important}

/* Readable spacing: the WCAG 1.4.12 text spacing values, on running text */
html[data-spacing="on"] body{letter-spacing:.04em;word-spacing:.14em}
html[data-spacing="on"] main p,html[data-spacing="on"] main li,html[data-spacing="on"] main dd,
html[data-spacing="on"] main td,html[data-spacing="on"] .nx-lead,html[data-spacing="on"] .lead{
  line-height:1.8!important;letter-spacing:.04em!important;word-spacing:.14em!important}
html[data-spacing="on"] main p+p{margin-top:1.6em}

/* ================================================================ contrast == */
/* High contrast lifts every dim ink and hardens the hairlines on NX pages. */
html[data-contrast="more"] body.nx{--nx-ink2:rgba(255,255,255,.96);--nx-ink3:rgba(255,255,255,.86);
  --nx-line:rgba(255,255,255,.26);--nx-line2:rgba(255,255,255,.46)}
html[data-theme="light"][data-contrast="more"] body.nx{--nx-bg:#FFFFFF;--nx-ink:#000000;--nx-ink2:rgba(0,0,0,.92);--nx-ink3:rgba(0,0,0,.8);
  --nx-line:rgba(0,0,0,.2);--nx-line2:rgba(0,0,0,.42)}
html[data-contrast="more"] .nx-p,html[data-contrast="more"] .nx-prose p,html[data-contrast="more"] .nx-prose li{color:var(--nx-ink2)}
html[data-contrast="more"] .stg-hint,html[data-contrast="more"] .stg-sub,html[data-contrast="more"] .stg-gh{color:var(--ink)}
html[data-contrast="more"] .stg-seg{border-color:var(--ink)}

/* ================================================ the partner puck carousel ==
   One rule everywhere: it follows the theme. Dark in dark mode; in light mode
   an ice band with navy crosshairs and a soft navy bloom behind the pucks. */
html[data-theme="light"] .pucks,html[data-theme="light"] .pk-rows{
  --bg:#EEF3FB;--rule:#D7DEEC;--ink:#14171B;--ink-rgb:0,0,0;--ember:#A62E22;--focus:#2F3BA8;
  --nx-ink:#14171B;--nx-ink2:rgba(20,23,27,.8);--nx-ink3:rgba(20,23,27,.62);--nx-line2:rgba(20,23,27,.14);
  color:#14171B}
html[data-theme="light"] .pucks,html[data-theme="light"] body.nx .pucks{background:#EEF3FB;border-top:1px solid #D7DEEC;border-bottom:1px solid #D7DEEC}
html[data-theme="light"] .pk-field{opacity:.42;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='58' height='58'%3E%3Cpath d='M29 22.5v13M22.5 29h13' stroke='%233B3E72' stroke-opacity='.34' stroke-width='1.25' stroke-linecap='round'/%3E%3C/svg%3E")}
html[data-theme="light"] .pk-bloom{background:radial-gradient(closest-side,rgba(59,62,114,.16),rgba(59,62,114,.05) 58%,transparent 78%)}
html[data-theme="light"] .pk-side{box-shadow:0 30px 40px -20px rgba(20,26,40,.38)}
html[data-theme="light"] body.nx .pucks .pk-head .eyebrow{color:rgba(20,23,27,.78)}
html[data-theme="light"] .pucks .pk-head .h2,html[data-theme="light"] .pucks .pk-head h2{color:#14171B}
html[data-theme="light"] .pucks .pk-head .lead{color:rgba(20,23,27,.82)}
html[data-theme="light"] .pucks .pk-head .lead b{color:#14171B}
html[data-theme="light"] .pucks .pk-name{color:#14171B}
html[data-theme="light"] .pucks .pk-all{color:#14171B}
html[data-theme="light"] .pucks .pk-pause{color:rgba(20,23,27,.72);border-bottom-color:rgba(20,23,27,.3)}
html[data-theme="light"] .pucks .pk-pause:hover{color:#14171B;border-color:#14171B}
html[data-theme="light"] .pucks .pk:focus-visible .pk-face{box-shadow:0 0 0 4px #2F3BA8,inset 0 -3px 9px rgba(30,36,45,.10)}

/* Partners and For Sponsors hold the carousel inside a navy band. In light
   mode that band becomes the same ice band, and the photo above it fades to
   ice instead of navy. */
html[data-theme="light"] .nx-band.nxp-pkband{background:#EEF3FB;color:#14171B;
  --nx-bg:#EEF3FB;--nx-ink:#14171B;--nx-ink2:rgba(20,23,27,.8);--nx-ink3:rgba(20,23,27,.62);
  --nx-line:rgba(20,23,27,.08);--nx-line2:rgba(20,23,27,.16)}
html[data-theme="light"] .nx-band.nxp-pkband .pucks{background:transparent;border:0;--ink:#14171B;--ink-rgb:0,0,0;--bg:transparent;color:#14171B}
html[data-theme="light"] .nxp-pkband .pk-field{opacity:.42}
html[data-theme="light"] .nxp-pkband .pk-head{border-bottom-color:rgba(20,23,27,.16)}
html[data-theme="light"] .nxp-pkband .pk-head .eyebrow{color:rgba(20,23,27,.78)}
html[data-theme="light"] .nxp-pkband .pk-head .eyebrow .dot{background:var(--nx-ember)}
html[data-theme="light"] .nxp-pkband .pk-head h2.h2{color:#14171B}
html[data-theme="light"] .nxp-pkband .pk-head .lead{color:rgba(20,23,27,.82)}
html[data-theme="light"] .nxp-pkband .pk-head .lead b,html[data-theme="light"] .nxp-pkband .pk-name,
html[data-theme="light"] .nxp-pkband .pk-all{color:#14171B}
html[data-theme="light"] .nxp-pkband .pk-foot{border-top-color:rgba(20,23,27,.16)}
html[data-theme="light"] .nxp-pkband .pk-pause{color:rgba(20,23,27,.72);border-bottom-color:rgba(20,23,27,.3)}
html[data-theme="light"] .nxp-pkband .pk:focus-visible .pk-face{box-shadow:0 0 0 4px #2F3BA8,inset 0 -3px 9px rgba(30,36,45,.10)}
html[data-theme="light"] .nx-band.nxp-pkband .nx-btn-w{background:var(--nx-navy);color:#fff!important}
html[data-theme="light"] .nx-band.nxp-pkband .nx-btn-w:hover{background:var(--nx-navy2)}
html[data-theme="light"] .nx-band.nxp-pkband .nx-btn-o{border-color:#14171B;color:#14171B!important}
html[data-theme="light"] .nx-band.nxp-pkband .nx-btn-o:hover{background:#14171B;color:#fff!important}
html[data-theme="light"] .nx-media.to-navy:has(+ .nxp-pkband)::after{background:linear-gradient(180deg,rgba(238,243,251,0) 50%,#EEF3FB 100%)}

/* ================================================================ small fixes */
/* Stats tabs and leaderboard ranks sit on a white card in both themes; the
   old grey was 3.9:1. #5B6270 is 6.3:1 on white. */
html .nxs-tabs button,html .nxs-tabs a{color:#5B6270}
html .nxs-tabs button:hover,html .nxs-tabs a:hover,html .nxs-tabs [aria-selected="true"],html .nxs-tabs [aria-current="page"]{color:#14171B}
html .nxs-list .r{color:#5B6270}
/* the staff link in the footer stays quiet but readable (above 4.5:1) */
html .nxf-bot .foot-staff,html .foot-staff{opacity:.78}
/* light: the third ink was 4.4:1 on the raised panel colour; now 5.3:1 there
   and 6.0:1 on the page */
html[data-theme="light"]:root body.nx{--nx-ink3:rgba(20,23,27,.66)}
html[data-contrast="more"] .nx-lines{opacity:.35}

/* Header menu button: keep it readable on hover in both themes (header bar is dark in both). */
html header.shell.nxh .navbtn{border-color:rgba(255,255,255,.55);color:#fff;background:transparent}
html header.shell.nxh .navbtn:hover,html header.shell.nxh .navbtn:focus-visible,html header.shell.nxh .navbtn[aria-expanded="true"]{background:#fff;color:#1B1E3F;border-color:#fff}

/* ================================================================ auditor-5 */
/* Partner pages: long single-word partner names in the hero h1 were splitting
   mid-word (overflow-wrap:anywhere). Smaller size for the long-name variant. */
.nxp-h1.nxp-h1-long{font-size:clamp(30px,4.8vw,72px)}
@media (max-width:700px){.nxp-h1.nxp-h1-long{font-size:min(40px,9.8vw)}}
/* ================================================================ end auditor-5 */

/* ================================================================ auditor-4
   Newsroom pages (press, media-room, podcast).
   Outlet wordmark tiles: "TorontoToday" was breaking mid-word at 24px. */
.nxr-outlets .nxr-wm{font-size:17px;overflow-wrap:normal;word-break:normal;hyphens:none}
@media (max-width:640px){.nxr-outlets .nxr-wm{font-size:16px}}
/* Podcast hero: avoid a lone "PLAY" on the second line. */
.nxp-pod-h1{text-wrap:balance}
/* ================================================================ end auditor-4 */

/* ================================================================ auditor-3
   Support and impact pages carry body.tw-bal (get-involved, volunteer, roles,
   refer, donate, sponsor-a-camper, for-sponsors, partners, gear-drive, impact,
   numbers, research, season-in-review). Balance headline lines so no single
   word is left alone on the last line; keep lead paragraphs free of orphans. */
body.tw-bal main :is(h1,h2,h3){text-wrap:balance}
body.tw-bal main :is(.nx-lead,.nxp-big,.nxs-big,p){text-wrap:pretty}
/* ================================================================ end auditor-3 */

/* ================================================================ auditor-1
   /search: the big search box keeps a white field in both themes, but its
   placeholder inherited the dark theme's light text and vanished. */
.nxl-sform .bigsearch::placeholder{color:#5b6070;opacity:1}
/* ================================================================ end auditor-1 */

/* ================================================================ cleanup
   Shared header, footer and stats-card fixes (round 3 cleanup agent). */

/* Header search: the "/" key hint picked up the page --bg (white in light
   theme) and showed as a solid white square on the always-dark header bar. */
html header.shell.nxh .search-form .cmdk-kbd{background:transparent!important;color:rgba(255,255,255,.85)!important;border-color:rgba(255,255,255,.5)!important}

/* Footer at phone widths: the address block was squeezed into a narrow
   column beside the logo. Logo and address now take full rows. */
@media (max-width:600px){
  .nxf-top{grid-template-columns:minmax(0,1fr) auto;gap:18px 24px}
  .nxf-top .logo,.nxf-top .addr{grid-column:1/-1}
  .nxf-top .nxf-soc{align-self:start}
}

/* Stats pages (impact, numbers, research, season-in-review): the white
   "paper" card and sub-nav follow the dark theme instead of sitting as the
   only white block on a dark page. Light theme is unchanged. */
html:not([data-theme="light"]) body.nx .nxs-sub{background:var(--nx-bg2);border-bottom-color:var(--nx-line2);color:#fff}
html:not([data-theme="light"]) body.nx .nxs-sub a{color:rgba(255,255,255,.78);border-left-color:var(--nx-line2)}
html:not([data-theme="light"]) body.nx .nxs-sub a:hover,html:not([data-theme="light"]) body.nx .nxs-sub a[aria-current=page]{color:#fff}
html:not([data-theme="light"]) body.nx .nxs-card{--nx-dark:#FFFFFF;background:var(--nx-bg2);color:#fff;box-shadow:0 0 0 1px var(--nx-line2)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-intro,.nxs-prose p,.nxs-callout,.nxs-gloss p,.nxs-gloss ul,.nxs-gloss a){color:rgba(255,255,255,.8)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-empty,.nxs-sech small,.nxs-block h2 small,.nxs-lead small,.nxs-lead .k,.nxs-note,.nxs-split figcaption,.nxs-list .r,.nxs-table td.when,.nxs-table th){color:rgba(255,255,255,.66)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-list li:first-child .r{color:#fff}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-tabs{border-bottom-color:var(--nx-line2)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-tabs :is(button,a){color:rgba(255,255,255,.66)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-tabs :is(button:hover,a:hover,[aria-selected="true"],[aria-current="page"]){color:#fff;border-bottom-color:#fff}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-tiles,.nxs-tiles>*,.nxs-list li,.nxs-tw,.nxs-table th,.nxs-table td,.nxs-table caption,.nxs-figs tr,.nxs-stack tr){border-color:var(--nx-line2)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-table caption,.nxs-table th){background:var(--nx-bg3)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-table tbody th{background:none}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-table tr:hover td,.nxs-tiles>a:hover){background:rgba(255,255,255,.04)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-table tr.hit td{background:rgba(169,174,234,.14)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-table tfoot td,.nxs-table tfoot th,.nxs-table dl,.nxs-callout,.nxs-gloss){background:var(--nx-bg3)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-tiles .ph,.nxs-lead .av,.nxs-split .nx-shot){background:var(--nx-bg3)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-lead .av{box-shadow:0 0 0 4px var(--nx-bg2),0 0 0 5px var(--nx-line2)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-prose a,.nxs-more,.nxs-gloss a:hover){color:var(--nx-accent)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-table dl{border-left-color:var(--nx-accent)}
html:not([data-theme="light"]) body.nx .nxs-card .badge.e{background:transparent;color:#C6CCE6;box-shadow:inset 0 0 0 1.5px #C6CCE6}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-callout{border-left-color:var(--nx-accent)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-btn-o{background:transparent;border-color:#fff;color:#fff!important}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-btn-o:hover{background:#fff;color:#14171B!important}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-filters :is(select,input){background-color:var(--nx-bg3);border-color:var(--nx-line2);color:#fff}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-filters select{background-image:linear-gradient(45deg,transparent 50%,#fff 50%),linear-gradient(135deg,#fff 50%,transparent 50%)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-filters input::placeholder{color:rgba(255,255,255,.6)}
html:not([data-theme="light"]) body.nx .nxs-card .nxs-filters .nxs-go{background:var(--nx-bg3);border-color:var(--nx-line2);color:#fff}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-filters label,.nxs-count,.nxs-bnote,.nxs-table caption small,.nxs-table dt,.nxs-table s){color:rgba(255,255,255,.66)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-table .def,.nxs-table dd,.nxs-tiles span,.nxs-tiles p){color:rgba(255,255,255,.8)}
html:not([data-theme="light"]) body.nx .nxs-card :is(.nxs-table a,.nxs-table summary,.est){color:var(--nx-accent)}
/* About, team, governance (and coaching): text-only leadership rows (board,
   Headquarters Team) sat in the right-hand column with an empty middle column
   at desktop widths. They now span the row, aligned with the founder photo. */
@media (min-width:861px){
  .nx-person-in.solo,.nx-person-in.left{grid-template-columns:minmax(0,1fr)}
  .nx-person-in.solo>div,.nx-person-in.left>div{grid-column:1/-1}
  .nx-person-in.solo .nx-prose p,.nx-person-in.left .nx-prose p{max-width:72ch}
  .nx-person-in.solo .nx-roster.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* ================================================================ end cleanup */

/* lead: newsroom sub-nav follows the dark theme */
html:not([data-theme="light"]) .nxn-sub{background:var(--nx-bg2);border-bottom-color:var(--nx-line)}
html:not([data-theme="light"]) .nxn-sub a,html:not([data-theme="light"]) .nxn-sub button{color:var(--nx-ink2)}
html:not([data-theme="light"]) .nxn-sub a[aria-current=page],html:not([data-theme="light"]) .nxn-sub a:hover{color:var(--nx-ink)}

/* community referral partners */
html[data-theme="light"] .pucks .pk-sub,html[data-theme="light"] .nxp-pkband .pk-sub{color:rgba(20,23,27,.78)}
html[data-theme="light"] .nxp-pkband .pk-sub .dot{background:var(--nx-ember)}
