/* PlanningBrief app stylesheet. Generated by scripts/build_site_css.py from
   leads/site_css/ (order: leads.site_stylesheet.BUNDLE). Do not edit here.
   Tokens (var(--pb-*)) are defined once, in the nav's critical block.
   Family partials apply under <body class="pb-css-<name>">; the app-shell globals
   (home, legacy-base) stay off <html class="pb-base-shell">. */

/* ---- home ---- */
:root:where(:not(.pb-base-shell)) {
  /* Home-only colours; the shared ones are the --pb-* tokens (tokens.css). */
  --hero-start: #0a1c46;
  --hero-mid: #0a1838;
  --hero-end: #0a142e;
  --green: #1f9d52;
  --purple: #7c3aed;
}
:where(html:not(.pb-base-shell)), :where(html:not(.pb-base-shell)) * { box-sizing: border-box; }
html:where(:not(.pb-base-shell)) { scroll-behavior: smooth; }
:where(html:not(.pb-base-shell)) body {
  margin: 0;
  font-family: var(--pb-font);
  -webkit-font-smoothing: antialiased;
  color: var(--pb-ink);
  background: var(--pb-page);
}
:where(html:not(.pb-base-shell)) a { color: inherit; text-decoration: none; }
:where(html:not(.pb-base-shell)) img, :where(html:not(.pb-base-shell)) svg, :where(html:not(.pb-base-shell)) object { display: block; max-width: 100%; }
:where(html:not(.pb-base-shell)) .icon {
  width: 1em;
  height: 1em;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  flex: none;
}
:where(html:not(.pb-base-shell)) .container {
  max-width: var(--pb-container);
  margin: 0 auto;
  padding: 0 var(--pb-gutter);
}
:where(html:not(.pb-base-shell)) .hero {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(120deg, var(--hero-start) 0%, var(--hero-mid) 52%, var(--hero-end) 100%);
}
:where(html:not(.pb-base-shell)) .hero-photo {
  position: absolute;
  top: 0;
  right: 0;
  width: 64%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .9;
}
:where(html:not(.pb-base-shell)) .hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to right, var(--pb-navy) 26%, rgba(10,23,51,.9) 40%, rgba(10,23,51,.35) 56%, rgba(10,20,46,0) 72%);
  z-index: 1;
}
:where(html:not(.pb-base-shell)) .hero-map {
  position: absolute;
  left: 40%;
  top: 9%;
  width: 215px;
  height: 250px;
  z-index: 3;
  pointer-events: none;
  filter: drop-shadow(0 0 18px rgba(47,111,237,.62));
}
:where(html:not(.pb-base-shell)) .hero-content {
  position: relative;
  z-index: 4;
  padding-top: 58px;
  padding-bottom: 56px;
}
:where(html:not(.pb-base-shell)) .hero-copy { max-width: 560px; }
:where(html:not(.pb-base-shell)) .hero h1 {
  margin: 0;
  max-width: 560px;
  color: #fff;
  font-size: 54px;
  line-height: 1.04;
  font-weight: 700;
  letter-spacing: -.02em;
}
:where(html:not(.pb-base-shell)) .hero p {
  margin: 24px 0 0;
  max-width: 430px;
  color: rgba(255,255,255,.78);
  font-size: 16px;
  line-height: 1.6;
}
:where(html:not(.pb-base-shell)) .hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}
:where(html:not(.pb-base-shell)) .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 50px;
  border-radius: 9px;
  padding: 14px 22px;
  font: inherit;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  border: 1px solid rgba(255,255,255,.32);
}
:where(html:not(.pb-base-shell)) .button.primary {
  background: var(--pb-blue);
  border-color: var(--pb-blue);
  color: #fff;
}
:where(html:not(.pb-base-shell)) .button.primary:hover { background: var(--pb-blue-hover); border-color: var(--pb-blue-hover); }
:where(html:not(.pb-base-shell)) .button.ghost {
  background: transparent;
  color: #fff;
}
:where(html:not(.pb-base-shell)) .button.ghost:hover {
  background: rgba(255,255,255,.08);
  border-color: rgba(255,255,255,.6);
}
:where(html:not(.pb-base-shell)) .stats-band {
  position: relative;
  z-index: 4;
  background: rgba(7,16,36,.62);
  border-top: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(2px);
}
:where(html:not(.pb-base-shell)) .stats-row {
  display: flex;
  align-items: center;
  padding-top: 26px;
  padding-bottom: 26px;
}
:where(html:not(.pb-base-shell)) .stat-item {
  flex: 1;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 16px;
}
:where(html:not(.pb-base-shell)) .stat-item.padded { padding-left: 34px; }
:where(html:not(.pb-base-shell)) .stat-icon {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1.5px solid rgba(91,138,238,.55);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #7ba6ff;
  flex: none;
}
:where(html:not(.pb-base-shell)) .stat-label {
  display: block;
  margin-bottom: 3px;
  color: rgba(255,255,255,.55);
  font-size: 13px;
}
:where(html:not(.pb-base-shell)) .stat-number {
  display: block;
  color: #fff;
  font-size: 27px;
  line-height: 1.05;
  font-weight: 700;
  letter-spacing: -.01em;
}
:where(html:not(.pb-base-shell)) .stat-divider {
  width: 1px;
  height: 48px;
  background: rgba(255,255,255,.12);
  flex: none;
}
:where(html:not(.pb-base-shell)) .live {
  background: var(--pb-page);
}
:where(html:not(.pb-base-shell)) .live .container {
  padding-top: 54px;
  padding-bottom: 60px;
}
:where(html:not(.pb-base-shell)) .section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 26px;
}
:where(html:not(.pb-base-shell)) h2 {
  margin: 0;
  color: var(--pb-ink);
  font-size: 28px;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -.01em;
}
:where(html:not(.pb-base-shell)) .inline-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--pb-blue);
  font-size: 15px;
  font-weight: 600;
}
:where(html:not(.pb-base-shell)) .inline-link:hover { opacity: .7; }
:where(html:not(.pb-base-shell)) .cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
:where(html:not(.pb-base-shell)) .lead-card {
  background: #fff;
  border: 1px solid var(--pb-line);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(12,33,71,.05);
  transition: box-shadow .18s ease, transform .18s ease;
}
:where(html:not(.pb-base-shell)) .lead-card:hover {
  box-shadow: 0 18px 40px rgba(12,33,71,.13);
  transform: translateY(-3px);
}
:where(html:not(.pb-base-shell)) .lead-image {
  position: relative;
  height: 172px;
  background: #dce5f2;
}
:where(html:not(.pb-base-shell)) .lead-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
:where(html:not(.pb-base-shell)) .badge {
  position: absolute;
  top: 14px;
  left: 14px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  line-height: 1;
  padding: 8px 12px;
  border-radius: 7px;
}
:where(html:not(.pb-base-shell)) .badge.blue { background: var(--pb-blue); }
:where(html:not(.pb-base-shell)) .badge.green { background: var(--green); }
:where(html:not(.pb-base-shell)) .badge.purple { background: var(--purple); }
:where(html:not(.pb-base-shell)) .lead-body { padding: 20px 20px 22px; }
:where(html:not(.pb-base-shell)) .lead-body h3 {
  margin: 0 0 14px;
  min-height: 43px;
  color: var(--pb-ink);
  font-size: 18px;
  line-height: 1.18;
  font-weight: 700;
}
:where(html:not(.pb-base-shell)) .facts {
  display: flex;
  flex-direction: column;
  gap: 9px;
  color: #485875;
  font-size: 14px;
}
:where(html:not(.pb-base-shell)) .fact {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
}
:where(html:not(.pb-base-shell)) .fact .icon {
  width: 16px;
  height: 16px;
  color: #8a97b1;
}
:where(html:not(.pb-base-shell)) .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
:where(html:not(.pb-base-shell)) .tag {
  border-radius: 6px;
  padding: 5px 10px;
  font-size: 12.5px;
  line-height: 1.2;
}
:where(html:not(.pb-base-shell)) .tag.blue { color: var(--pb-blue); background: #eef4ff; border: 1px solid #d4e2fd; }
:where(html:not(.pb-base-shell)) .tag.green { color: var(--green); background: #ecfaf1; border: 1px solid #c4ebd2; }
:where(html:not(.pb-base-shell)) .tag.purple { color: var(--purple); background: #f5f0ff; border: 1px solid #e0d4fb; }
:where(html:not(.pb-base-shell)) .details-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 18px;
  color: var(--pb-blue);
  font-size: 14.5px;
  font-weight: 600;
}
:where(html:not(.pb-base-shell)) .how {
  background: #fff;
}
:where(html:not(.pb-base-shell)) .how .container {
  padding-top: 56px;
  padding-bottom: 60px;
}
:where(html:not(.pb-base-shell)) .how h2 {
  text-align: center;
  margin-bottom: 44px;
}
:where(html:not(.pb-base-shell)) .steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  position: relative;
}
:where(html:not(.pb-base-shell)) .step {
  position: relative;
  padding: 0 22px;
  text-align: center;
}
:where(html:not(.pb-base-shell)) .step:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 26px;
  left: 60%;
  right: -40%;
  border-top: 2px dashed #ccd6e6;
}
:where(html:not(.pb-base-shell)) .step-circle {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  color: var(--pb-blue);
  background: #eef3fb;
}
:where(html:not(.pb-base-shell)) .step-circle .icon {
  width: 24px;
  height: 24px;
}
:where(html:not(.pb-base-shell)) .step-num {
  position: absolute;
  top: -8px;
  left: -8px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: var(--pb-blue);
  color: #fff;
  font-size: 12.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
:where(html:not(.pb-base-shell)) .step h3 {
  margin: 16px 0 8px;
  color: var(--pb-ink);
  font-size: 17px;
  font-weight: 700;
}
:where(html:not(.pb-base-shell)) .step p {
  margin: 0;
  color: var(--pb-muted);
  font-size: 13.5px;
  line-height: 1.6;
}
:where(html:not(.pb-base-shell)) .step p a {
  color: var(--pb-blue);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}
:where(html:not(.pb-base-shell)) .coverage {
  background: var(--pb-page);
  border-top: 1px solid #dde6f3;
}
:where(html:not(.pb-base-shell)) .coverage .container {
  max-width: var(--pb-container);
  padding-top: 56px;
  padding-bottom: 56px;
}
:where(html:not(.pb-base-shell)) .coverage-head {
  max-width: 760px;
  margin-bottom: 26px;
}
:where(html:not(.pb-base-shell)) .coverage-kicker {
  display: block;
  margin-bottom: 9px;
  color: var(--pb-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
:where(html:not(.pb-base-shell)) .coverage h2 {
  margin: 0;
  color: var(--pb-ink);
  font-size: 36px;
  line-height: 1.08;
  font-weight: 700;
}
:where(html:not(.pb-base-shell)) .coverage h2 span { color: #7180a0; }
:where(html:not(.pb-base-shell)) .coverage-copy {
  max-width: 610px;
  margin: 13px 0 0;
  color: #46557a;
  font-size: 16px;
  line-height: 1.55;
}
:where(html:not(.pb-base-shell)) .coverage-card {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  align-items: flex-start;
  padding: 26px;
  border: 1px solid #e9eef7;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15,33,71,.06), 0 12px 32px -16px rgba(15,33,71,.18);
}
:where(html:not(.pb-base-shell)) .coverage-map-column {
  flex: 0 1 520px;
  min-width: 280px;
}
:where(html:not(.pb-base-shell)) .coverage-map-wrap {
  position: relative;
  width: 100%;
  max-width: 520px;
  aspect-ratio: 460 / 560;
  padding: 10px;
  overflow: visible;
  border-radius: 12px;
  background: #eef3fb;
}
:where(html:not(.pb-base-shell)) .coverage-svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}
:where(html:not(.pb-base-shell)) .coverage-county-path, :where(html:not(.pb-base-shell)) .coverage-active-path {
  stroke: #fff;
  stroke-width: .7;
  vector-effect: non-scaling-stroke;
  transition: filter .18s ease, transform .18s ease, stroke-width .18s ease;
  transform-box: fill-box;
  transform-origin: center;
}
:where(html:not(.pb-base-shell)) .coverage-county-path {
  cursor: pointer;
  outline: none;
}
:where(html:not(.pb-base-shell)) .coverage-county-path:hover, :where(html:not(.pb-base-shell)) .coverage-county-path:focus-visible, :where(html:not(.pb-base-shell)) .coverage-county-path.is-active {
  filter: brightness(1.06) drop-shadow(0 8px 12px rgba(15,33,71,.18));
  transform: translateY(-2px);
  stroke-width: 1.7;
}
:where(html:not(.pb-base-shell)) .coverage-active-path {
  pointer-events: none;
  filter: brightness(1.08) drop-shadow(0 10px 14px rgba(15,33,71,.22));
  stroke-width: 1.7;
  transform: translateY(-2px);
}
:where(html:not(.pb-base-shell)) .coverage-tooltip {
  position: absolute;
  z-index: 4;
  width: max-content;
  max-width: 230px;
  padding: 11px 13px;
  color: #fff;
  border-radius: 10px;
  background: var(--pb-ink);
  box-shadow: 0 14px 28px rgba(15,33,71,.28);
  transform: translate(-50%, -118%);
  pointer-events: none;
}
:where(html:not(.pb-base-shell)) .coverage-tooltip[hidden] { display: none; }
:where(html:not(.pb-base-shell)) .coverage-tooltip strong {
  display: block;
  margin-bottom: 3px;
  font-size: 15px;
  line-height: 1.2;
}
:where(html:not(.pb-base-shell)) .coverage-tooltip span {
  display: block;
  color: #aebbd6;
  font-size: 12.5px;
  line-height: 1.35;
}
:where(html:not(.pb-base-shell)) .coverage-tooltip em {
  display: block;
  margin-top: 7px;
  color: var(--pb-kicker);
  font-size: 12.5px;
  font-style: normal;
  font-weight: 700;
}
:where(html:not(.pb-base-shell)) .coverage-legend {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 13px;
  color: #46557a;
  font-size: 12px;
  font-weight: 600;
}
:where(html:not(.pb-base-shell)) .coverage-legend-bar {
  width: 148px;
  height: 8px;
  border-radius: 999px;
  background: linear-gradient(90deg, #eaf1ff 0%, #8aa3d6 52%, #1746a2 100%);
}
:where(html:not(.pb-base-shell)) .coverage-list-column {
  flex: 1 1 390px;
  min-width: 280px;
  padding-top: 3px;
}
:where(html:not(.pb-base-shell)) .coverage-list-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 12px;
}
:where(html:not(.pb-base-shell)) .coverage-list-header h3 {
  margin: 0;
  color: var(--pb-ink);
  font-size: 17px;
  line-height: 1.25;
}
:where(html:not(.pb-base-shell)) .coverage-list-header span {
  color: #7180a0;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
}
:where(html:not(.pb-base-shell)) .coverage-county-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px 14px;
}
:where(html:not(.pb-base-shell)) .coverage-county-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 5px 8px;
  border-radius: 7px;
  color: #1f2c4a;
  font-size: 13.5px;
  line-height: 1.35;
}
:where(html:not(.pb-base-shell)) .coverage-county-link:hover, :where(html:not(.pb-base-shell)) .coverage-county-link:focus-visible, :where(html:not(.pb-base-shell)) .coverage-county-link.is-active {
  color: var(--pb-ink);
  background: var(--pb-page);
  outline: none;
}
:where(html:not(.pb-base-shell)) .coverage-county-name {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
:where(html:not(.pb-base-shell)) .coverage-swatch {
  width: 8px;
  height: 8px;
  flex: none;
  border-radius: 2px;
}
:where(html:not(.pb-base-shell)) .coverage-county-name span:last-child {
  overflow: visible;
  text-overflow: ellipsis;
  white-space: nowrap;
}
:where(html:not(.pb-base-shell)) .coverage-county-count {
  flex: none;
  color: #7180a0;
  font-size: 12px;
  font-weight: 700;
}
@media (max-width: 860px) {
  :where(html:not(.pb-base-shell)) .coverage-card { padding: 22px; }
  :where(html:not(.pb-base-shell)) .coverage-map-column, :where(html:not(.pb-base-shell)) .coverage-list-column { flex-basis: 100%; }
  :where(html:not(.pb-base-shell)) .coverage-map-wrap { margin: 0 auto; }
}
@media (max-width: 520px) {
  :where(html:not(.pb-base-shell)) .coverage h2 { font-size: 30px; }
  :where(html:not(.pb-base-shell)) .coverage-copy { font-size: 15px; }
  :where(html:not(.pb-base-shell)) .coverage-card { padding: 16px; border-radius: 12px; }
  :where(html:not(.pb-base-shell)) .coverage-map-wrap { padding: 8px; }
  :where(html:not(.pb-base-shell)) .coverage-county-list { grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .coverage-list-header { align-items: flex-start; flex-direction: column; gap: 3px; }
  :where(html:not(.pb-base-shell)) .coverage-tooltip { max-width: 190px; }
}
:where(html:not(.pb-base-shell)) .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 920px) {
  :where(html:not(.pb-base-shell)) .hero-photo { width: 100%; opacity: .42; }
  :where(html:not(.pb-base-shell)) .hero::before { background: linear-gradient(to right, rgba(10,23,51,.95), rgba(10,23,51,.78)); }
  :where(html:not(.pb-base-shell)) .hero-map { left: auto; right: 24px; top: 160px; width: 170px; height: 198px; opacity: .78; }
  :where(html:not(.pb-base-shell)) .stats-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px 20px; }
  :where(html:not(.pb-base-shell)) .stat-divider { display: none; }
  :where(html:not(.pb-base-shell)) .stat-item.padded { padding-left: 0; }
  :where(html:not(.pb-base-shell)) .cards { grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .lead-body h3 { min-height: 0; }
  :where(html:not(.pb-base-shell)) .steps { grid-template-columns: 1fr 1fr; gap: 34px 0; }
  :where(html:not(.pb-base-shell)) .step:nth-child(2)::after { display: none; }
}
@media (max-width: 520px) {
  :where(html:not(.pb-base-shell)) .container { padding-left: var(--pb-gutter-sm); padding-right: var(--pb-gutter-sm); }
  :where(html:not(.pb-base-shell)) .hero-content { padding-top: 42px; padding-bottom: 42px; }
  :where(html:not(.pb-base-shell)) .hero h1 { font-size: 39px; max-width: 350px; }
  :where(html:not(.pb-base-shell)) .hero p { max-width: 340px; font-size: 15px; }
  :where(html:not(.pb-base-shell)) .hero-actions { display: grid; grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .button { width: 100%; }
  :where(html:not(.pb-base-shell)) .hero-map { position: relative; left: auto; right: auto; top: auto; width: 190px; height: 220px; margin: 28px auto -12px; }
  :where(html:not(.pb-base-shell)) .stats-row { grid-template-columns: 1fr; padding-top: 22px; padding-bottom: 22px; }
  :where(html:not(.pb-base-shell)) .stat-item { gap: 14px; }
  :where(html:not(.pb-base-shell)) .live .container, :where(html:not(.pb-base-shell)) .how .container, :where(html:not(.pb-base-shell)) .coverage .container { padding-top: 42px; padding-bottom: 46px; }
  :where(html:not(.pb-base-shell)) .section-head { align-items: flex-start; flex-direction: column; }
  :where(html:not(.pb-base-shell)) h2 { font-size: 26px; }
  :where(html:not(.pb-base-shell)) .lead-image { height: 166px; }
  :where(html:not(.pb-base-shell)) .steps { grid-template-columns: 1fr; gap: 30px; }
  :where(html:not(.pb-base-shell)) .step:not(:last-child)::after { display: none; }
}

:where(html:not(.pb-base-shell)) .homepage-publish { padding: 0; max-width: none; }
:where(html:not(.pb-base-shell)) .homepage-publish .coverage-tooltip { white-space: normal; }

html:where(:not(.pb-base-shell)), :where(html:not(.pb-base-shell)) body {
  max-width: 100%;
  overflow-x: hidden;
}
:where(html:not(.pb-base-shell)) .hero-photo img, :where(html:not(.pb-base-shell)) .lead-image picture {
  display: block;
  width: 100%;
  height: 100%;
}
:where(html:not(.pb-base-shell)) .hero-photo img, :where(html:not(.pb-base-shell)) .lead-image picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
:where(html:not(.pb-base-shell)) .hero-photo img {
  object-position: center;
}
:where(html:not(.pb-base-shell)) .homepage-publish, :where(html:not(.pb-base-shell)) .homepage-publish .hero {
  min-width: 0;
  max-width: 100%;
}
:where(html:not(.pb-base-shell)) .skip-link {
  position: absolute;
  left: 16px;
  top: 8px;
  z-index: 1000;
  transform: translateY(-140%);
  border-radius: 6px;
  background: #fff;
  color: var(--pb-ink);
  padding: 9px 12px;
  font-weight: 900;
}
:where(html:not(.pb-base-shell)) .skip-link:focus {
  transform: translateY(0);
}
:where(html:not(.pb-base-shell)) .hero-primary-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}
:where(html:not(.pb-base-shell)) .hero-primary-actions .button {
  min-width: 154px;
}
:where(html:not(.pb-base-shell)) .home-trust {
  border-top: 1px solid var(--pb-line);
  border-bottom: 1px solid var(--pb-line);
  background: #f8fbff;
}
:where(html:not(.pb-base-shell)) .home-trust-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) auto;
  gap: 22px;
  align-items: center;
  padding-top: 24px;
  padding-bottom: 24px;
}
:where(html:not(.pb-base-shell)) .home-trust-grid > div {
  min-width: 0;
}
:where(html:not(.pb-base-shell)) .home-trust-heading {
  grid-column: 1 / -1;
}
:where(html:not(.pb-base-shell)) .home-trust-heading h2 {
  margin: 4px 0 0;
  font-size: 24px;
}
:where(html:not(.pb-base-shell)) .home-trust-grid span {
  display: block;
  color: var(--pb-blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(html:not(.pb-base-shell)) .home-trust-grid strong {
  display: block;
  margin-top: 4px;
  color: var(--pb-ink);
  font-size: 15px;
}
:where(html:not(.pb-base-shell)) .home-trust-grid p {
  margin: 5px 0 0;
  color: var(--pb-muted);
  font-size: 12.5px;
  line-height: 1.45;
}
:where(html:not(.pb-base-shell)) .stats-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px 24px;
}
:where(html:not(.pb-base-shell)) .stat-divider {
  display: none;
}
:where(html:not(.pb-base-shell)) .stat-item {
  align-items: flex-start;
  gap: 12px;
}
:where(html:not(.pb-base-shell)) .stat-item.padded {
  padding-left: 0;
}
:where(html:not(.pb-base-shell)) .stat-icon {
  width: 46px;
  height: 46px;
}
:where(html:not(.pb-base-shell)) .stat-label {
  line-height: 1.25;
  white-space: normal;
}
:where(html:not(.pb-base-shell)) .stat-group {
  display: block;
  margin-bottom: 3px;
  color: #8fb2ff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}
:where(html:not(.pb-base-shell)) .stat-number {
  font-size: 24px;
  white-space: nowrap;
}
:where(html:not(.pb-base-shell)) .stat-note, :where(html:not(.pb-base-shell)) .stat-link {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,.62);
  font-size: 12px;
  line-height: 1.25;
}
:where(html:not(.pb-base-shell)) .stat-link {
  color: #9fbdff;
  font-weight: 800;
}
:where(html:not(.pb-base-shell)) .stat-link:hover {
  color: #fff;
}
:where(html:not(.pb-base-shell)) .journey {
  background: #fff;
  border-bottom: 1px solid var(--pb-line);
}
:where(html:not(.pb-base-shell)) .journey .container {
  padding-top: 28px;
  padding-bottom: 32px;
}
:where(html:not(.pb-base-shell)) .journey-head {
  max-width: 720px;
  margin-bottom: 16px;
}
:where(html:not(.pb-base-shell)) .journey-kicker {
  display: block;
  margin-bottom: 7px;
  color: var(--pb-blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
:where(html:not(.pb-base-shell)) .journey-head h2 {
  font-size: 26px;
}
:where(html:not(.pb-base-shell)) .journey-head p {
  margin: 9px 0 0;
  color: var(--pb-muted);
  font-size: 15px;
  line-height: 1.55;
}
:where(html:not(.pb-base-shell)) .journey-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}
:where(html:not(.pb-base-shell)) .journey-card {
  min-width: 0;
  min-height: 124px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid var(--pb-line);
  border-radius: 8px;
  padding: 14px;
  color: var(--pb-ink);
  background: #f8fbff;
}
:where(html:not(.pb-base-shell)) .journey-card:hover {
  border-color: #b8c9ec;
  background: #eef4ff;
}
:where(html:not(.pb-base-shell)) .journey-card span {
  color: var(--pb-blue);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
:where(html:not(.pb-base-shell)) .journey-card strong {
  display: block;
  margin-top: 7px;
  font-size: 16px;
  line-height: 1.18;
}
:where(html:not(.pb-base-shell)) .journey-card em {
  display: block;
  margin-top: 8px;
  color: var(--pb-muted);
  font-size: 12.5px;
  font-style: normal;
  line-height: 1.35;
}
@media (max-width: 920px) {
  :where(html:not(.pb-base-shell)) .stats-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(html:not(.pb-base-shell)) .journey-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 520px) {
  :where(html:not(.pb-base-shell)) .homepage-publish .hero h1 {
    max-width: 100%;
    overflow-wrap: anywhere;
  }
  :where(html:not(.pb-base-shell)) .homepage-publish .hero-map {
    display: none;
  }
  :where(html:not(.pb-base-shell)) .hero-primary-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  :where(html:not(.pb-base-shell)) .home-trust-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  :where(html:not(.pb-base-shell)) .stats-row {
    grid-template-columns: 1fr;
  }
  :where(html:not(.pb-base-shell)) .journey .container {
    padding-top: 24px;
    padding-bottom: 28px;
  }
  :where(html:not(.pb-base-shell)) .journey-grid {
    grid-template-columns: 1fr;
  }
  :where(html:not(.pb-base-shell)) .journey-card {
    min-height: 0;
  }
  :where(html:not(.pb-base-shell)) .coverage-card {
    width: 100%;
    max-width: 100%;
  }
  :where(html:not(.pb-base-shell)) .coverage-map-column, :where(html:not(.pb-base-shell)) .coverage-list-column {
    min-width: 0;
    width: 100%;
  }
  :where(html:not(.pb-base-shell)) .coverage-map-wrap, :where(html:not(.pb-base-shell)) .coverage-legend, :where(html:not(.pb-base-shell)) .coverage-county-list, :where(html:not(.pb-base-shell)) .coverage-county-link {
    max-width: 100%;
  }
}

    :where(html:not(.pb-base-shell)) .home-this-week-strip {
      max-width: var(--pb-container);
      margin: 0 auto 34px;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      padding: 18px;
      border: 1px solid #dbe5f4;
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 14px 34px rgba(10,23,51,.07);
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip p, :where(html:not(.pb-base-shell)) .home-this-week-strip h2 {
      margin: 0;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip .eyebrow {
      color: #1d4fb8;
      font-size: 12px;
      font-weight: 900;
      letter-spacing: .08em;
      text-transform: uppercase;
    }
    :where(html:not(.pb-base-shell)) .coverage-kicker {
      color: #1d4fb8;
    }
    :where(html:not(.pb-base-shell)) .coverage-list-header span, :where(html:not(.pb-base-shell)) .coverage-county-count {
      color: #53647e;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip h2 {
      margin-top: 5px;
      color: var(--pb-ink);
      font-size: clamp(21px, 3vw, 30px);
      line-height: 1.15;
      letter-spacing: 0;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip h2 a {
      color: inherit;
      text-decoration: none;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip h2 a:hover {
      color: var(--pb-blue);
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip p:last-child {
      max-width: 760px;
      margin-top: 6px;
      color: #425372;
      font-size: 14px;
      line-height: 1.45;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip .card-primary-action {
      min-height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 14px;
      border-radius: 7px;
      background: var(--pb-blue);
      color: #fff;
      font-size: 14px;
      font-weight: 900;
      text-decoration: none;
      white-space: nowrap;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip .card-primary-action:hover {
      border-color: var(--pb-blue-hover);
      background: var(--pb-blue-hover);
      color: #fff;
      text-decoration: none;
    }
    :where(html:not(.pb-base-shell)) .home-this-week-strip .card-primary-action:focus-visible {
      border-color: var(--pb-ink);
      outline: 3px solid var(--pb-ink);
      outline-offset: 3px;
      background: var(--pb-blue-hover);
      color: #fff;
      text-decoration: none;
    }
    :where(html:not(.pb-base-shell)) .live .section-head {
      align-items: flex-end;
    }
    :where(html:not(.pb-base-shell)) .home-live-heading {
      max-width: 720px;
    }
    :where(html:not(.pb-base-shell)) .home-live-eyebrow {
      display: block;
      margin-bottom: 8px;
      color: #1d4fb8;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: .12em;
      text-transform: uppercase;
    }
    :where(html:not(.pb-base-shell)) .home-live-heading > p {
      margin: 9px 0 0;
      color: #425372;
      font-size: 15px;
      line-height: 1.5;
    }
    :where(html:not(.pb-base-shell)) .home-live-checked {
      display: block;
      margin-top: 5px;
      color: var(--pb-muted);
      font-size: 12.5px;
      font-weight: 700;
    }
    :where(html:not(.pb-base-shell)) .home-feature-grid {
      align-items: stretch;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card {
      display: flex;
      min-width: 0;
      height: 100%;
      flex-direction: column;
      border-left-width: 4px;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card.is-planning { border-left-color: var(--pb-blue); }
    :where(html:not(.pb-base-shell)) .home-feature-card.is-tender { border-left-color: #7c3aed; }
    :where(html:not(.pb-base-shell)) .home-feature-card.is-commencement { border-left-color: #1f9d52; }
    :where(html:not(.pb-base-shell)) .home-feature-card .lead-image {
      flex: none;
      height: 164px;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card .lead-body {
      display: flex;
      min-width: 0;
      flex: 1;
      flex-direction: column;
      padding: 20px;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card .lead-body h3 {
      min-height: 64px;
      margin-bottom: 10px;
      overflow-wrap: anywhere;
      font-size: 18px;
      line-height: 1.2;
    }
    :where(html:not(.pb-base-shell)) .home-feature-location {
      display: flex;
      min-height: 42px;
      align-items: flex-start;
      gap: 8px;
      margin: 0 0 14px;
      color: #425372;
      font-size: 13.5px;
      line-height: 1.4;
      overflow-wrap: anywhere;
    }
    :where(html:not(.pb-base-shell)) .home-feature-location .icon {
      width: 16px;
      height: 16px;
      margin-top: 1px;
      color: #7180a0;
    }
    :where(html:not(.pb-base-shell)) .home-feature-facts {
      display: grid;
      min-height: 92px;
      margin: 0;
      border-top: 1px solid var(--pb-line);
    }
    :where(html:not(.pb-base-shell)) .home-feature-facts > div {
      display: grid;
      grid-template-columns: 86px minmax(0, 1fr);
      gap: 9px;
      padding: 9px 0;
      border-bottom: 1px solid var(--pb-line);
    }
    :where(html:not(.pb-base-shell)) .home-feature-facts dt {
      color: var(--pb-muted);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: .05em;
      text-transform: uppercase;
    }
    :where(html:not(.pb-base-shell)) .home-feature-facts dd {
      min-width: 0;
      margin: 0;
      color: #14274d;
      font-size: 13px;
      font-weight: 700;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }
    :where(html:not(.pb-base-shell)) .home-feature-insight {
      margin-top: 14px;
      padding: 12px;
      border-radius: 8px;
      background: #f5f7fb;
    }
    :where(html:not(.pb-base-shell)) .home-feature-insight strong {
      display: block;
      margin-bottom: 4px;
      color: #14274d;
      font-size: 11px;
      letter-spacing: .06em;
      text-transform: uppercase;
    }
    :where(html:not(.pb-base-shell)) .home-feature-insight p {
      display: -webkit-box;
      min-height: 40px;
      margin: 0;
      overflow: hidden;
      color: #425372;
      font-size: 13px;
      line-height: 1.5;
      -webkit-box-orient: vertical;
      -webkit-line-clamp: 2;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card .tags {
      min-height: 58px;
      align-content: flex-start;
      margin-top: 14px;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card .tag {
      max-width: 100%;
      overflow-wrap: anywhere;
    }
    :where(html:not(.pb-base-shell)) .home-feature-evidence {
      margin: 12px 0 0;
      color: var(--pb-muted);
      font-size: 12px;
      font-weight: 650;
      line-height: 1.4;
    }
    :where(html:not(.pb-base-shell)) .home-feature-card .details-link {
      margin-top: auto;
      padding-top: 16px;
    }
    @media (max-width: 920px) {
      :where(html:not(.pb-base-shell)) .home-feature-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      :where(html:not(.pb-base-shell)) .home-feature-card:last-child {
        width: 100%;
        max-width: calc((100% - 24px) / 2);
        grid-column: 1 / -1;
        justify-self: center;
      }
    }
    @media (max-width: 680px) {
      :where(html:not(.pb-base-shell)) .live .section-head {
        align-items: flex-start;
      }
      :where(html:not(.pb-base-shell)) .home-feature-grid {
        grid-template-columns: minmax(0, 1fr);
      }
      :where(html:not(.pb-base-shell)) .home-feature-card:last-child {
        width: 100%;
        max-width: none;
        grid-column: auto;
        justify-self: stretch;
      }
      :where(html:not(.pb-base-shell)) .home-feature-card .lead-body h3, :where(html:not(.pb-base-shell)) .home-feature-location, :where(html:not(.pb-base-shell)) .home-feature-facts, :where(html:not(.pb-base-shell)) .home-feature-card .tags {
        min-height: 0;
      }
    }
    @media (max-width: 640px) {
      :where(html:not(.pb-base-shell)) .home-this-week-strip {
        margin-bottom: 24px;
        padding: 15px;
      }
      :where(html:not(.pb-base-shell)) .home-this-week-strip .card-primary-action {
        width: 100%;
      }
    }
  
/* ---- cards-v2 ---- */

      @font-face{font-family:"IBM Plex Mono";src:url("/static/fonts/ibm-plex-mono-latin-400.79936b18df9f.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
      @font-face{font-family:"IBM Plex Mono";src:url("/static/fonts/ibm-plex-mono-latin-600.5a2ce7798732.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
      :where(.pb-css-cards-v2) .lead-list-template, :where(.pb-css-cards-v2) .lead-list-template *{box-sizing:border-box}
      :where(.pb-css-cards-v2) .lead-list-template{
        width:100%!important;
        max-width:none!important;
        min-width:0;
        overflow-x:hidden;
        background:var(--pb-page);
        color:var(--pb-ink);
        font-family:var(--pb-font);
      }
      :where(.pb-css-cards-v2) .lead-list-template .shared-nav-inner{max-width:1392px}
      :where(.pb-css-cards-v2) .lead-list-template a:focus-visible, :where(.pb-css-cards-v2) .lead-list-template button:focus-visible, :where(.pb-css-cards-v2) .lead-list-template input:focus-visible, :where(.pb-css-cards-v2) .lead-list-template select:focus-visible, :where(.pb-css-cards-v2) .lead-list-template summary:focus-visible{
        outline:3px solid rgba(47,111,237,.3);
        outline-offset:2px;
      }
      :where(.pb-css-cards-v2) .lead-index-hero{
        display:flex;
        gap:32px;
        align-items:flex-end;
        justify-content:space-between;
        width:min(1392px,calc(100% - 48px));
        margin:0 auto;
        padding:30px 0 22px;
        border-bottom:1px solid var(--pb-line-strong);
      }
      :where(.pb-css-cards-v2) .lead-index-hero .eyebrow{
        margin:0 0 7px;
        color:#496086;
        font-size:10.5px;
        font-weight:600;
        letter-spacing:.07em;
        text-transform:uppercase;
      }
      :where(.pb-css-cards-v2) .lead-index-hero h1{
        margin:0;
        color:var(--pb-ink);
        font-size:clamp(26px,2.35vw,36px);
        line-height:1.14;
        letter-spacing:-.02em;
      }
      :where(.pb-css-cards-v2) .lead-index-hero p{
        max-width:780px;
        margin:9px 0 0;
        color:#405477;
        font-size:14px;
        line-height:1.55;
      }
      :where(.pb-css-cards-v2) .lead-list-template .template-a-command-bar{
        display:grid;
        grid-template-columns:minmax(280px,1.15fr) minmax(460px,1.7fr);
        gap:12px;
        align-items:center;
        width:min(1392px,calc(100% - 48px));
        margin:14px auto 12px;
        padding:10px;
        border:1px solid var(--pb-line);
        border-radius:10px;
        background:#fff;
        box-shadow:0 1px 2px rgba(15,33,71,.04);
      }
      :where(.pb-css-cards-v2) .lead-list-template .market-summary-panel{
        display:grid;
        grid-template-columns:repeat(5,minmax(0,1fr));
        width:min(1392px,calc(100% - 48px));
        margin:0 auto 14px;
        overflow:hidden;
        border:1px solid var(--pb-line);
        border-radius:10px;
        background:#fff;
        box-shadow:0 1px 2px rgba(15,33,71,.04);
      }
      :where(.pb-css-cards-v2) .lead-list-template .template-a-workspace{
        display:grid;
        grid-template-columns:256px minmax(0,1fr);
        gap:24px;
        align-items:start;
        width:min(1392px,calc(100% - 48px));
        margin:0 auto;
        padding:0 0 34px;
      }
      :where(.pb-css-cards-v2) .lead-list-template .filter-summary-panel{
        display:flex;
        gap:12px;
        align-items:center;
        justify-content:space-between;
        min-width:0;
        min-height:42px;
        padding:8px 10px;
        border:1px solid var(--pb-line);
        border-radius:8px;
        background:#fff;
      }
      :where(.pb-css-cards-v2) .lead-list-template #filter-summary-copy{
        margin:0;
        color:#405477;
        font-size:11.5px;
        white-space:nowrap;
      }
      :where(.pb-css-cards-v2) .lead-list-template .active-filter-chips{display:flex;gap:5px;flex-wrap:wrap}
      :where(.pb-css-cards-v2) .lead-list-template .filter-chip{
        min-height:26px;
        padding:0 8px;
        border:1px solid var(--pb-line-strong);
        border-radius:999px;
        background:#eef2f8;
        color:#54627e;
        font-size:10.5px;
      }
      :where(.pb-css-cards-v2) .lead-list-template #clear-all-filters{
        width:auto;
        min-height:28px;
        border:0;
        background:transparent;
        color:#405477;
        padding:2px 4px;
        font:600 11px/1 var(--pb-font);
        text-decoration:underline;
        text-underline-offset:3px;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .lead-list-template #clear-all-filters:hover{color:var(--pb-blue);background:transparent}
      :where(.pb-css-cards-v2) .lead-list-template .saved-filter-presets, :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary, :where(.pb-css-cards-v2) .lead-list-template .lead-board-packet-preview[hidden] {display:none}
      :where(.pb-css-cards-v2) .lead-list-template #active-filter-summary:has(#lead-board-selection-toolbar:not([hidden])) {
        display:contents;
      }
      :where(.pb-css-cards-v2) .lead-list-template #active-filter-summary:has(#lead-board-selection-toolbar:not([hidden])) #filter-summary-copy, :where(.pb-css-cards-v2) .lead-list-template #active-filter-summary:has(#lead-board-selection-toolbar:not([hidden])) .active-filter-chips{
        display:none;
      }
      :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden])){
        position:fixed;
        z-index:80;
        right:24px;
        bottom:20px;
        left:24px;
        display:flex;
        gap:12px;
        align-items:center;
        max-width:940px;
        min-height:60px;
        margin:auto;
        padding:10px 12px;
        border:1px solid #30436a;
        border-radius:10px;
        background:var(--pb-navy);
        color:#fff;
        box-shadow:0 14px 30px rgba(10,23,51,.24);
      }
      :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden]))>*{display:none}
      :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden])) #lead-board-selection-toolbar{
        display:flex;
        gap:8px;
        align-items:center;
        flex:1;
      }
      :where(.pb-css-cards-v2) .lead-list-template #lead-board-selection-toolbar strong{margin-right:auto}
      :where(.pb-css-cards-v2) .lead-list-template #lead-board-selection-toolbar span{display:none}
      :where(.pb-css-cards-v2) .lead-list-template #lead-board-selection-toolbar button, :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden])) .lead-triage-board-link{
        min-height:36px;
        padding:0 10px;
        border:1px solid rgba(255,255,255,.25);
        border-radius:7px;
        background:rgba(255,255,255,.08);
        color:#fff;
        font-size:11px;
        font-weight:600;
        text-decoration:none;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .lead-list-template .lead-board-packet-preview:not([hidden]){
        position:fixed;
        z-index:100;
        inset:0;
        display:grid;
        place-items:center;
        padding:20px;
        background:rgba(10,23,51,.62);
      }
      :where(.pb-css-cards-v2) .lead-list-template .project-alert-prompt, :where(.pb-css-cards-v2) .lead-list-template .opportunity-workspace-header, :where(.pb-css-cards-v2) .lead-list-template .project-query-diagnostics, :where(.pb-css-cards-v2) .lead-list-template>.freshness, :where(.pb-css-cards-v2) .lead-list-template>.freshness-stamp {display:none!important}
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-list{
        min-width:0;
        margin:0;
        padding:0;
        border:0;
        background:transparent;
      }
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-list .section-heading{
        display:flex;
        gap:16px;
        align-items:flex-end;
        justify-content:space-between;
        margin:0 0 10px;
        padding:0;
      }
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-list .section-heading>div{min-width:0}
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-count-label{
        margin:0 0 3px;
        color:#526788;
        font-family:"IBM Plex Mono",monospace;
        font-size:10.5px;
      }
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-heading{
        margin:0;
        color:var(--pb-ink);
        font-size:17px;
        line-height:1.25;
      }
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-list .privacy-note{
        margin:4px 0 0;
        color:var(--pb-muted);
        font-size:11px;
      }
      :where(.pb-css-cards-v2) .lead-list-template #project-leads-section-count{
        flex:none;
        padding:5px 9px;
        border-radius:999px;
        background:#eef2f8;
        color:#54627e;
        font-size:10.5px;
        font-weight:600;
      }
      :where(.pb-css-cards-v2) .lead-list-template .lead-list, :where(.pb-css-cards-v2) .lead-list-template #project-leads-results{
        display:grid!important;
        grid-template-columns:minmax(0,1fr)!important;
        gap:10px;
        width:100%;
        min-width:0;
      }
      :where(.pb-css-cards-v2) .pb-lead-card{
        position:relative;
        display:grid!important;
        grid-template-columns:6px minmax(0,1fr) 184px!important;
        gap:0!important;
        width:100%;
        min-width:0;
        padding:0!important;
        overflow:visible!important;
        border:1px solid var(--pb-line)!important;
        border-radius:10px!important;
        background:#fff!important;
        box-shadow:0 1px 2px rgba(15,33,71,.04)!important;
      }
      :where(.pb-css-cards-v2) .pb-lead-card>*{min-width:0}
      /* Producer styles.css collisions, fixed for every page that shows these
         cards (D10 fixed them on /project-leads/ only): .lead-card
         {content-visibility:auto} clips the open "..." menu behind the next card;
         .opportunity-card strong {font-size:26px} and .opportunity-card span
         {display:block;margin-top:6px} override the card's own rules. */
      :where(.pb-css-cards-v2) .pb-lead-card.lead-card{content-visibility:visible;contain-intrinsic-size:auto}
      :where(.pb-css-cards-v2) .pb-lead-card:focus-within, :where(.pb-css-cards-v2) .pb-lead-card:has(.pb-overflow[open]){z-index:5}
      :where(.pb-css-cards-v2) .pb-lead-card .pb-scale-value{color:var(--pb-ink);font-size:17px;line-height:1.18}
      :where(.pb-css-cards-v2) .pb-lead-card .pb-scope-chips span{margin-top:0}
      :where(.pb-css-cards-v2) .pb-lead-spine{display:block;background:var(--pb-blue);border-radius:9px 0 0 9px}
      :where(.pb-css-cards-v2) .pb-lead-card.is-commencement .pb-lead-spine{background:#0b7e72}
      :where(.pb-css-cards-v2) .pb-lead-card.is-appeal .pb-lead-spine{background:#6c5bd4}
      :where(.pb-css-cards-v2) .pb-lead-card.is-refused .pb-lead-spine{background:#b4452f}
      :where(.pb-css-cards-v2) .pb-lead-card.is-further-information .pb-lead-spine{background:#d99e0b}
      :where(.pb-css-cards-v2) .pb-lead-main{
        display:grid!important;
        gap:7px!important;
        min-width:0;
        padding:13px 16px 12px!important;
        overflow:visible!important;
      }
      :where(.pb-css-cards-v2) .pb-lead-kicker{
        display:flex;
        gap:7px;
        align-items:center;
        min-width:0;
        color:var(--pb-muted);
        font-size:10.5px;
      }
      :where(.pb-css-cards-v2) .pb-lead-kicker time{margin-left:auto;font-family:"IBM Plex Mono",monospace;white-space:nowrap}
      :where(.pb-css-cards-v2) .lead-board-select-control{
        display:inline-flex;
        gap:5px;
        align-items:center;
        min-height:24px;
        color:#53627e;
        font-size:10.5px;
        font-weight:600;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .lead-board-select-control input{width:14px;height:14px;margin:0;accent-color:var(--pb-blue)}
      :where(.pb-css-cards-v2) .opportunity-stage-pill{
        display:inline-flex;
        align-items:center;
        min-height:23px;
        padding:0 8px;
        border:1px solid var(--pb-line-strong);
        border-radius:999px;
        background:#e9f0fe;
        color:#2456c4;
        font-size:10.5px;
        font-weight:600;
        white-space:nowrap;
      }
      :where(.pb-css-cards-v2) .pb-lead-card.is-commencement .opportunity-stage-pill{border-color:#b9dcd8;background:#e3f2f0;color:#0b6e64}
      :where(.pb-css-cards-v2) .pb-lead-card.is-appeal .opportunity-stage-pill{border-color:#d6d0f0;background:#edeafb;color:#5646b5}
      :where(.pb-css-cards-v2) .pb-lead-card.is-refused .opportunity-stage-pill{border-color:#e8c9c1;background:#fbebe7;color:#9c3b28}
      :where(.pb-css-cards-v2) .pb-lead-card.is-further-information .opportunity-stage-pill{border-color:#f0dfb0;background:#fff9ec;color:#7a5a10}
      :where(.pb-css-cards-v2) .pb-lead-source{
        min-width:0;
        overflow:hidden;
        color:#607391;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      :where(.pb-css-cards-v2) .pb-lead-title{margin:0!important;color:var(--pb-ink);font-size:15px!important;line-height:1.3!important;font-weight:600!important}
      :where(.pb-css-cards-v2) .pb-lead-title a{color:inherit!important;text-decoration:none!important}
      :where(.pb-css-cards-v2) .pb-lead-title a:hover{color:var(--pb-blue)!important}
      :where(.pb-css-cards-v2) .pb-lead-meta{
        display:flex;
        gap:6px;
        align-items:center;
        min-width:0;
        margin:0;
        color:#607391;
        font-family:"IBM Plex Mono",monospace;
        font-size:10.5px;
        line-height:1.35;
      }
      :where(.pb-css-cards-v2) .pb-lead-meta>span{min-width:0}
      :where(.pb-css-cards-v2) .pb-reference{
        display:inline-flex;
        flex:none;
        align-items:center;
        min-height:22px;
        padding:0 7px;
        border:1px solid var(--pb-line-strong);
        border-radius:6px;
        background:#f7f9fd;
        color:#405477;
      }
      :where(.pb-css-cards-v2) .pb-reference.is-unindexed{border-style:dashed;color:#7a5a10;background:#fff9ec}
      :where(.pb-css-cards-v2) .pb-lead-description{
        display:-webkit-box;
        margin:0;
        overflow:hidden;
        color:#405477;
        font-size:12.5px;
        line-height:1.5;
        -webkit-box-orient:vertical;
        -webkit-line-clamp:2;
      }
      :where(.pb-css-cards-v2) .pb-scope-chips{display:flex;gap:5px;flex-wrap:wrap}
      :where(.pb-css-cards-v2) .pb-scope-chips span{
        display:inline-flex;
        align-items:center;
        min-height:23px;
        padding:0 8px;
        border-radius:999px;
        background:#eef2f8;
        color:#54627e;
        font-size:10.5px;
        font-weight:500;
      }
      :where(.pb-css-cards-v2) .pb-lead-aside{
        display:grid;
        gap:6px;
        align-content:start;
        min-width:0;
        padding:13px 12px;
        border-left:1px solid var(--pb-line);
        background:#fbfcff;
        border-radius:0 9px 9px 0;
      }
      :where(.pb-css-cards-v2) .pb-scale-label{color:#607391;font-size:9.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase}
      :where(.pb-css-cards-v2) .pb-scale-value{color:var(--pb-ink);font-size:17px;line-height:1.18;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
      :where(.pb-css-cards-v2) .pb-scale-basis{margin-bottom:3px;color:var(--pb-muted);font-size:9.5px;line-height:1.3}
      :where(.pb-css-cards-v2) .pb-evidence{display:flex;gap:6px;align-items:flex-start;color:#8a5916;font-size:10px;line-height:1.25}
      :where(.pb-css-cards-v2) .pb-evidence i{flex:none;width:7px;height:7px;margin-top:3px;border-radius:50%;background:#d99e0b}
      :where(.pb-css-cards-v2) .pb-evidence.is-ok{color:#0b6e64}
      :where(.pb-css-cards-v2) .pb-evidence.is-ok i{background:#0b7e72}
      :where(.pb-css-cards-v2) .pb-lead-actions{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:3px}
      :where(.pb-css-cards-v2) .pb-open-lead, :where(.pb-css-cards-v2) .pb-card-action, :where(.pb-css-cards-v2) .pb-overflow summary{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:31px;
        padding:0 7px;
        border:1px solid var(--pb-line-strong);
        border-radius:7px;
        background:#fff;
        color:#405477;
        font-size:10.5px;
        font-weight:600;
        line-height:1;
        text-align:center;
        text-decoration:none;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .pb-open-lead{grid-column:1/-1;border-color:var(--pb-blue);background:var(--pb-blue);color:#fff}
      :where(.pb-css-cards-v2) .pb-lead-actions a.pb-open-lead, :where(.pb-css-cards-v2) .pb-lead-actions a.pb-open-lead:visited{color:#fff;font-size:13px}
      :where(.pb-css-cards-v2) .pb-open-lead:hover{background:var(--pb-blue-hover)}
      :where(.pb-css-cards-v2) .pb-overflow{position:relative;grid-column:2}
      :where(.pb-css-cards-v2) .pb-overflow summary{list-style:none;width:100%}
      :where(.pb-css-cards-v2) .pb-overflow summary::-webkit-details-marker{display:none}
      :where(.pb-css-cards-v2) .pb-overflow>div{
        position:absolute;
        z-index:30;
        right:0;
        top:calc(100% + 5px);
        display:grid;
        width:174px;
        padding:5px;
        border:1px solid var(--pb-line-strong);
        border-radius:8px;
        background:#fff;
        box-shadow:0 10px 24px rgba(15,33,71,.15);
      }
      :where(.pb-css-cards-v2) .pb-overflow>div a, :where(.pb-css-cards-v2) .pb-overflow>div button{
        display:flex;
        align-items:center;
        min-height:32px;
        padding:0 8px;
        border:0;
        border-radius:5px;
        background:#fff;
        color:#405477;
        font:500 11px/1 var(--pb-font);
        text-align:left;
        text-decoration:none;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .pb-overflow>div a:hover, :where(.pb-css-cards-v2) .pb-overflow>div button:hover{background:var(--pb-page);color:var(--pb-blue)}
      :where(.pb-css-cards-v2) .lead-note-preview, :where(.pb-css-cards-v2) .lead-note-editor{
        display:grid;
        gap:7px;
        margin:2px 0 0;
        padding:9px;
        border:1px solid #d5deed;
        border-radius:7px;
        background:#f8faff;
        color:#405477;
        font-size:11px;
      }
      :where(.pb-css-cards-v2) .lead-note-preview[hidden], :where(.pb-css-cards-v2) .lead-note-editor[hidden], :where(.pb-css-cards-v2) .lead-new-since-badge[hidden]{display:none}
      :where(.pb-css-cards-v2) .lead-note-editor textarea{width:100%;min-height:68px;padding:8px;border:1px solid var(--pb-line-strong);border-radius:6px;font:400 12px/1.4 var(--pb-font)}
      :where(.pb-css-cards-v2) .lead-note-editor-footer{display:flex;gap:8px;align-items:center;justify-content:space-between}
      :where(.pb-css-cards-v2) .lead-note-editor-footer button{border:0;background:transparent;color:var(--pb-blue);font-weight:600;cursor:pointer}
      :where(.pb-css-cards-v2) .pb-lead-card.is-board-selected{border-color:var(--pb-blue)!important;box-shadow:0 0 0 2px rgba(47,111,237,.12)!important}
      :where(.pb-css-cards-v2) .lead-list-template .project-filter-pagination, :where(.pb-css-cards-v2) .lead-list-template #project-leads-list>nav{
        display:flex;
        gap:6px;
        justify-content:center;
        margin:15px 0 0;
      }
      :where(.pb-css-cards-v2) .lead-list-template .project-filter-pagination a, :where(.pb-css-cards-v2) .lead-list-template .project-filter-pagination button, :where(.pb-css-cards-v2) .lead-list-template #project-leads-list>nav a{
        min-height:34px;
        padding:0 10px;
        border:1px solid var(--pb-line-strong);
        border-radius:7px;
        background:#fff;
        color:#405477;
        font-size:11px;
        font-weight:600;
        text-decoration:none;
        cursor:pointer;
      }
      :where(.pb-css-cards-v2) .lead-list-template .search-empty{padding:24px;border:1px dashed var(--pb-line-strong);border-radius:10px;background:#fff;color:#405477}
      @media(max-width:1100px){
        :where(.pb-css-cards-v2) .lead-list-template .template-a-command-bar{grid-template-columns:minmax(260px,1fr) minmax(0,1.5fr)}
        :where(.pb-css-cards-v2) .lead-list-template .market-summary-panel{grid-template-columns:repeat(3,minmax(0,1fr))}
      }
      @media(max-width:860px){
        :where(.pb-css-cards-v2) .lead-index-hero, :where(.pb-css-cards-v2) .lead-list-template .template-a-command-bar, :where(.pb-css-cards-v2) .lead-list-template .market-summary-panel, :where(.pb-css-cards-v2) .lead-list-template .template-a-workspace{width:min(100% - 32px,1392px)}
        :where(.pb-css-cards-v2) .lead-index-hero{display:grid;gap:16px;padding:22px 0 16px}
        :where(.pb-css-cards-v2) .lead-list-template .template-a-command-bar{display:grid;grid-template-columns:1fr;margin-top:12px}
        :where(.pb-css-cards-v2) .lead-list-template .market-summary-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
        :where(.pb-css-cards-v2) .lead-list-template .template-a-workspace{display:block;padding-bottom:24px}
        :where(.pb-css-cards-v2) .lead-list-template .filter-summary-panel{margin-bottom:10px}
        :where(.pb-css-cards-v2) .lead-list-template #filter-summary-copy{white-space:normal}
      }
      @media(max-width:620px){
        :where(.pb-css-cards-v2) .lead-list-template .template-a-command-bar{padding:0;border:0;background:transparent;box-shadow:none}
        :where(.pb-css-cards-v2) .lead-list-template .market-summary-panel{grid-template-columns:repeat(2,minmax(0,1fr))}
        :where(.pb-css-cards-v2) .lead-list-template .filter-summary-panel{display:none}
        :where(.pb-css-cards-v2) .lead-list-template #project-leads-list .section-heading{align-items:flex-start}
        :where(.pb-css-cards-v2) .lead-list-template #project-leads-list .privacy-note{display:none}
        :where(.pb-css-cards-v2) .lead-list-template #project-leads-section-count{display:none}
        :where(.pb-css-cards-v2) .pb-lead-card{grid-template-columns:3px minmax(0,1fr)!important}
        :where(.pb-css-cards-v2) .pb-lead-spine{grid-row:1/3;border-radius:9px 0 0 9px}
        :where(.pb-css-cards-v2) .pb-lead-main{padding:12px!important}
        :where(.pb-css-cards-v2) .pb-lead-kicker{flex-wrap:wrap}
        :where(.pb-css-cards-v2) .pb-lead-kicker time{margin-left:0}
        :where(.pb-css-cards-v2) .pb-lead-source{order:4;flex-basis:100%}
        /* Phones: the meta line flows as text. The separator has no break
           opportunity on either side, so it never ends or starts a line (V13). */
        :where(.pb-css-cards-v2) .pb-lead-meta{display:block}
        :where(.pb-css-cards-v2) .pb-lead-card .pb-lead-meta>span{display:inline;margin-top:0}
        :where(.pb-css-cards-v2) .pb-lead-card .pb-lead-meta>span[aria-hidden="true"]{margin:0 6px;white-space:nowrap}
        :where(.pb-css-cards-v2) .pb-lead-card .pb-lead-meta>span:not([aria-hidden])+span:not([aria-hidden]){margin-left:6px}
        :where(.pb-css-cards-v2) .pb-lead-card .pb-lead-meta>.pb-reference{display:inline-flex;vertical-align:middle}
        :where(.pb-css-cards-v2) .pb-lead-description{-webkit-line-clamp:3}
        :where(.pb-css-cards-v2) .pb-lead-aside{
          grid-column:2;
          grid-template-columns:minmax(0,1fr) minmax(0,1fr);
          gap:5px 10px;
          padding:11px 12px 12px;
          border-top:1px solid var(--pb-line);
          border-left:0;
          border-radius:0 0 9px 0;
        }
        :where(.pb-css-cards-v2) .pb-scale-label, :where(.pb-css-cards-v2) .pb-scale-value, :where(.pb-css-cards-v2) .pb-scale-basis{grid-column:1}
        :where(.pb-css-cards-v2) .pb-evidence{grid-column:2}
        :where(.pb-css-cards-v2) .pb-lead-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:5px}
        :where(.pb-css-cards-v2) .pb-open-lead{grid-column:auto;min-height:42px}
        :where(.pb-css-cards-v2) .pb-card-action, :where(.pb-css-cards-v2) .pb-overflow summary{min-height:42px}
        :where(.pb-css-cards-v2) .pb-lead-actions>a.pb-card-action{display:none}
        :where(.pb-css-cards-v2) .pb-overflow{grid-column:auto}
        :where(.pb-css-cards-v2) .pb-overflow[open]{grid-column:1/-1}
        :where(.pb-css-cards-v2) .pb-overflow[open]>div{position:static;width:100%;min-width:0;margin-top:6px}
        :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden])){
          right:8px;
          bottom:8px;
          left:8px;
          display:grid;
        }
        :where(.pb-css-cards-v2) .lead-list-template .lead-triage-summary:has(#lead-board-selection-toolbar:not([hidden])) #lead-board-selection-toolbar{display:grid;grid-template-columns:1fr 1fr}
        :where(.pb-css-cards-v2) .lead-list-template #lead-board-selection-toolbar strong{grid-column:1/-1}
        :where(.pb-css-cards-v2) .lead-list-template #lead-board-show-selected{display:none}
      }
    
/* ---- resources ---- */

  :where(.pb-css-resources) .resource-surface .rs-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 300px); align-items: start; }
  :where(.pb-css-resources) .resource-surface .rs-hero.rs-hero-single { grid-template-columns: minmax(0, 1fr); }
  :where(.pb-css-resources) .resource-surface .rs-hero .approved-actions { margin-top: 16px; }
  :where(.pb-css-resources) .resource-surface .rs-hero .rs-hero-source { margin-top: 12px; font-size: 14px; }
  :where(.pb-css-resources) .resource-surface .rs-hero .rs-hero-source a { color: #fff; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
  :where(.pb-css-resources) .resource-surface .rs-hero-aside { display: grid; align-content: start; gap: 8px; padding: 18px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 8px; background: rgba(255, 255, 255, .05); }
  :where(.pb-css-resources) .resource-surface .rs-hero-aside strong { color: #fff; font-size: 34px; line-height: 1; }
  :where(.pb-css-resources) .resource-surface .rs-hero-aside span { color: var(--pb-hero-text); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-resources) .resource-surface .rs-hero-aside a { color: #fff; font-size: 14px; font-weight: 900; text-decoration: underline; text-underline-offset: 3px; }
  :where(.pb-css-resources) .resource-surface .rs-stack { display: grid; gap: 18px; margin-top: 18px; }
  :where(.pb-css-resources) .resource-surface .module-head { margin-bottom: 10px; }
  :where(.pb-css-resources) .resource-surface .module-head h2 { font-size: 24px; line-height: 1.2; }
  :where(.pb-css-resources) .resource-surface .rs-intro { margin: 0 0 14px; max-width: 760px; color: var(--pb-muted); font-size: 15px; line-height: 1.55; }
  :where(.pb-css-resources) .resource-surface .rs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 12px; }
  :where(.pb-css-resources) .resource-surface .rs-grid.rs-grid-wide { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
  :where(.pb-css-resources) .resource-surface .rs-card { display: grid; align-content: start; gap: 6px; min-width: 0; padding: 16px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-resources) .resource-surface a.rs-card:hover, :where(.pb-css-resources) .resource-surface a.rs-card:focus-visible { border-color: var(--pb-blue); box-shadow: 0 6px 18px rgba(15, 33, 71, .08); }
  :where(.pb-css-resources) .resource-surface .rs-card h3, :where(.pb-css-resources) .resource-surface .rs-card h4 { margin: 0; color: var(--pb-ink); font-size: 17px; line-height: 1.25; overflow-wrap: anywhere; }
  :where(.pb-css-resources) .resource-surface .rs-card p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-resources) .resource-surface .rs-card p strong { color: var(--pb-ink); }
  :where(.pb-css-resources) .resource-surface .rs-card-action { margin-top: 4px; color: var(--pb-blue); font-size: 14px; font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .rs-chip { display: inline-flex; width: fit-content; align-items: center; min-height: 24px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 3px 9px; background: #eef4ff; color: var(--pb-blue); font-size: 11px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-resources) .resource-surface .rs-card dl { display: grid; gap: 6px; margin: 4px 0 0; }
  :where(.pb-css-resources) .resource-surface .rs-card dl div { display: grid; gap: 1px; }
  :where(.pb-css-resources) .resource-surface .rs-card dt { color: var(--pb-muted); font-size: 11px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-resources) .resource-surface .rs-card dd { margin: 0; color: var(--pb-ink); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-resources) .resource-surface .rs-form-link { margin-top: 6px; }
  :where(.pb-css-resources) .resource-surface .rs-form-link a { display: inline-grid; justify-items: start; color: var(--pb-blue); font-size: 14px; font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .rs-form-link span[data-resource-state], :where(.pb-css-resources) .resource-surface .rs-form-link .resource-link-unavailable { display: inline-grid; justify-items: start; font-size: 14px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .rs-jump { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 14px; padding: 0; list-style: none; }
  :where(.pb-css-resources) .resource-surface .rs-jump a { display: inline-flex; align-items: center; min-height: 36px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 6px 12px; background: #fff; color: var(--pb-blue); font-size: 13px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-resources) .resource-surface .rs-jump a:hover { border-color: var(--pb-blue); }
  :where(.pb-css-resources) .resource-surface .rs-subhead { margin: 18px 0 10px; color: var(--pb-ink); font-size: 18px; line-height: 1.25; }
  :where(.pb-css-resources) .resource-surface .rs-subhead:first-child { margin-top: 0; }
  :where(.pb-css-resources) .resource-surface .rs-subintro { margin: -4px 0 10px; color: var(--pb-muted); font-size: 14px; }
  :where(.pb-css-resources) .resource-surface .rs-note p { margin: 0 0 10px; color: var(--pb-ink); line-height: 1.55; }
  :where(.pb-css-resources) .resource-surface .rs-note a { color: var(--pb-blue); font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .rs-key summary { cursor: pointer; color: var(--pb-blue); font-size: 14px; font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .rs-state-key { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
  :where(.pb-css-resources) .resource-surface .rs-state-key li { display: grid; gap: 2px; padding: 8px 10px; border: 1px solid var(--pb-line); border-radius: 7px; background: #fff; }
  :where(.pb-css-resources) .resource-surface .rs-state-key strong { color: var(--pb-ink); font-size: 12px; }
  :where(.pb-css-resources) .resource-surface .rs-state-key span { color: var(--pb-muted); font-size: 12px; line-height: 1.3; }
  :where(.pb-css-resources) .resource-surface .rs-state-key [data-resource-key-state="temporarily_unavailable"], :where(.pb-css-resources) .resource-surface .rs-state-key [data-resource-key-state="last_verified"] { border-color: #f2d6ae; background: #fff7ed; }
  :where(.pb-css-resources) .resource-surface .rs-state-key [data-resource-key-state="broken"], :where(.pb-css-resources) .resource-surface .rs-state-key [data-resource-key-state="unproven"] { border-color: #e7d3cf; background: #fbf6f5; }
  :where(.pb-css-resources) .resource-surface .resource-link-state { display: inline-flex; width: fit-content; margin: 0 0 6px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 3px 8px; background: #eef4ff; color: #1f4fae; font-size: 10px; font-weight: 900; line-height: 1.2; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-resources) .resource-surface [data-resource-state="redirected"] > .resource-link-state { border-color: #cbd6e5; background: #eef2fa; color: var(--pb-ink); }
  :where(.pb-css-resources) .resource-surface [data-resource-state="last_verified"] > .resource-link-state, :where(.pb-css-resources) .resource-surface [data-resource-state="temporarily_unavailable"] > .resource-link-state { border-color: #f2d6ae; background: #fff7ed; color: #7a4b12; }
  :where(.pb-css-resources) .resource-surface [data-resource-state="broken"] > .resource-link-state, :where(.pb-css-resources) .resource-surface [data-resource-state="unproven"] > .resource-link-state { border-color: #e7d3cf; background: #fbf6f5; color: #6c4038; }
  :where(.pb-css-resources) .resource-surface .resource-link-unavailable, :where(.pb-css-resources) .resource-surface [data-resource-state="broken"], :where(.pb-css-resources) .resource-surface [data-resource-state="unproven"], :where(.pb-css-resources) .resource-surface [data-resource-state="temporarily_unavailable"] { color: var(--pb-muted); cursor: not-allowed; }
  :where(.pb-css-resources) .resource-surface a[data-resource-state="broken"], :where(.pb-css-resources) .resource-surface a[data-resource-state="unproven"], :where(.pb-css-resources) .resource-surface a[data-resource-state="temporarily_unavailable"] { pointer-events: none; text-decoration: none; }
  :where(.pb-css-resources) .resource-surface .rs-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; margin-top: 16px; max-width: 640px; }
  :where(.pb-css-resources) .resource-surface .rs-search label { grid-column: 1 / -1; color: var(--pb-hero-text); font-size: 13px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .rs-search input { min-width: 0; min-height: 44px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 8px 12px; background: #fff; color: var(--pb-ink); font-size: 16px; font-weight: 500; }
  :where(.pb-css-resources) .resource-surface .rs-search button { min-height: 44px; border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-resources) .resource-surface .rs-results { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-resources) .resource-surface .rs-results a { display: grid; gap: 3px; padding: 12px; border: 1px solid var(--pb-line); border-radius: 8px; background: #f8fbff; color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-resources) .resource-surface .rs-results a:hover { border-color: var(--pb-blue); }
  :where(.pb-css-resources) .resource-surface .rs-results strong { font-size: 15px; }
  :where(.pb-css-resources) .resource-surface .rs-results span { color: var(--pb-muted); font-size: 13px; }
  :where(.pb-css-resources) .resource-surface .rs-examples { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-resources) .resource-surface .rs-examples li { display: grid; gap: 4px; padding: 14px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-resources) .resource-surface .rs-examples .rs-meta { color: var(--pb-muted); font-size: 13px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .rs-examples h3 { margin: 0; font-size: 17px; line-height: 1.25; }
  :where(.pb-css-resources) .resource-surface .rs-examples h3 a { color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-resources) .resource-surface .rs-examples p { margin: 0; color: #425372; font-size: 14px; line-height: 1.5; }
  :where(.pb-css-resources) .resource-surface .rs-inline-links { display: flex; flex-wrap: wrap; gap: 8px 14px; margin-top: 4px; font-size: 14px; font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .rs-inline-links a { color: var(--pb-blue); }
  :where(.pb-css-resources) .resource-surface .rs-handoff p { margin: 0 0 12px; color: var(--pb-muted); line-height: 1.55; max-width: 760px; }
  :where(.pb-css-resources) .resource-surface .navy-cta.rs-cta { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center; }
  :where(.pb-css-resources) .resource-surface .navy-cta.rs-cta h2 { margin: 0; font-size: 22px; line-height: 1.2; }
  :where(.pb-css-resources) .resource-surface .navy-cta.rs-cta p { margin: 6px 0 0; line-height: 1.5; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 18px; align-items: start; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-form { display: grid; gap: 12px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-form label { display: grid; gap: 6px; margin: 0; color: var(--pb-ink); font-size: 14px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-form input, :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-form select { width: 100%; min-height: 44px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 8px 11px; background: #fff; color: var(--pb-ink); font-size: 16px; font-weight: 500; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-result { display: grid; gap: 6px; align-content: start; min-height: 132px; margin: 0; padding: 18px; border: 0; border-radius: 8px; background: var(--pb-navy); color: #fff; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-result strong { color: #fff; font-size: 34px; line-height: 1.05; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-result span { color: var(--pb-kicker); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-resources) .resource-surface .rs-calc-body .calculator-result p { margin: 4px 0 0; color: var(--pb-hero-text); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry form { display: grid; gap: 12px; max-width: 640px; margin: 0; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry label { display: grid; gap: 6px; color: var(--pb-ink); font-size: 14px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry input, :where(.pb-css-resources) .resource-surface .rs-enquiry select, :where(.pb-css-resources) .resource-surface .rs-enquiry textarea { width: 100%; min-height: 44px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 8px 11px; background: #fff; color: var(--pb-ink); font: inherit; font-size: 16px; font-weight: 500; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry button[type="submit"] { width: fit-content; border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry .privacy-note { margin: 0; color: var(--pb-muted); font-size: 13px; line-height: 1.5; }
  :where(.pb-css-resources) .resource-surface .rs-enquiry .privacy-note a { color: var(--pb-blue); }
  :where(.pb-css-resources) .resource-surface .rs-listing img { max-width: 140px; max-height: 56px; object-fit: contain; }
  :where(.pb-css-resources) .resource-surface .rs-listing ul { display: grid; gap: 4px; margin: 4px 0 0; padding: 0; list-style: none; color: #425372; font-size: 14px; }
  :where(.pb-css-resources) .resource-surface .pf-section h2 { hyphens: manual; }
  :where(.pb-css-resources) .resource-surface .pf-lede { margin: 0 0 12px; color: #425372; line-height: 1.55; }
  :where(.pb-css-resources) .resource-surface .pf-fee-table { width: 100%; border-collapse: collapse; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-resources) .resource-surface .pf-fee-table th, :where(.pb-css-resources) .resource-surface .pf-fee-table td { padding: 10px 12px; border-bottom: 1px solid var(--pb-line); text-align: left; vertical-align: top; font-size: 14px; }
  :where(.pb-css-resources) .resource-surface .pf-fee-table th { background: var(--pb-navy); color: #fff; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-resources) .resource-surface .pf-fee-table td:first-child { color: var(--pb-ink); font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .pf-fee-table td:nth-child(2) { color: var(--pb-ink); }
  :where(.pb-css-resources) .resource-surface .pf-more { margin-top: 12px; }
  :where(.pb-css-resources) .resource-surface .pf-more > summary { cursor: pointer; color: var(--pb-blue); font-weight: 900; }
  :where(.pb-css-resources) .resource-surface .pf-more > .pf-fee-table { margin-top: 10px; }
  :where(.pb-css-resources) .resource-surface .pf-links { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
  :where(.pb-css-resources) .resource-surface .pf-links a { display: inline-flex; align-items: center; min-height: 36px; padding: 8px 12px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-size: 13px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-resources) .resource-surface .pf-cite { margin: 12px 0 0; color: var(--pb-muted); font-size: 12px; font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .pf-cite a { color: var(--pb-blue); }
  :where(.pb-css-resources) .resource-surface .pf-sources ol { margin: 12px 0 0; padding-left: 24px; list-style: decimal; }
  :where(.pb-css-resources) .resource-surface .pf-sources li { margin: 0 0 12px; font-size: 14px; overflow-wrap: anywhere; }
  :where(.pb-css-resources) .resource-surface .pf-sources li a { color: var(--pb-blue); font-weight: 800; }
  :where(.pb-css-resources) .resource-surface .pf-sources li span { display: block; color: var(--pb-muted); font-size: 12px; }
  :where(.pb-css-resources) .resource-surface .approved-hero .pf-answer { color: #fff; font-size: 17px; font-weight: 600; }
  @media (max-width: 960px) {
    :where(.pb-css-resources) .resource-surface .rs-hero { grid-template-columns: minmax(0, 1fr); }
    :where(.pb-css-resources) .resource-surface .rs-calc-body { grid-template-columns: minmax(0, 1fr); }
  }
  @media (max-width: 560px) {
    :where(.pb-css-resources) .resource-surface .approved-hero { padding: 20px; }
    :where(.pb-css-resources) .resource-surface .module-head h2 { font-size: 21px; }
    :where(.pb-css-resources) .resource-surface .rs-grid, :where(.pb-css-resources) .resource-surface .rs-grid.rs-grid-wide { grid-template-columns: minmax(0, 1fr); }
    :where(.pb-css-resources) .resource-surface .rs-state-key { grid-template-columns: 1fr 1fr; }
    :where(.pb-css-resources) .resource-surface .rs-search { grid-template-columns: minmax(0, 1fr); }
    :where(.pb-css-resources) .resource-surface .rs-search button { width: 100%; }
    :where(.pb-css-resources) .resource-surface .rs-hero .approved-actions .approved-button { flex: 1 1 100%; }
    :where(.pb-css-resources) .resource-surface .rs-hero-aside { grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 2px 12px; padding: 12px 14px; }
    :where(.pb-css-resources) .resource-surface .rs-hero-aside strong { grid-row: span 2; font-size: 28px; }
    :where(.pb-css-resources) .resource-surface .navy-cta.rs-cta { grid-template-columns: minmax(0, 1fr); }
    :where(.pb-css-resources) .resource-surface .rs-enquiry button[type="submit"] { width: 100%; }
    :where(.pb-css-resources) .resource-surface .pf-fee-table, :where(.pb-css-resources) .resource-surface .pf-fee-table tbody, :where(.pb-css-resources) .resource-surface .pf-fee-table tr, :where(.pb-css-resources) .resource-surface .pf-fee-table td { display: block; width: 100%; }
    :where(.pb-css-resources) .resource-surface .pf-fee-table thead { display: none; }
    :where(.pb-css-resources) .resource-surface .pf-fee-table tr { padding: 4px 0; border-bottom: 1px solid var(--pb-line); }
    :where(.pb-css-resources) .resource-surface .pf-fee-table tr:last-child { border-bottom: 0; }
    :where(.pb-css-resources) .resource-surface .pf-fee-table td { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 10px; padding: 6px 12px; border-bottom: 0; overflow-wrap: anywhere; }
    :where(.pb-css-resources) .resource-surface .pf-fee-table td::before { content: attr(data-label); color: var(--pb-muted); font-size: 11px; font-weight: 900; text-transform: uppercase; }
    :where(.pb-css-resources) .resource-surface .approved-hero .pf-answer { font-size: 16px; }
  }

/* ---- profile ---- */

      :where(.pb-css-profile) .profile-surface .kpi-strip{grid-template-columns:repeat(4,minmax(0,1fr))}
      :where(.pb-css-profile) .profile-surface .approved-hero h1{overflow-wrap:anywhere}
      :where(.pb-css-profile) .profile-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
      :where(.pb-css-profile) .profile-facts h3{margin:0 0 10px;color:var(--pb-ink);font-size:15px}
      :where(.pb-css-profile) .profile-bars{display:grid;gap:8px;margin:0;padding:0;list-style:none}
      :where(.pb-css-profile) .profile-bars li{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(48px,1fr) auto;gap:10px;align-items:center;min-width:0;color:#33425f;font-size:14px}
      :where(.pb-css-profile) .profile-bars span{min-width:0;overflow-wrap:anywhere}
      :where(.pb-css-profile) .profile-bars i{display:block;height:8px;border-radius:999px;background:#e8eef9;overflow:hidden}
      :where(.pb-css-profile) .profile-bars b{display:block;height:100%;border-radius:999px;background:var(--pb-blue)}
      :where(.pb-css-profile) .profile-bars strong{min-width:2ch;color:var(--pb-ink);text-align:right;font-variant-numeric:tabular-nums}
      :where(.pb-css-profile) .profile-surface .compact-list a{overflow-wrap:anywhere}
      @media (max-width:960px){
        :where(.pb-css-profile) .profile-surface .kpi-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-bottom:0}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card{flex:none}
      }
      @media (max-width:640px){
        :where(.pb-css-profile) .profile-facts{grid-template-columns:1fr}
        :where(.pb-css-profile) .profile-surface .kpi-strip{gap:10px}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card{padding:12px}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card strong{font-size:21px}
        :where(.pb-css-profile) .profile-surface .approved-actions .approved-button{flex:1 1 auto;justify-content:center}
        /* R3-B answer first: a short hero, inline actions and a one-row KPI
           strip, so the application list begins on the first phone screen. */
        :where(.pb-css-profile) .profile-surface .approved-hero{gap:14px}
        :where(.pb-css-profile) .profile-surface .approved-actions{flex-direction:row;flex-wrap:wrap}
        :where(.pb-css-profile) .profile-surface .approved-actions .approved-button{width:auto;flex:1 1 0;min-height:40px}
        :where(.pb-css-profile) .profile-surface .kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card{padding:8px 9px}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card span{font-size:11px;letter-spacing:0;text-transform:none}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card strong{margin-top:3px;font-size:15px;line-height:1.2}
        :where(.pb-css-profile) .profile-surface .kpi-strip .metric-card p{display:none}
        :where(.pb-css-profile) .profile-surface .organisation-layout{margin-top:12px}
        :where(.pb-css-profile) .profile-surface .profile-leads .module-head{margin-bottom:8px}
        :where(.pb-css-profile) .profile-surface .profile-leads .module-head h2{font-size:20px}
      }
      :where(.pb-css-profile) .profile-count-line strong{color:#fff}
    
/* ---- map-product ---- */

      :where(.pb-css-map-product) .map-product-page {
        display: grid;
        gap: 8px;
        max-width: var(--pb-container);
        padding-top: 10px;
      }
      :where(.pb-css-map-product) .map-product-page .approved-breadcrumbs {
        order: 1;
      }
      :where(.pb-css-map-product) .map-product-page .approved-hero {
        order: 2;
        align-items: center;
        margin-top: 8px;
        padding: 12px 16px;
      }
      :where(.pb-css-map-product) .map-product-page .approved-hero h1 {
        max-width: 780px;
        font-size: var(--pb-h1);
      }
      :where(.pb-css-map-product) .map-product-page .approved-hero p {
        max-width: 760px;
        margin-top: 6px;
      }
      :where(.pb-css-map-product) .map-status-row {
        order: 3;
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
        justify-content: space-between;
        margin-top: 8px;
      }
      :where(.pb-css-map-product) .map-status-pill, :where(.pb-css-map-product) .map-mini-action {
        display: inline-flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 6px;
        min-height: 34px;
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        padding: 7px 11px;
        background: #fff;
        color: var(--pb-ink);
        font-size: 13px;
        font-weight: 800;
      }
      :where(.pb-css-map-product) .map-status-pill span {
        color: var(--pb-muted);
        font-weight: 700;
      }
      :where(.pb-css-map-product) .map-mini-action {
        color: var(--pb-blue);
        text-decoration: none;
      }
      :where(.pb-css-map-product) .map-query-context {
        order: 4;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 12px;
        align-items: center;
        margin-top: 8px;
        padding: 12px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-map-product) .map-query-context strong {
        display: block;
        color: var(--pb-ink);
        font-size: 14px;
      }
      :where(.pb-css-map-product) .map-query-context p {
        margin: 4px 0 0;
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 800;
      }
      :where(.pb-css-map-product) .map-query-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        justify-content: flex-end;
        min-width: 0;
      }
      :where(.pb-css-map-product) .map-query-chip {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 28px;
        max-width: 100%;
        border: 1px solid #cfe0ff;
        border-radius: 999px;
        padding: 5px 9px;
        background: #eaf1ff;
        color: #1746a2;
        font-size: 12px;
        font-weight: 900;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-map-product) .map-query-chip.is-muted {
        border-color: #dbe4f1;
        background: #eef2fa;
        color: var(--pb-muted);
      }
      :where(.pb-css-map-product) .map-controls {
        order: 5;
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        gap: 8px;
        align-items: end;
        margin-top: 8px;
        padding: 8px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 16px 34px rgba(15, 33, 71, .06);
      }
      :where(.pb-css-map-product) .map-controls label {
        display: grid;
        gap: 6px;
        min-width: 0;
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .map-controls label:not(.checkbox-inline) {
        grid-column: span 2;
      }
      :where(.pb-css-map-product) .map-controls select {
        width: 100%;
        min-width: 0;
        min-height: 36px;
        border: 1px solid #dbe5f4;
        border-radius: 7px;
        padding: 8px 10px;
        background: #fff;
        color: var(--pb-ink);
        font: inherit;
        font-size: 14px;
        font-weight: 800;
      }
      :where(.pb-css-map-product) .map-controls button, :where(.pb-css-map-product) .map-product-page .button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 36px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        padding: 8px 11px;
        background: #eef4ff;
        color: var(--pb-ink);
        font: inherit;
        font-size: 14px;
        font-weight: 900;
        text-decoration: none;
        cursor: pointer;
        min-width: 0;
        line-height: 1.1;
        white-space: normal;
      }
      :where(.pb-css-map-product) .map-controls button:hover, :where(.pb-css-map-product) .map-product-page .button:hover {
        border-color: var(--pb-blue);
      }
      :where(.pb-css-map-product) .map-controls button[aria-pressed="true"], :where(.pb-css-map-product) .map-product-page .button.primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-map-product) .map-controls .checkbox-inline {
        display: flex;
        flex-direction: row;
        gap: 8px;
        min-height: 36px;
        align-items: center;
        justify-content: center;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        padding: 8px 10px;
        background: #eef4ff;
        color: var(--pb-ink);
        font-size: 14px;
        text-transform: none;
      }
      :where(.pb-css-map-product) .map-controls .checkbox-inline input {
        width: 18px;
        height: 18px;
        accent-color: var(--pb-blue);
      }
      :where(.pb-css-map-product) .map-controls .filter-status {
        display: grid;
        grid-column: span 2;
        gap: 2px;
        align-self: stretch;
        min-height: 36px;
        margin: 0;
        padding: 6px 10px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        background: #f8fbff;
        color: var(--pb-ink);
      }
      :where(.pb-css-map-product) .map-controls .filter-status strong {
        color: var(--pb-blue);
        font-size: 20px;
        line-height: 1;
      }
      :where(.pb-css-map-product) .map-controls .filter-status span {
        color: var(--pb-muted);
        font-size: 11px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .map-layout {
        order: 4;
        display: grid;
        grid-template-columns: minmax(0, 1fr) 340px;
        gap: 16px;
        align-items: stretch;
        margin-top: 8px;
      }
      :where(.pb-css-map-product) .map-canvas-shell {
        position: relative;
        min-width: 0;
      }
      :where(.pb-css-map-product) .map-viewport-strip {
        position: absolute;
        z-index: 500;
        left: 12px;
        right: 12px;
        top: 12px;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 8px;
        pointer-events: none;
      }
      :where(.pb-css-map-product) .map-viewport-strip span {
        display: grid;
        gap: 2px;
        min-width: 0;
        border: 1px solid rgba(212, 226, 253, .88);
        border-radius: 8px;
        padding: 7px 9px;
        background: rgba(255, 255, 255, .94);
        color: var(--pb-muted);
        font-size: 10px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
        box-shadow: 0 10px 22px rgba(15, 33, 71, .10);
      }
      :where(.pb-css-map-product) .map-viewport-strip strong {
        color: var(--pb-ink);
        font-size: 15px;
        line-height: 1.05;
        text-transform: none;
        letter-spacing: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
      }
      :where(.pb-css-map-product) .lead-map {
        position: relative;
        min-width: 0;
        min-height: 700px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        overflow: hidden;
        background: #eef2fa;
        box-shadow: 0 18px 38px rgba(15, 33, 71, .08);
      }
      :where(.pb-css-map-product) .real-leaflet-map {
        z-index: 1;
      }
      :where(.pb-css-map-product) .map-canvas-shell .leaflet-top.leaflet-left {
        top: auto;
        bottom: 12px;
      }
      :where(.pb-css-map-product) .map-canvas-shell .leaflet-top.leaflet-left .leaflet-control {
        margin-top: 0;
      }
      :where(.pb-css-map-product) .real-leaflet-map .leaflet-popup-content {
        color: var(--pb-ink);
        font-family: var(--pb-font);
      }
      :where(.pb-css-map-product) .real-leaflet-map .leaflet-popup-content p {
        margin: 6px 0;
      }
      :where(.pb-css-map-product) .real-leaflet-map .leaflet-popup-content a {
        color: var(--pb-blue);
        font-weight: 900;
      }
      :where(.pb-css-map-product) .pb-county-count {
        display: grid;
        place-items: center;
        min-width: 76px;
        min-height: 44px;
        padding: 5px 8px;
        border: 2px solid #fff;
        border-radius: 8px;
        background: rgba(10, 23, 51, .9);
        color: #fff;
        box-shadow: 0 8px 22px rgba(15, 33, 71, .22);
        text-align: center;
      }
      :where(.pb-css-map-product) .pb-county-count strong {
        font-size: 16px;
        line-height: 1;
      }
      :where(.pb-css-map-product) .pb-county-count span {
        font-size: 10px;
        font-weight: 900;
        line-height: 1.1;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .pb-user-marker {
        display: grid;
        place-items: center;
        width: 42px !important;
        height: 42px !important;
        border: 2px solid #fff;
        border-radius: 50%;
        background: var(--pb-blue);
        color: #fff;
        box-shadow: 0 6px 18px rgba(15, 33, 71, .28);
        font-size: 11px;
        font-weight: 900;
      }
      :where(.pb-css-map-product) .map-key {
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        padding: 16px;
        background: #fff;
        align-self: stretch;
        max-height: 700px;
        overflow: auto;
      }
      :where(.pb-css-map-product) .map-key h2 {
        margin: 0;
        color: var(--pb-ink);
        font-size: 20px;
      }
      :where(.pb-css-map-product) .map-key p {
        color: var(--pb-muted);
        line-height: 1.5;
      }
      :where(.pb-css-map-product) .map-key dl {
        display: grid;
        gap: 8px;
        margin: 14px 0;
      }
      :where(.pb-css-map-product) .map-key dl div {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        border-bottom: 1px solid var(--pb-line);
        padding-bottom: 8px;
      }
      :where(.pb-css-map-product) .map-key dt {
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .map-key dd {
        margin: 0;
        color: var(--pb-ink);
        font-weight: 900;
      }
      :where(.pb-css-map-product) .nearest-results {
        margin: 14px 0;
        padding: 12px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-map-product) .nearest-results h3 {
        margin: 0 0 8px;
        font-size: 15px;
      }
      :where(.pb-css-map-product) .nearest-results ol {
        display: grid;
        gap: 8px;
        margin: 0;
        padding-left: 18px;
      }
      :where(.pb-css-map-product) .nearest-results li a, :where(.pb-css-map-product) .nearest-results li span {
        display: block;
      }
      :where(.pb-css-map-product) .nearest-results li span, :where(.pb-css-map-product) .nearest-results .empty {
        color: var(--pb-muted);
        font-size: 12px;
      }
      :where(.pb-css-map-product) .map-product-page .snapshot {
        order: 6;
        margin-top: 16px;
        padding: 18px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
        overflow-x: hidden;
      }
      :where(.pb-css-map-product) .map-product-page .snapshot h2 {
        margin: 0 0 12px;
        color: var(--pb-ink);
        font-size: 22px;
      }
      :where(.pb-css-map-product) .map-workspace-panel {
        display: grid;
        gap: 12px;
      }
      :where(.pb-css-map-product) .map-workflow-handoff {
        order: 6;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 14px;
        align-items: center;
        margin: 12px 0;
        padding: 14px;
        border: 1px solid #dfe7f4;
        border-left: 4px solid var(--pb-blue);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-map-product) .map-workflow-handoff strong {
        display: block;
        color: var(--pb-ink);
        font-size: 15px;
      }
      :where(.pb-css-map-product) .map-workflow-handoff p {
        margin: 5px 0 0;
        color: var(--pb-muted);
        font-size: 13px;
        line-height: 1.45;
      }
      :where(.pb-css-map-product) .map-workflow-handoff .map-card-actions {
        justify-content: flex-end;
      }
      :where(.pb-css-map-product) .map-panel-heading {
        display: flex;
        align-items: start;
        justify-content: space-between;
        gap: 10px;
      }
      :where(.pb-css-map-product) .map-panel-heading p, :where(.pb-css-map-product) .map-panel-heading h2 {
        margin: 0;
      }
      :where(.pb-css-map-product) .map-panel-heading h2 {
        font-size: 20px;
      }
      :where(.pb-css-map-product) .map-panel-help {
        margin-top: 6px !important;
        color: var(--pb-muted);
        font-size: 12px;
        line-height: 1.4;
      }
      :where(.pb-css-map-product) .map-panel-toggle {
        display: none;
      }
      :where(.pb-css-map-product) .map-selected-card {
        display: grid;
        gap: 8px;
        box-sizing: border-box;
        max-width: 100%;
        border: 1px solid #cfe0ff;
        border-radius: 8px;
        padding: 12px;
        background: #f8fbff;
      }
      :where(.pb-css-map-product) .map-selected-card *, :where(.pb-css-map-product) .map-lead-card * {
        min-width: 0;
      }
      :where(.pb-css-map-product) .map-selected-card[data-empty="true"] {
        color: var(--pb-muted);
      }
      :where(.pb-css-map-product) .map-selected-card strong {
        color: var(--pb-ink);
        font-size: 16px;
        line-height: 1.25;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-map-product) .map-selected-card dl, :where(.pb-css-map-product) .map-lead-card dl {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px 10px;
        margin: 0;
      }
      :where(.pb-css-map-product) .map-selected-card dt, :where(.pb-css-map-product) .map-lead-card dt {
        color: var(--pb-muted);
        font-size: 10px;
        font-weight: 900;
        letter-spacing: .05em;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .map-selected-card dd, :where(.pb-css-map-product) .map-lead-card dd {
        margin: 2px 0 0;
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 800;
      }
      :where(.pb-css-map-product) .map-county-shortcuts {
        display: grid;
        gap: 8px;
      }
      :where(.pb-css-map-product) .map-county-shortcuts h3 {
        margin: 0;
        color: var(--pb-ink);
        font-size: 14px;
      }
      :where(.pb-css-map-product) .map-county-grid {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 6px;
      }
      :where(.pb-css-map-product) .map-county-chip {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 6px;
        min-height: 34px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        padding: 6px 8px;
        background: #fff;
        color: var(--pb-ink);
        font: inherit;
        font-size: 12px;
        font-weight: 900;
        cursor: pointer;
      }
      :where(.pb-css-map-product) .map-county-chip[aria-pressed="true"] {
        border-color: var(--pb-blue);
        background: #eef4ff;
        color: var(--pb-blue);
      }
      :where(.pb-css-map-product) .map-county-chip span {
        color: var(--pb-muted);
        font-size: 11px;
      }
      :where(.pb-css-map-product) .map-latest-list {
        display: grid;
        gap: 9px;
      }
      :where(.pb-css-map-product) .map-lead-card {
        display: grid;
        gap: 8px;
        box-sizing: border-box;
        max-width: 100%;
        width: 100%;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        padding: 11px;
        background: #fff;
        color: var(--pb-ink);
        text-align: left;
        cursor: pointer;
      }
      :where(.pb-css-map-product) .map-lead-card:hover, :where(.pb-css-map-product) .map-lead-card[aria-current="true"] {
        border-color: var(--pb-blue);
        background: #f8fbff;
      }
      :where(.pb-css-map-product) .map-lead-card strong {
        color: var(--pb-ink);
        font-size: 14px;
        line-height: 1.25;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-map-product) .map-lead-card dt, :where(.pb-css-map-product) .map-lead-card dd {
        overflow-wrap: anywhere;
      }
      :where(.pb-css-map-product) .map-card-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      :where(.pb-css-map-product) .map-empty-card {
        box-sizing: border-box;
        max-width: 100%;
        border: 1px dashed #cfe0ff;
        border-radius: 8px;
        padding: 12px;
        background: #f8fbff;
        color: var(--pb-muted);
      }
      :where(.pb-css-map-product) .map-product-page .snapshot table {
        width: 100%;
        min-width: 0;
        table-layout: fixed;
        border-collapse: collapse;
      }
      :where(.pb-css-map-product) .map-product-page .snapshot th, :where(.pb-css-map-product) .map-product-page .snapshot td {
        border-bottom: 1px solid var(--pb-line);
        padding: 10px 8px;
        text-align: left;
        vertical-align: top;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-map-product) .map-product-page .snapshot th:nth-child(1), :where(.pb-css-map-product) .map-product-page .snapshot td:nth-child(1) {
        width: 46%;
      }
      :where(.pb-css-map-product) .map-product-page .snapshot th {
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .05em;
        text-transform: uppercase;
      }
      :where(.pb-css-map-product) .map-product-page a {
        color: var(--pb-blue);
        font-weight: 800;
      }
      @media (max-width: 1080px) {
        :where(.pb-css-map-product) .map-controls {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        :where(.pb-css-map-product) .map-layout {
          grid-template-columns: 1fr;
        }
      }
      @media (max-width: 640px) {
        :where(.pb-css-map-product) .map-product-page {
          display: grid;
          gap: 7px;
          padding-top: 6px;
        }
        :where(.pb-css-map-product) .map-product-page .approved-breadcrumbs {
          display: none;
        }
        :where(.pb-css-map-product) .map-product-page .approved-hero {
          order: 1;
          grid-template-columns: 1fr;
          gap: 8px;
          margin-top: 0;
          padding: 8px 10px;
        }
        :where(.pb-css-map-product) .map-product-page .approved-hero h1 {
          margin: 3px 0;
          font-size: var(--pb-h1-sm);
          line-height: var(--pb-h1-line);
        }
        :where(.pb-css-map-product) .map-product-page .approved-hero p:not(.approved-kicker) {
          margin: 0;
          font-size: 13px;
          line-height: 1.35;
        }
        :where(.pb-css-map-product) .map-product-page .approved-actions {
          margin: 0;
        }
        :where(.pb-css-map-product) .map-product-page .approved-button {
          min-height: 36px;
          padding: 8px 10px;
        }
        :where(.pb-css-map-product) .map-status-row {
          order: 2;
          display: flex;
          flex-wrap: wrap;
          grid-template-columns: repeat(2, minmax(0, 1fr));
          gap: 6px;
          margin-top: 0;
        }
        :where(.pb-css-map-product) .map-status-pill, :where(.pb-css-map-product) .map-mini-action {
          justify-content: center;
          width: auto;
          flex: 1 1 128px;
          border-radius: 8px;
          min-height: 30px;
          padding: 5px 7px;
          font-size: 11px;
          text-align: center;
        }
        :where(.pb-css-map-product) .map-mini-action {
          flex-basis: 100%;
        }
        :where(.pb-css-map-product) .map-query-context {
          order: 3;
          grid-template-columns: 1fr;
          gap: 8px;
          margin-top: 0;
          padding: 9px;
        }
        :where(.pb-css-map-product) .map-query-chips {
          justify-content: flex-start;
        }
        :where(.pb-css-map-product) .map-query-chip {
          min-height: 26px;
          padding: 4px 8px;
          font-size: 11px;
        }
        :where(.pb-css-map-product) .map-controls {
          order: 4;
          grid-template-columns: repeat(2, minmax(0, 1fr));
          gap: 7px;
          margin-top: 0;
          padding: 8px;
        }
        :where(.pb-css-map-product) .map-controls label {
          gap: 3px;
          font-size: 10px;
        }
        :where(.pb-css-map-product) .map-controls label:not(.checkbox-inline) {
          grid-column: 1 / -1;
        }
        :where(.pb-css-map-product) .map-controls select {
          min-height: 36px;
          padding: 7px 9px;
          font-size: 13px;
        }
        :where(.pb-css-map-product) .map-controls button, :where(.pb-css-map-product) .map-product-page .button, :where(.pb-css-map-product) .map-controls .checkbox-inline {
          width: 100%;
          min-height: 36px;
          padding: 7px 9px;
          font-size: 12px;
          white-space: normal;
          text-align: center;
        }
        :where(.pb-css-map-product) .map-controls .filter-status {
          grid-column: 1 / -1;
          min-height: 36px;
          padding: 6px 8px;
        }
        :where(.pb-css-map-product) .map-controls .filter-status strong {
          font-size: 17px;
        }
        :where(.pb-css-map-product) .map-controls .filter-status span {
          font-size: 10px;
        }
        :where(.pb-css-map-product) .map-layout {
          order: 3;
          margin-top: 0;
        }
        :where(.pb-css-map-product) .map-viewport-strip {
          left: 8px;
          right: 8px;
          top: 8px;
          grid-template-columns: repeat(2, minmax(0, 1fr));
          gap: 5px;
        }
        :where(.pb-css-map-product) .map-viewport-strip span {
          padding: 5px 7px;
          font-size: 9px;
        }
        :where(.pb-css-map-product) .map-viewport-strip strong {
          font-size: 13px;
        }
        :where(.pb-css-map-product) .lead-map {
          min-height: 430px;
        }
        :where(.pb-css-map-product) .map-key {
          position: relative;
          bottom: auto;
          z-index: 10;
          max-height: none;
          border-radius: 8px;
          padding: 10px;
          overflow: visible;
          box-shadow: 0 -18px 34px rgba(15, 33, 71, .14);
        }
        :where(.pb-css-map-product) .map-key h2 {
          font-size: 17px;
        }
        :where(.pb-css-map-product) .map-key > p {
          display: none;
        }
        :where(.pb-css-map-product) .map-key dl {
          grid-template-columns: 1fr;
          gap: 5px;
          margin: 8px 0;
        }
        :where(.pb-css-map-product) .nearest-results {
          margin: 8px 0;
          padding: 8px;
        }
        :where(.pb-css-map-product) .map-panel-toggle {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          min-height: 32px;
          border: 1px solid #d4e2fd;
          border-radius: 999px;
          padding: 6px 10px;
          background: #eef4ff;
          color: var(--pb-blue);
          font: inherit;
          font-size: 12px;
          font-weight: 900;
        }
        :where(.pb-css-map-product) .map-workspace-panel[data-collapsed="true"] .map-selected-card, :where(.pb-css-map-product) .map-workspace-panel[data-collapsed="true"] .map-county-shortcuts, :where(.pb-css-map-product) .map-workspace-panel[data-collapsed="true"] .nearest-results, :where(.pb-css-map-product) .map-workspace-panel[data-collapsed="true"] .map-latest-list {
          display: none;
        }
        :where(.pb-css-map-product) .map-selected-card dl, :where(.pb-css-map-product) .map-lead-card dl {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-map-product) .map-latest-list .map-lead-card {
          display: grid !important;
          grid-template-columns: 1fr !important;
        }
        :where(.pb-css-map-product) .map-latest-list .map-lead-card dl {
          width: 100% !important;
          max-width: 100% !important;
        }
        :where(.pb-css-map-product) .map-latest-list .map-lead-card dl div {
          display: grid;
          grid-template-columns: 1fr;
          gap: 1px;
        }
        :where(.pb-css-map-product) .map-selected-card .map-card-actions .button {
          flex: 1 1 calc(50% - 4px);
          min-height: 34px;
          padding: 7px 8px;
        }
        :where(.pb-css-map-product) .map-county-grid {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot {
          order: 5;
          padding: 12px;
          overflow-x: visible;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot table, :where(.pb-css-map-product) .map-product-page .snapshot tbody, :where(.pb-css-map-product) .map-product-page .snapshot tr, :where(.pb-css-map-product) .map-product-page .snapshot td {
          display: block;
          width: 100%;
          min-width: 0;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot thead {
          display: none;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot tr {
          margin: 0 0 10px;
          border: 1px solid var(--pb-line);
          border-radius: 8px;
          background: #fff;
          overflow: hidden;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td {
          padding: 10px 12px;
          border-bottom: 1px solid var(--pb-line);
          color: var(--pb-ink);
          font-size: 13px;
          line-height: 1.4;
          overflow-wrap: anywhere;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:last-child {
          border-bottom: 0;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td::before {
          display: block;
          margin-bottom: 3px;
          color: var(--pb-muted);
          font-size: 10px;
          font-weight: 900;
          letter-spacing: .06em;
          text-transform: uppercase;
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:nth-child(1)::before {
          content: "Lead";
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:nth-child(2)::before {
          content: "County";
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:nth-child(3)::before {
          content: "Stage";
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:nth-child(4)::before {
          content: "Value";
        }
        :where(.pb-css-map-product) .map-product-page .snapshot td:first-child {
          background: #f8fbff;
          font-size: 15px;
          font-weight: 900;
        }
      }
    
/* ---- council ---- */

  /* Council detail pages: approved-surface tokens only (docs/design-tokens.md). */
  :where(.pb-css-council) .council-detail .council-hero { align-items: end; }
  :where(.pb-css-council) .council-detail .approved-hero .council-count-line { margin: 12px 0 0; color: #fff; font-size: 17px; font-weight: 700; line-height: 1.4; }
  :where(.pb-css-council) .council-detail .council-register { display: grid; gap: 8px; justify-items: start; max-width: 380px; }
  :where(.pb-css-council) .council-detail .council-register-link { min-height: 48px; font-size: 15px; line-height: 1.3; text-align: left; }
  :where(.pb-css-council) .council-detail .council-register-link:hover, :where(.pb-css-council) .council-detail .council-register-link:focus-visible { border-color: var(--pb-blue-hover); background: var(--pb-blue-hover); color: #fff; }
  :where(.pb-css-council) .council-detail .approved-hero .council-register-note { margin: 0; color: var(--pb-hero-text); font-size: 13px; line-height: 1.4; }
  :where(.pb-css-council) .council-detail .council-layout { margin-top: 18px; }
  :where(.pb-css-council) .council-detail .council-lead-list { background: transparent; }
  :where(.pb-css-council) .council-detail .council-lead-list .lead-list { display: grid; gap: 12px; }
  :where(.pb-css-council) .council-detail .module-head .council-head-link { align-self: center; color: var(--pb-blue); font-size: 14px; font-weight: 800; text-decoration: none; }
  :where(.pb-css-council) .council-detail .council-more { margin: 14px 0 0; }
  :where(.pb-css-council) .council-detail .council-more .approved-button { width: 100%; }
  :where(.pb-css-council) .council-detail .kpi-strip.council-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 0; }
  :where(.pb-css-council) .council-detail .council-kpis .metric-card strong { font-size: 24px; }
  :where(.pb-css-council) .council-detail .council-kpis .metric-card p { margin: 6px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.35; }
  :where(.pb-css-council) .council-detail .compact-list a { color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-council) .council-detail .compact-list a:hover { color: var(--pb-blue); text-decoration: underline; }
  :where(.pb-css-council) .council-detail .council-link-list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-council) .council-detail .council-link-list a { display: flex; align-items: center; min-height: 40px; color: var(--pb-blue); font-size: 14px; font-weight: 800; text-decoration: none; }
  :where(.pb-css-council) .council-detail .council-notes p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  :where(.pb-css-council) .council-alert { border: 1px solid #d4e2fd; border-radius: 8px; background: #fff; }
  :where(.pb-css-council) .council-alert > summary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 12px; align-items: center; min-height: 58px; padding: 14px 16px; list-style: none; cursor: pointer; }
  :where(.pb-css-council) .council-alert > summary::-webkit-details-marker { display: none; }
  :where(.pb-css-council) .council-alert-kicker { grid-column: 1; color: var(--pb-blue); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-council) .council-alert > summary strong { grid-column: 1; color: var(--pb-ink); font-size: 16px; line-height: 1.3; }
  :where(.pb-css-council) .council-alert-toggle { grid-column: 2; grid-row: 1 / span 2; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 999px; background: #eef4ff; color: var(--pb-blue); font-size: 20px; font-weight: 700; line-height: 1; }
  :where(.pb-css-council) .council-alert-toggle::before { content: "+"; }
  :where(.pb-css-council) .council-alert[open] .council-alert-toggle::before { content: "\2212"; }
  :where(.pb-css-council) .council-alert-form { display: grid; gap: 10px; padding: 0 16px 16px; color: var(--pb-ink); }
  :where(.pb-css-council) .council-alert-form p { margin: 0; }
  :where(.pb-css-council) .council-alert-copy, :where(.pb-css-council) .council-alert-note { color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-council) .council-alert-note { font-size: 13px; }
  :where(.pb-css-council) .council-alert-label { font-size: 13px; font-weight: 700; }
  :where(.pb-css-council) .council-alert-email { width: 100%; min-height: 48px; border: 1px solid #b9c6dc; border-radius: 8px; padding: 10px 12px; background: #fff; color: var(--pb-ink); font-size: 16px; }
  :where(.pb-css-council) .council-alert-email:focus { outline: 3px solid rgba(47, 111, 237, .3); border-color: var(--pb-blue); }
  :where(.pb-css-council) .council-alert-frequency { display: grid; grid-template-columns: auto 1fr 1fr; gap: 8px; align-items: center; min-width: 0; margin: 0; padding: 0; border: 0; }
  :where(.pb-css-council) .council-alert-frequency legend { float: left; margin-right: 4px; padding: 0; font-size: 13px; font-weight: 700; }
  :where(.pb-css-council) .council-alert-frequency label { display: inline-flex; gap: 6px; align-items: center; justify-content: center; min-height: 40px; padding: 0 12px; border: 1px solid #c9d3e3; border-radius: 999px; font-size: 14px; font-weight: 600; cursor: pointer; }
  :where(.pb-css-council) .council-alert-frequency label:has(input:checked) { border-color: var(--pb-blue); background: #eef4ff; color: var(--pb-blue-hover); }
  :where(.pb-css-council) .council-alert-frequency input { margin: 0; }
  :where(.pb-css-council) .council-alert-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.4; cursor: pointer; }
  :where(.pb-css-council) .council-alert-consent input { flex: 0 0 auto; width: 22px; height: 22px; margin: 0; }
  :where(.pb-css-council) .council-alert-submit { width: 100%; min-height: 50px; border: 0; font-size: 16px; cursor: pointer; }
  :where(.pb-css-council) .council-alert-submit[disabled] { opacity: .7; }
  :where(.pb-css-council) .council-alert-status:empty { display: none; }
  :where(.pb-css-council) .council-alert-status { color: #b42318; font-size: 14px; }
  @media (max-width: 960px) {
    :where(.pb-css-council) .council-detail .kpi-strip.council-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; padding-bottom: 0; }
    :where(.pb-css-council) .council-detail .council-kpis .metric-card { min-height: 0; padding: 12px 14px; }
    :where(.pb-css-council) .council-detail .council-kpis .metric-card strong { font-size: 22px; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-council) .council-detail .approved-hero .council-count-line { font-size: 16px; }
    :where(.pb-css-council) .council-detail .council-register { max-width: none; justify-items: stretch; }
    :where(.pb-css-council) .council-detail .council-register-link { width: 100%; }
    :where(.pb-css-council) .council-detail .organisation-panel { padding: 14px; }
  }

/* ---- project-leads ---- */

  /* Project Leads (R3-A). Approved-surface tokens only: docs/design-tokens.md.
     Phones: one column in DOM order (total, controls, results, then the filter
     drawer and the alert prompt). The drawer opens as a sheet over the results.
     Wide screens: filters and the alert prompt in a left column. */
  :where(.pb-css-project-leads) .project-leads .leads-hero { grid-template-columns: minmax(0, 1fr); margin-top: 14px; padding: 22px 28px; }
  :where(.pb-css-project-leads) .project-leads .leads-count { margin: 8px 0 0; color: var(--pb-hero-text); font-size: 16px; line-height: 1.45; }
  :where(.pb-css-project-leads) .project-leads .leads-count strong { color: #fff; }
  :where(.pb-css-project-leads) .project-leads .leads-count-note { display: block; margin-top: 2px; font-size: 13px; }
  :where(.pb-css-project-leads) .leads-visually-hidden { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
  :where(.pb-css-project-leads) .leads-layout { display: flex; flex-direction: column; gap: 12px; margin-top: 12px; }
  :where(.pb-css-project-leads) .leads-toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: space-between; }
  :where(.pb-css-project-leads) .project-leads .leads-filter-toggle { display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-size: 14px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-project-leads) .project-leads .leads-filter-toggle:focus-visible, :where(.pb-css-project-leads) .project-leads .leads-chip:focus-visible, :where(.pb-css-project-leads) .project-leads .leads-filters-close:focus-visible { outline: 3px solid rgba(47, 111, 237, .3); outline-offset: 2px; }
  :where(.pb-css-project-leads) .leads-filter-count { margin-left: 4px; }
  :where(.pb-css-project-leads) .leads-sort { display: flex; gap: 8px; align-items: center; margin: 0; }
  :where(.pb-css-project-leads) .leads-sort label { color: var(--pb-muted); font-size: 13px; font-weight: 800; }
  :where(.pb-css-project-leads) .project-leads .leads-sort select, :where(.pb-css-project-leads) .project-leads .leads-field select, :where(.pb-css-project-leads) .project-leads .leads-field input { width: 100%; min-height: 42px; padding: 0 10px; border: 1px solid var(--pb-line-strong); border-radius: 7px; background: #fff; color: var(--pb-ink); font-size: 16px; }
  :where(.pb-css-project-leads) .project-leads .leads-sort select { width: auto; max-width: 190px; }
  :where(.pb-css-project-leads) .project-leads .leads-nojs-apply { width: auto; }
  :where(.pb-css-project-leads) .project-leads.has-js .leads-nojs-apply { display: none; }
  :where(.pb-css-project-leads) .leads-hidden-inputs { display: none; }
  :where(.pb-css-project-leads) .leads-chips:empty { display: none; }
  :where(.pb-css-project-leads) .leads-chips ul { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-project-leads) .project-leads .leads-chip { display: inline-flex; gap: 8px; align-items: center; min-height: 34px; padding: 0 12px; border: 1px solid #d4e2fd; border-radius: 999px; background: #fff; color: var(--pb-ink); font-size: 13px; font-weight: 800; text-decoration: none; }
  :where(.pb-css-project-leads) .project-leads .leads-chip span { color: var(--pb-blue); font-size: 17px; line-height: 1; }
  :where(.pb-css-project-leads) .project-leads .leads-chip-clear { display: inline-flex; align-items: center; min-height: 34px; padding: 0 6px; color: var(--pb-blue); font-size: 13px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-project-leads) .leads-results { min-width: 0; }
  :where(.pb-css-project-leads) .project-leads-list .lead-list { display: grid; gap: 12px; }
  :where(.pb-css-project-leads) .project-leads.is-loading .leads-results { opacity: .55; transition: opacity .15s ease; }
  :where(.pb-css-project-leads) .leads-notice, :where(.pb-css-project-leads) .leads-empty { margin: 0 0 12px; padding: 14px 16px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-project-leads) .leads-empty h3 { margin: 0 0 6px; color: var(--pb-ink); font-size: 18px; }
  :where(.pb-css-project-leads) .leads-empty p { margin: 0 0 10px; }
  :where(.pb-css-project-leads) .leads-empty p:last-child { margin: 0; }
  :where(.pb-css-project-leads) .project-leads .leads-empty .approved-button { width: auto; }
  :where(.pb-css-project-leads) .leads-pager { display: grid; justify-items: center; gap: 10px; padding: 16px 0 6px; }
  :where(.pb-css-project-leads) .leads-pager p { margin: 0; color: var(--pb-muted); font-size: 14px; }
  :where(.pb-css-project-leads) .leads-pager-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center; }
  :where(.pb-css-project-leads) .leads-pager ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-project-leads) .project-leads .leads-pager ol a, :where(.pb-css-project-leads) .project-leads .leads-pager ol span { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; min-height: 42px; padding: 0 10px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-weight: 900; text-decoration: none; }
  :where(.pb-css-project-leads) .project-leads .leads-pager ol span[aria-current] { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-project-leads) .leads-pager .leads-pager-gap { align-self: center; padding: 0 4px; color: var(--pb-muted); }
  :where(.pb-css-project-leads) .project-leads .leads-pager .approved-button { width: auto; }
  :where(.pb-css-project-leads) .leads-side { display: grid; gap: 12px; min-width: 0; }
  /* Filter drawer: hidden on phones until opened (a sheet over the results). */
  :where(.pb-css-project-leads) .leads-filters { display: none; }
  :where(.pb-css-project-leads) .leads-filters:target, :where(.pb-css-project-leads) .project-leads.is-filters-open .leads-filters { position: fixed; z-index: 120; inset: 0; display: block; overflow-y: auto; padding: 16px 16px 0; background: var(--pb-page); }
  :where(.pb-css-project-leads) .leads-filters:focus { outline: none; }
  :where(.pb-css-project-leads) .leads-filter-form { display: grid; gap: 14px; max-width: 560px; margin: 0 auto; }
  :where(.pb-css-project-leads) .leads-filters-head { display: flex; gap: 12px; align-items: center; justify-content: space-between; }
  :where(.pb-css-project-leads) .leads-filters-head h2 { margin: 0; color: var(--pb-ink); font-size: 22px; line-height: 1.2; }
  :where(.pb-css-project-leads) .project-leads .leads-filters-close { display: inline-flex; align-items: center; min-height: 42px; padding: 0 14px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-size: 14px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-project-leads) .leads-field { display: grid; gap: 6px; min-width: 0; }
  :where(.pb-css-project-leads) .leads-field label, :where(.pb-css-project-leads) .leads-dates legend { color: var(--pb-ink); font-size: 14px; font-weight: 800; }
  :where(.pb-css-project-leads) .leads-dates { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px 10px; min-width: 0; margin: 0; padding: 0; border: 0; }
  :where(.pb-css-project-leads) .leads-dates legend { margin-bottom: 6px; padding: 0; }
  :where(.pb-css-project-leads) .leads-field-wide { grid-column: 1 / -1; }
  :where(.pb-css-project-leads) .leads-filters-actions { position: sticky; bottom: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px; padding: 12px 0 16px; background: var(--pb-page); }
  :where(.pb-css-project-leads) .project-leads .leads-filters-actions button, :where(.pb-css-project-leads) .project-leads .leads-filters-actions .approved-button { width: 100%; }
  :where(.pb-css-project-leads) .leads-watch { padding: 16px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-project-leads) .leads-watch h2 { margin: 0 0 6px; color: var(--pb-ink); font-size: 18px; line-height: 1.25; }
  :where(.pb-css-project-leads) .leads-watch p { margin: 0 0 12px; color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-project-leads) .leads-watch-actions { display: flex; flex-wrap: wrap; gap: 8px; }
  :where(.pb-css-project-leads) .project-leads .leads-watch-actions .approved-button { flex: 1 1 auto; }
  :where(.pb-css-project-leads) .leads-watch-links { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 12px 0 0; padding: 0; list-style: none; font-size: 14px; font-weight: 800; }
  :where(.pb-css-project-leads) .project-leads .leads-watch-links a { color: var(--pb-blue); text-decoration: none; }
  /* Cards: an open "more actions" menu is not clipped by the list. The card
     collision fixes (content-visibility, menu z-index, scale value, scope
     chips) are shared in cards-v2.css. Rows start at the top instead of stretching. */
  :where(.pb-css-project-leads) .project-leads .project-leads-list { overflow: visible; }
  :where(.pb-css-project-leads) .project-leads .pb-lead-main { align-content: start; }
  :where(.pb-css-project-leads) .project-leads .pb-lead-actions button.pb-card-action { min-height: 31px; padding: 0 7px; border-color: var(--pb-line-strong); color: #405477; font-size: 10.5px; font-weight: 600; }
  /* Cards: keep the card's own button look inside the approved page. */
  :where(.pb-css-project-leads) .project-leads .pb-lead-card .lead-note-editor-footer button { width: auto; min-height: 0; padding: 0; border: 0; background: transparent; color: var(--pb-blue); font-size: 12px; }
  :where(.pb-css-project-leads) .pb-lead-card.is-board-selected { border-color: var(--pb-blue) !important; }
  /* Board packet bar (JavaScript only). */
  :where(.pb-css-project-leads) .leads-board-bar { position: fixed; z-index: 110; right: 12px; bottom: 12px; left: 12px; display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; justify-content: space-between; max-width: 720px; margin: 0 auto; padding: 10px 12px; border-radius: 8px; background: var(--pb-navy); color: #fff; box-shadow: 0 14px 34px rgba(10, 23, 51, .28); }
  :where(.pb-css-project-leads) .leads-board-bar[hidden] { display: none; }
  :where(.pb-css-project-leads) .project-leads .leads-board-link { display: inline-flex; align-items: center; min-height: 42px; padding: 0 14px; border-radius: 7px; background: var(--pb-blue); color: #fff; font-size: 14px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-project-leads) .project-leads .leads-board-bar .leads-board-clear { width: auto; border-color: rgba(255, 255, 255, .32); background: transparent; color: #fff; }
  @media (min-width: 961px) {
    :where(.pb-css-project-leads) .leads-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); grid-template-rows: auto auto 1fr; grid-template-areas: "side toolbar" "side chips" "side results"; gap: 12px 20px; align-items: start; }
    :where(.pb-css-project-leads) .leads-toolbar { grid-area: toolbar; justify-content: flex-end; }
    :where(.pb-css-project-leads) .leads-chips { grid-area: chips; }
    :where(.pb-css-project-leads) .leads-results { grid-area: results; }
    :where(.pb-css-project-leads) .leads-side { grid-area: side; }
    /* The drawer is always open here; the toggle becomes a skip link. */
    :where(.pb-css-project-leads) .project-leads .leads-filter-toggle { position: absolute; left: -9999px; }
    :where(.pb-css-project-leads) .project-leads .leads-filter-toggle:focus { position: static; }
    :where(.pb-css-project-leads) .leads-filters, :where(.pb-css-project-leads) .leads-filters:target, :where(.pb-css-project-leads) .project-leads.is-filters-open .leads-filters { position: static; display: block; overflow: visible; padding: 16px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
    :where(.pb-css-project-leads) .project-leads .leads-filters-close { display: none; }
    :where(.pb-css-project-leads) .leads-filters-head h2 { font-size: 18px; }
    :where(.pb-css-project-leads) .leads-filters-actions { position: static; padding: 0; background: transparent; }
  }
  @media (max-width: 620px) {
    :where(.pb-css-project-leads) .project-leads .pb-lead-actions button.pb-card-action { min-height: 42px; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-project-leads) .project-leads .leads-hero { margin-top: 10px; padding: 16px 14px; }
    :where(.pb-css-project-leads) .project-leads .leads-count { font-size: 15px; }
    :where(.pb-css-project-leads) .leads-layout { margin-top: 10px; }
    :where(.pb-css-project-leads) .leads-sort label { font-size: 12px; }
  }

/* ---- town ---- */

      :where(.pb-css-town) .town-alert { background: #fff; color: #10203f; border-radius: 12px; padding: 20px; display: grid; gap: 10px; box-shadow: 0 10px 30px rgba(5, 15, 40, .25); }
      :where(.pb-css-town) .town-alert h2 { margin: 0; font-size: 22px; line-height: 1.2; color: var(--pb-navy); }
      :where(.pb-css-town) .town-alert-kicker { margin: 0; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--pb-blue); }
      :where(.pb-css-town) .town-alert-label { font-size: 13px; font-weight: 700; color: #10203f; }
      :where(.pb-css-town) .town-alert-email { width: 100%; min-height: 48px; border: 1px solid #b9c6dc; border-radius: 8px; padding: 10px 12px; font-size: 16px; color: #10203f; background: #fff; box-sizing: border-box; }
      :where(.pb-css-town) .town-alert-email:focus { outline: 3px solid rgba(47, 111, 237, .3); border-color: var(--pb-blue); }
      :where(.pb-css-town) .town-alert-frequency { border: 0; margin: 0; padding: 0; display: grid; grid-template-columns: auto 1fr 1fr; gap: 8px; align-items: center; min-width: 0; }
      :where(.pb-css-town) .town-alert-frequency legend { float: left; padding: 0; margin-right: 4px; font-size: 13px; font-weight: 700; color: #10203f; }
      :where(.pb-css-town) .town-alert .town-alert-frequency label { display: inline-flex; justify-content: center; align-items: center; gap: 6px; min-height: 40px; margin: 0; padding: 0 12px; border: 1px solid #c9d3e3; border-radius: 999px; font-size: 14px; font-weight: 600; color: #10203f; cursor: pointer; }
      :where(.pb-css-town) .town-alert-frequency input { margin: 0; }
      :where(.pb-css-town) .town-alert-frequency label:has(input:checked) { border-color: var(--pb-blue); background: #eef4ff; color: #1d4fbf; }
      :where(.pb-css-town) .town-alert-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.4; color: #2b3a55; cursor: pointer; }
      :where(.pb-css-town) .town-alert-consent input { width: 22px; height: 22px; margin: 0; flex: 0 0 auto; }
      :where(.pb-css-town) .town-alert-submit { width: 100%; min-height: 50px; font-size: 16px; border: 0; cursor: pointer; }
      :where(.pb-css-town) .town-alert-submit[disabled] { opacity: .7; }
      :where(.pb-css-town) .town-alert-status:empty { display: none; }
      :where(.pb-css-town) .town-alert-status { margin: 0; color: #b42318; font-size: 14px; }
      :where(.pb-css-town) .town-sector-chips { display: flex; gap: 8px; overflow-x: auto; margin: 14px 0 0; padding-bottom: 4px; scrollbar-width: thin; }
      :where(.pb-css-town) .town-sector-chips a { flex: 0 0 auto; display: inline-flex; gap: 6px; align-items: center; min-height: 36px; padding: 0 12px; border-radius: 999px; background: #fff; border: 1px solid #d7e0ee; color: #10203f; font-size: 13px; font-weight: 700; text-decoration: none; white-space: nowrap; }
      :where(.pb-css-town) .town-sector-chips a span { color: var(--pb-muted); font-weight: 600; }
      :where(.pb-css-town) .town-more { margin-top: 12px; }
      :where(.pb-css-town) .town-more > summary { list-style: none; cursor: pointer; display: flex; justify-content: center; align-items: center; min-height: 46px; border: 1px solid #c9d3e3; border-radius: 8px; background: #fff; color: #1d4fbf; font-weight: 700; }
      :where(.pb-css-town) .town-more > summary::-webkit-details-marker { display: none; }
      :where(.pb-css-town) .town-more[open] > summary { margin-bottom: 12px; }
      @media (max-width: 480px) {
        :where(.pb-css-town) .town-alert { padding: 16px; }
        :where(.pb-css-town) .town-alert h2 { font-size: 20px; }
      }
    
/* ---- profile-index ---- */

      :where(.pb-css-profile-index) .profile-index-list li strong a{color:var(--pb-ink);text-decoration:none}
      :where(.pb-css-profile-index) .profile-index-list li strong a:hover, :where(.pb-css-profile-index) .profile-index-list li strong a:focus-visible{color:var(--pb-blue);text-decoration:underline}
      :where(.pb-css-profile-index) .profile-index-surface .kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
      @media (max-width:640px){:where(.pb-css-profile-index) .profile-index-surface .kpi-strip{grid-template-columns:1fr}}
    
/* ---- councils-index ---- */

      :where(.pb-css-councils-index) .councils-product-page {
        max-width: var(--pb-container);
      }
      :where(.pb-css-councils-index) .council-map-module {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 300px;
        gap: 12px;
        align-items: start;
        margin-top: 12px;
      }
      :where(.pb-css-councils-index) .council-map-card {
        min-width: 0;
      }
      :where(.pb-css-councils-index) .council-map-card .lead-map {
        height: 360px;
        min-height: 360px;
      }
      :where(.pb-css-councils-index) .council-map-aside {
        display: grid;
        gap: 10px;
        align-self: start;
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        padding: 12px;
        background: #fff;
      }
      :where(.pb-css-councils-index) .council-map-aside h2 {
        margin: 0;
        color: var(--pb-ink);
        font-size: 21px;
        line-height: 1.18;
      }
      :where(.pb-css-councils-index) .council-map-aside p {
        margin: 0;
        color: var(--pb-muted);
        line-height: 1.4;
      }
      :where(.pb-css-councils-index) .council-map-actions {
        display: grid;
        gap: 8px;
      }
      :where(.pb-css-councils-index) .council-map-actions a, :where(.pb-css-councils-index) .council-map-actions button {
        display: inline-flex;
        min-height: 40px;
        align-items: center;
        justify-content: center;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        padding: 9px 12px;
        background: #eef4ff;
        color: var(--pb-ink);
        font: inherit;
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
        cursor: pointer;
      }
      :where(.pb-css-councils-index) .council-map-actions .primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-councils-index) .council-map-actions button[aria-pressed="true"] {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-councils-index) .council-map-meta {
        display: grid;
        gap: 7px;
      }
      :where(.pb-css-councils-index) .council-map-meta div {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        padding-bottom: 7px;
        border-bottom: 1px solid var(--pb-line);
      }
      :where(.pb-css-councils-index) .council-map-meta dt {
        color: var(--pb-muted);
        font-size: 11px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-councils-index) .council-map-meta dd {
        margin: 0;
        color: var(--pb-ink);
        font-weight: 900;
      }
      :where(.pb-css-councils-index) .council-signal-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
        margin-top: 14px;
      }
      :where(.pb-css-councils-index) .council-signal-card {
        display: grid;
        gap: 6px;
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        padding: 14px;
        background: #fff;
        color: var(--pb-ink);
        text-decoration: none;
      }
      :where(.pb-css-councils-index) .council-signal-card:hover {
        border-color: var(--pb-blue);
      }
      :where(.pb-css-councils-index) .council-signal-card h3 {
        margin: 0;
        color: var(--pb-ink);
        font-size: 17px;
        line-height: 1.25;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-councils-index) .council-signal-card p {
        margin: 0;
        color: var(--pb-muted);
        font-size: 13px;
        line-height: 1.4;
      }
      :where(.pb-css-councils-index) .council-summary-panel {
        margin-top: 16px;
        padding: 18px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-councils-index) .council-summary-panel h2 {
        margin: 0;
        color: var(--pb-ink);
        font-size: 24px;
        line-height: 1.18;
      }
      :where(.pb-css-councils-index) .council-table-wrap {
        width: 100%;
        max-width: 100%;
        margin-top: 14px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
      }
      :where(.pb-css-councils-index) .council-table {
        width: 100%;
        min-width: 720px;
        border-collapse: collapse;
      }
      :where(.pb-css-councils-index) .council-table th, :where(.pb-css-councils-index) .council-table td {
        border-bottom: 1px solid var(--pb-line);
        padding: 11px 10px;
        text-align: left;
        vertical-align: top;
      }
      :where(.pb-css-councils-index) .council-table th {
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .05em;
        text-transform: uppercase;
      }
      :where(.pb-css-councils-index) .council-table td {
        color: var(--pb-ink);
        font-size: 14px;
      }
      :where(.pb-css-councils-index) .councils-product-page a {
        color: var(--pb-blue);
        font-weight: 800;
      }
      :where(.pb-css-councils-index) .council-feed-links {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      :where(.pb-css-councils-index) .council-map-link {
        white-space: nowrap;
      }
      :where(.pb-css-councils-index) .council-filter-context {
        display: none;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin: 0 0 16px;
        padding: 12px 14px;
        border: 1px solid #cfe0ff;
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-councils-index) .council-filter-context.is-active {
        display: flex;
      }
      :where(.pb-css-councils-index) .council-filter-context strong {
        display: block;
        color: var(--pb-ink);
        font-size: 14px;
      }
      :where(.pb-css-councils-index) .council-filter-context p {
        margin: 4px 0 0;
        color: var(--pb-muted);
        font-size: 12px;
        line-height: 1.4;
      }
      :where(.pb-css-councils-index) .council-filter-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        justify-content: flex-end;
      }
      :where(.pb-css-councils-index) .council-filter-chip {
        display: inline-flex;
        align-items: center;
        min-height: 26px;
        border: 1px solid #cfe0ff;
        border-radius: 999px;
        padding: 5px 9px;
        background: #eaf1ff;
        color: #1746a2;
        font-size: 11px;
        font-weight: 900;
      }
      :where(.pb-css-councils-index) .council-row-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
      }
      :where(.pb-css-councils-index) .council-row-actions a {
        display: inline-flex;
        min-height: 30px;
        align-items: center;
        justify-content: center;
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        padding: 5px 9px;
        background: #eef4ff;
        font-size: 12px;
        line-height: 1.2;
        text-decoration: none;
        white-space: nowrap;
      }
      :where(.pb-css-councils-index) .councils-product-page .empty {
        color: var(--pb-muted);
      }
      @media (max-width: 980px) {
        :where(.pb-css-councils-index) .council-map-module {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-councils-index) .council-filter-context {
          align-items: flex-start;
          flex-direction: column;
        }
        :where(.pb-css-councils-index) .council-filter-chips {
          justify-content: flex-start;
        }
        :where(.pb-css-councils-index) .council-map-card .lead-map {
          height: 340px;
          min-height: 340px;
        }
      }
      @media (max-width: 760px) {
        :where(.pb-css-councils-index) .council-map-module {
          gap: 10px;
          margin-top: 12px;
        }
        :where(.pb-css-councils-index) .council-map-card .lead-map {
          height: 320px;
          min-height: 320px;
        }
        :where(.pb-css-councils-index) .council-map-aside {
          padding: 12px;
        }
        :where(.pb-css-councils-index) .council-map-actions {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-councils-index) .council-signal-grid {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-councils-index) .council-summary-panel {
          padding: 14px;
        }
        :where(.pb-css-councils-index) .council-table-wrap {
          overflow-x: visible;
        }
        :where(.pb-css-councils-index) .council-table, :where(.pb-css-councils-index) .council-table tbody, :where(.pb-css-councils-index) .council-table tr, :where(.pb-css-councils-index) .council-table td {
          display: block;
          width: 100%;
          min-width: 0;
        }
        :where(.pb-css-councils-index) .council-table {
          min-width: 0;
          border-collapse: separate;
          border-spacing: 0;
        }
        :where(.pb-css-councils-index) .council-table thead {
          display: none;
        }
        :where(.pb-css-councils-index) .council-table tr {
          margin: 0 0 10px;
          border: 1px solid var(--pb-line);
          border-radius: 8px;
          background: #fff;
          overflow: hidden;
        }
        :where(.pb-css-councils-index) .council-table td {
          padding: 10px 12px;
          border-bottom: 1px solid var(--pb-line);
          font-size: 13px;
          line-height: 1.4;
          overflow-wrap: anywhere;
        }
        :where(.pb-css-councils-index) .council-table td:last-child {
          border-bottom: 0;
        }
        :where(.pb-css-councils-index) .council-table td::before {
          display: block;
          margin-bottom: 3px;
          color: var(--pb-muted);
          font-size: 10px;
          font-weight: 900;
          letter-spacing: .06em;
          text-transform: uppercase;
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(1)::before {
          content: "Local authority";
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(2)::before {
          content: "County";
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(3)::before {
          content: "Applications";
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(4)::before {
          content: "This week";
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(5)::before {
          content: "Feed";
        }
        :where(.pb-css-councils-index) .council-table td:nth-child(6)::before {
          content: "Map";
        }
        :where(.pb-css-councils-index) .council-table td:first-child {
          background: #f8fbff;
          font-size: 15px;
          font-weight: 900;
        }
        :where(.pb-css-councils-index) .council-feed-links {
          display: flex;
          flex-wrap: wrap;
          gap: 8px;
        }
      }
    
/* ---- place ---- */

  /* Town pages (R2-A). Approved-surface tokens only: docs/design-tokens.md. */
  :where(.pb-css-place) .place-page .place-hero { grid-template-columns: minmax(0, 1fr); }
  :where(.pb-css-place) .place-page .place-hero .place-count-line { margin: 8px 0 0; color: var(--pb-hero-text); font-size: 16px; line-height: 1.45; }
  :where(.pb-css-place) .place-page .place-hero .place-count-line strong { color: #fff; }
  :where(.pb-css-place) .place-page .place-hero .place-count-note { font-size: 14px; }
  /* Phones: one column in DOM order, which is also the reading order:
     newest leads, alert form, summary, earlier leads, pages, area links. */
  :where(.pb-css-place) .place-layout { display: flex; flex-direction: column; gap: 14px; margin-top: 14px; }
  :where(.pb-css-place) .place-context { display: grid; gap: 14px; min-width: 0; }
  :where(.pb-css-place) .place-layout .organisation-panel { min-width: 0; }
  :where(.pb-css-place) .place-layout .module-head { margin-bottom: 12px; }
  :where(.pb-css-place) .town-lead-list { background: transparent; }
  :where(.pb-css-place) .town-lead-list .lead-list { display: grid; gap: 12px; }
  :where(.pb-css-place) .place-alert { border: 1px solid #d4e2fd; border-radius: 8px; background: #fff; }
  :where(.pb-css-place) .place-alert > summary { position: relative; display: grid; gap: 2px; min-height: 56px; padding: 14px 44px 14px 16px; list-style: none; cursor: pointer; }
  :where(.pb-css-place) .place-alert > summary::-webkit-details-marker { display: none; }
  :where(.pb-css-place) .place-alert > summary::after { content: ""; position: absolute; top: 50%; right: 18px; width: 9px; height: 9px; border-right: 2px solid var(--pb-blue); border-bottom: 2px solid var(--pb-blue); transform: translateY(-70%) rotate(45deg); }
  :where(.pb-css-place) .place-alert[open] > summary::after { transform: translateY(-20%) rotate(-135deg); }
  :where(.pb-css-place) .place-alert > summary:focus-visible { outline: 3px solid rgba(47, 111, 237, .3); outline-offset: 2px; border-radius: 8px; }
  :where(.pb-css-place) .place-alert-title { color: var(--pb-blue); font-size: 16px; font-weight: 900; }
  :where(.pb-css-place) .place-alert-sub { color: var(--pb-muted); font-size: 13px; line-height: 1.4; }
  :where(.pb-css-place) .place-alert-body { padding: 0 16px 16px; }
  :where(.pb-css-place) .place-alert .town-alert { padding: 0; box-shadow: none; }
  :where(.pb-css-place) .place-alert .town-alert-kicker, :where(.pb-css-place) .place-alert .town-alert h2 { display: none; }
  :where(.pb-css-place) .place-alert .town-alert-copy, :where(.pb-css-place) .place-alert .town-alert-note { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-place) .place-alert-more { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 12px 0 0; font-size: 14px; font-weight: 700; }
  :where(.pb-css-place) .place-page .place-alert-more a { color: var(--pb-blue); text-decoration: none; }
  :where(.pb-css-place) .place-page .place-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; padding: 0; overflow: visible; }
  :where(.pb-css-place) .place-page .place-kpis .metric-card { flex: none; min-height: 0; padding: 12px 14px; }
  :where(.pb-css-place) .place-page .place-kpis .metric-card strong { font-size: 20px; line-height: 1.15; }
  :where(.pb-css-place) .place-page .place-kpis .metric-card p { margin: 4px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.35; }
  :where(.pb-css-place) .place-pager { display: grid; justify-items: center; gap: 10px; padding: 6px 0; }
  :where(.pb-css-place) .place-pager p { margin: 0; color: var(--pb-muted); font-size: 14px; }
  :where(.pb-css-place) .place-pager-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: center; }
  :where(.pb-css-place) .place-pager ol { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-place) .place-page .place-pager ol a, :where(.pb-css-place) .place-page .place-pager ol span { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; min-height: 42px; padding: 0 10px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-weight: 900; text-decoration: none; }
  :where(.pb-css-place) .place-page .place-pager ol span[aria-current] { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-place) .place-pager .place-pager-gap { align-self: center; padding: 0 4px; color: var(--pb-muted); }
  :where(.pb-css-place) .place-page .place-pager .approved-button { width: auto; color: var(--pb-blue); }
  /* Wide screens: grid placement only (no reordering), so the reading order
     stays the DOM order. Left: newest leads (rows 1-3), earlier leads (row 4),
     pages (row 5). Right: alert (row 1), summary (row 2), area links (rows 3-5).
     The newest leads span the alert and summary rows, and the area links span
     the earlier-leads row, so neither column leaves a gap in the other. */
  @media (min-width: 961px) {
    :where(.pb-css-place) .place-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 14px 18px; align-items: start; }
    :where(.pb-css-place) .place-newest { grid-column: 1; grid-row: 1 / 4; }
    :where(.pb-css-place) .place-alert { grid-column: 2; grid-row: 1; }
    :where(.pb-css-place) .place-kpis { grid-column: 2; grid-row: 2; }
    :where(.pb-css-place) .place-context { grid-column: 2; grid-row: 3 / 6; }
    :where(.pb-css-place) .place-rest { grid-column: 1; grid-row: 4; }
    :where(.pb-css-place) .place-pager { grid-column: 1; grid-row: 5; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-place) .place-page .place-hero { padding: 18px 14px; }
    :where(.pb-css-place) .place-page .place-hero .approved-kicker { margin-bottom: 6px; }
    :where(.pb-css-place) .place-page .place-hero .place-count-line { font-size: 15px; }
    :where(.pb-css-place) .place-layout .organisation-panel { padding: 12px; }
  }

/* ---- county-towns ---- */

            :where(.pb-css-county-towns) .town-lead-list { background: transparent; }
            :where(.pb-css-county-towns) .town-lead-list .lead-list { display: grid; gap: 12px; }
            :where(.pb-css-county-towns) .county-hero-actions { margin-top: 16px; }
            :where(.pb-css-county-towns) .county-trust-strip { display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:14px;align-items:center;margin-top:18px;border:1px solid #cfe0ff;border-radius:8px;padding:15px;background:#f8fbff; }
            :where(.pb-css-county-towns) .county-trust-strip strong { display:block;color:var(--pb-ink);font-size:13px; }
            :where(.pb-css-county-towns) .county-trust-strip p { margin:4px 0 0;color:var(--pb-muted);font-size:12px;line-height:1.45; }
            :where(.pb-css-county-towns) .county-empty-state { display:grid;gap:10px;border:1px dashed #aab7ca;border-radius:8px;padding:22px;background:#f8fbff; }
            :where(.pb-css-county-towns) .county-empty-state h3, :where(.pb-css-county-towns) .county-empty-state p { margin:0; }
            :where(.pb-css-county-towns) .county-empty-state > p:not(.approved-kicker) { color:var(--pb-muted);line-height:1.5; }
            @media(max-width:760px){:where(.pb-css-county-towns) .county-trust-strip{grid-template-columns:1fr}:where(.pb-css-county-towns) .county-trust-strip .approved-button{width:100%}}
          
/* ---- legacy-base ---- */
/* The producer-stylesheet (/assets/styles.css) rules that app pages still matched
   when that stylesheet was dropped (crawler over the local routes, R3-F), kept at its
   old place in the cascade and rewritten on the design tokens. main is no longer
   boxed here: chrome is full-bleed and content is boxed by its page container. */
:root:where(:not(.pb-base-shell)) { color-scheme: light; }
:where(html:not(.pb-base-shell)), :where(html:not(.pb-base-shell)) * { box-sizing: border-box; }
html:where(:not(.pb-base-shell)) { scroll-behavior: smooth; }
:where(html:not(.pb-base-shell)) body { margin: 0; background: var(--pb-page); color: var(--pb-ink); font-family: var(--pb-font); line-height: 1.5; }
:where(html:not(.pb-base-shell)) .skip-link { position: fixed; left: 12px; top: 12px; z-index: 1000; transform: translateY(-150%); padding: 10px 12px; border-radius: 6px; background: var(--pb-navy); color: #fff; font-weight: 900; text-decoration: none; }
:where(html:not(.pb-base-shell)) .skip-link:focus { transform: translateY(0); }
:where(html:not(.pb-base-shell)) .button, :where(html:not(.pb-base-shell)) button, :where(html:not(.pb-base-shell)) input[type="submit"] { min-height: 44px; }
:where(html:not(.pb-base-shell)) .button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 11px 16px; border: 1px solid transparent; border-radius: 6px; font-weight: 850; line-height: 1.15; text-align: center; text-decoration: none; white-space: nowrap; }
:where(html:not(.pb-base-shell)) .hero { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(320px, 0.7fr); gap: 28px; padding: clamp(38px, 7vw, 86px) 0 30px; }
:where(html:not(.pb-base-shell)) .eyebrow, :where(html:not(.pb-base-shell)) .section-heading p { margin: 0 0 8px; color: var(--pb-blue); font-size: 12px; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
:where(html:not(.pb-base-shell)) h1, :where(html:not(.pb-base-shell)) h2, :where(html:not(.pb-base-shell)) h3, :where(html:not(.pb-base-shell)) p { margin-top: 0; }
:where(html:not(.pb-base-shell)) h1 { max-width: 760px; margin-bottom: 18px; font-size: var(--pb-h1); line-height: var(--pb-h1-line); letter-spacing: 0; }
:where(html:not(.pb-base-shell)) .forms-intro { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 24px 0 34px; padding: 18px; background: var(--pb-card); border: 1px solid var(--pb-line); border-left: 5px solid var(--pb-blue); border-radius: var(--pb-radius); box-shadow: 0 8px 18px rgba(15, 33, 71, 0.05); }
:where(html:not(.pb-base-shell)) .forms-intro strong { display: block; margin-bottom: 5px; }
:where(html:not(.pb-base-shell)) .forms-intro p { max-width: 760px; margin: 0; color: var(--pb-muted); }
:where(html:not(.pb-base-shell)) .forms-intro a { flex: 0 0 auto; padding: 10px 12px; background: var(--pb-blue); color: #fff; border-radius: 6px; font-size: 13px; font-weight: 800; text-decoration: none; }
:where(html:not(.pb-base-shell)) .privacy-note { margin: 0; color: var(--pb-muted); font-size: 12px; line-height: 1.45; }
:where(html:not(.pb-base-shell)) .calculator-form, :where(html:not(.pb-base-shell)) .calculator-result { display: grid; gap: 12px; padding: 18px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: var(--pb-card); }
:where(html:not(.pb-base-shell)) .calculator-form label { display: grid; gap: 6px; color: var(--pb-muted); font-size: 13px; font-weight: 800; }
:where(html:not(.pb-base-shell)) .calculator-form input, :where(html:not(.pb-base-shell)) .calculator-form select { width: 100%; min-width: 0; border: 1px solid var(--pb-line-strong); border-radius: 6px; padding: 11px 12px; color: var(--pb-ink); font: inherit; }
:where(html:not(.pb-base-shell)) .calculator-result { align-content: start; border-left: 5px solid var(--pb-blue); }
:where(html:not(.pb-base-shell)) .calculator-result strong { display: block; color: var(--pb-ink); font-size: clamp(34px, 5vw, 58px); line-height: 1; }
:where(html:not(.pb-base-shell)) .calculator-result span { color: var(--pb-muted); font-weight: 900; text-transform: uppercase; font-size: 12px; }
:where(html:not(.pb-base-shell)) .removal-form { display: grid; gap: 12px; max-width: 780px; }
:where(html:not(.pb-base-shell)) .removal-form label { display: grid; gap: 6px; color: var(--pb-muted); font-size: 13px; font-weight: 800; }
:where(html:not(.pb-base-shell)) .removal-form input, :where(html:not(.pb-base-shell)) .removal-form select, :where(html:not(.pb-base-shell)) .removal-form textarea { width: 100%; min-width: 0; border: 1px solid var(--pb-line-strong); border-radius: 6px; padding: 11px 12px; color: var(--pb-ink); font: inherit; font-weight: 500; }
:where(html:not(.pb-base-shell)) .removal-form button { justify-self: start; border: 0; border-radius: 7px; padding: 11px 14px; background: var(--pb-blue); color: #fff; font-weight: 900; cursor: pointer; }
:where(html:not(.pb-base-shell)) .removal-form button:hover { background: var(--pb-blue-hover); }
:where(html:not(.pb-base-shell)) .checkbox-inline { display: flex !important; grid-template-columns: auto 1fr; flex-direction: row; gap: 8px !important; min-height: 42px; align-items: center; color: var(--pb-ink) !important; }
:where(html:not(.pb-base-shell)) .checkbox-inline input { width: 18px; height: 18px; }
:where(html:not(.pb-base-shell)) .lead-map { position: relative; min-height: 720px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); overflow: hidden; background: var(--pb-page); }
:where(html:not(.pb-base-shell)) .real-leaflet-map { z-index: 1; background: var(--pb-page); }
:where(html:not(.pb-base-shell)) .signup-slice-link, :where(html:not(.pb-base-shell)) .privacy-note a { color: var(--pb-blue); font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
:where(html:not(.pb-base-shell)) select, :where(html:not(.pb-base-shell)) button { width: 100%; min-height: 42px; border: 1px solid var(--pb-line-strong); border-radius: 6px; font: inherit; }
:where(html:not(.pb-base-shell)) select { padding: 0 12px; background: #fff; color: var(--pb-ink); }
:where(html:not(.pb-base-shell)) .filter-status { min-height: 42px; padding: 8px 12px; background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 6px; color: #fff; }
:where(html:not(.pb-base-shell)) .filter-status strong, :where(html:not(.pb-base-shell)) .filter-status span { display: block; }
:where(html:not(.pb-base-shell)) .filter-status strong { font-size: 18px; line-height: 1; }
:where(html:not(.pb-base-shell)) .filter-status span { color: var(--pb-hero-text); font-size: 12px; }
:where(html:not(.pb-base-shell)) .active-filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
:where(html:not(.pb-base-shell)) .filter-chip { min-height: 44px; padding: 7px 10px; background: #fff; border: 1px solid var(--pb-line-strong); border-radius: 999px; color: var(--pb-ink); font-size: 13px; font-weight: 800; }
:where(html:not(.pb-base-shell)) [hidden] { display: none !important; }
:where(html:not(.pb-base-shell)) button { padding: 0 14px; background: var(--pb-blue); color: #fff; font-weight: 800; cursor: pointer; }
:where(html:not(.pb-base-shell)) a:focus-visible, :where(html:not(.pb-base-shell)) button:focus-visible, :where(html:not(.pb-base-shell)) input:focus-visible, :where(html:not(.pb-base-shell)) select:focus-visible, :where(html:not(.pb-base-shell)) textarea:focus-visible { outline: 3px solid #f6b73c; outline-offset: 3px; }
:where(html:not(.pb-base-shell)) a, :where(html:not(.pb-base-shell)) button, :where(html:not(.pb-base-shell)) input, :where(html:not(.pb-base-shell)) select { touch-action: manipulation; }
:where(html:not(.pb-base-shell)) button, :where(html:not(.pb-base-shell)) input, :where(html:not(.pb-base-shell)) select, :where(html:not(.pb-base-shell)) .lead-actions a, :where(html:not(.pb-base-shell)) .pagination a, :where(html:not(.pb-base-shell)) .pagination strong, :where(html:not(.pb-base-shell)) .pagination span { min-height: 44px; }
:where(html:not(.pb-base-shell)) .lead-actions a, :where(html:not(.pb-base-shell)) .pagination a, :where(html:not(.pb-base-shell)) .pagination strong, :where(html:not(.pb-base-shell)) .pagination span { display: inline-flex; align-items: center; }
:where(html:not(.pb-base-shell)) .opportunity-card { min-height: 78px; padding: 12px; background: #fff; color: var(--pb-ink); border-color: var(--pb-line); text-align: left; }
:where(html:not(.pb-base-shell)) .opportunity-card strong, :where(html:not(.pb-base-shell)) .opportunity-card span { display: block; }
:where(html:not(.pb-base-shell)) .opportunity-card strong { color: var(--pb-blue); font-size: 26px; line-height: 1; }
:where(html:not(.pb-base-shell)) .opportunity-card span { margin-top: 6px; color: var(--pb-muted); font-size: 13px; }
:where(html:not(.pb-base-shell)) .snapshot { display: grid; grid-template-columns: 1fr minmax(260px, 420px); gap: 24px; align-items: start; margin: 24px 0 38px; padding: 26px; background: var(--pb-page); border: 1px solid var(--pb-line); border-radius: var(--pb-radius); }
:where(html:not(.pb-base-shell)) .snapshot h2 { max-width: 540px; font-size: 34px; line-height: 1.1; }
:where(html:not(.pb-base-shell)) table { width: 100%; border-collapse: collapse; background: #fff; border-radius: 6px; overflow: hidden; }
:where(html:not(.pb-base-shell)) th, :where(html:not(.pb-base-shell)) td { padding: 9px 12px; border-bottom: 1px solid var(--pb-line); text-align: left; }
:where(html:not(.pb-base-shell)) th { color: var(--pb-muted); font-size: 12px; text-transform: uppercase; }
:where(html:not(.pb-base-shell)) .section-count { flex: 0 0 auto; padding: 7px 10px; background: #eef4ff; color: var(--pb-blue); border: 1px solid #d4e2fd; border-radius: 999px; font-size: 13px; font-weight: 800; }
:where(html:not(.pb-base-shell)) .lead-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
:where(html:not(.pb-base-shell)) .lead-card { display: flex; flex-direction: column; gap: 12px; padding: 18px; background: var(--pb-card); border: 1px solid var(--pb-line); border-left: 5px solid var(--pb-blue); border-radius: var(--pb-radius); box-shadow: 0 8px 18px rgba(15, 33, 71, 0.05); content-visibility: auto; contain-intrinsic-size: 320px; }
:where(html:not(.pb-base-shell)) .lead-card[hidden] { display: none; }
:where(html:not(.pb-base-shell)) .lead-card h3 { margin: 0; font-size: 19px; line-height: 1.18; }
:where(html:not(.pb-base-shell)) .lead-card h3 a { color: inherit; text-decoration: none; }
:where(html:not(.pb-base-shell)) .lead-card h3 a:hover { color: var(--pb-blue); text-decoration: underline; }
:where(html:not(.pb-base-shell)) .lead-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; }
:where(html:not(.pb-base-shell)) .lead-grid div { padding: 10px; background: #f8fbff; border-radius: 6px; }
:where(html:not(.pb-base-shell)) .lead-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
:where(html:not(.pb-base-shell)) .lead-card-grid .lead-key-field { background: #f8fbff; border: 1px solid var(--pb-line); }
:where(html:not(.pb-base-shell)) .lead-card-grid .lead-support-field { background: #fff; border: 1px solid var(--pb-line); }
:where(html:not(.pb-base-shell)) .lead-useful-tags { display: flex; flex-wrap: wrap; gap: 5px; }
:where(html:not(.pb-base-shell)) .lead-useful-tags span { display: inline-flex; padding: 3px 7px; background: #eef4ff; border: 1px solid #d4e2fd; border-radius: 999px; color: var(--pb-blue); font-size: 12px; font-weight: 800; }
:where(html:not(.pb-base-shell)) dt { color: var(--pb-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
:where(html:not(.pb-base-shell)) dd { margin: 2px 0 0; font-weight: 700; }
:where(html:not(.pb-base-shell)) .chip-row, :where(html:not(.pb-base-shell)) .trade-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
:where(html:not(.pb-base-shell)) .chip-row span, :where(html:not(.pb-base-shell)) .trade-row span { padding: 4px 8px; background: #eef4ff; border: 1px solid #d4e2fd; border-radius: 999px; color: var(--pb-blue); font-size: 12px; font-weight: 700; }
:where(html:not(.pb-base-shell)) .lead-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: auto; }
:where(html:not(.pb-base-shell)) .lead-actions a, :where(html:not(.pb-base-shell)) .lead-actions span { padding: 7px 10px; background: var(--pb-navy); color: #fff; border-radius: 6px; font-size: 13px; font-weight: 800; text-decoration: none; }
:where(html:not(.pb-base-shell)) .lead-actions button, :where(html:not(.pb-base-shell)) .shortlist-button { padding: 7px 10px; border: 1px solid var(--pb-line); border-radius: 6px; background: #fff; color: var(--pb-ink); font-size: 13px; font-weight: 800; cursor: pointer; }
:where(html:not(.pb-base-shell)) .lead-card .lead-actions { gap: 6px; padding-top: 4px; }
:where(html:not(.pb-base-shell)) .lead-card .lead-actions .card-primary-action { background: var(--pb-blue); color: #fff; }
:where(html:not(.pb-base-shell)) .lead-card .lead-actions .card-secondary-action { background: #fff; color: var(--pb-ink); border: 1px solid var(--pb-line); }
:where(html:not(.pb-base-shell)) .lead-card .lead-actions .card-secondary-action:hover, :where(html:not(.pb-base-shell)) .lead-card .lead-actions .card-secondary-action:focus-visible { border-color: var(--pb-blue); color: var(--pb-blue); }
:where(html:not(.pb-base-shell)) .coming-soon, :where(html:not(.pb-base-shell)) .empty { padding: 24px; background: #f8fbff; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); }
:where(html:not(.pb-base-shell)) .status-message { margin-top: 14px; padding: 12px 14px; background: #f8fbff; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); }
:where(html:not(.pb-base-shell)) .status-message[data-tone="success"] { background: #e9f7ef; border-color: #9bd1b1; }
:where(html:not(.pb-base-shell)) .status-message[data-tone="error"] { background: #fff0ed; border-color: #efaa9c; }
:where(html:not(.pb-base-shell)) .status-message[data-tone="working"] { background: #eef5ff; border-color: #aac5ee; }
:where(html:not(.pb-base-shell)) .hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
@media (max-width: 880px) {
  :where(html:not(.pb-base-shell)) .hero, :where(html:not(.pb-base-shell)) .snapshot, :where(html:not(.pb-base-shell)) .lead-list, :where(html:not(.pb-base-shell)) .lead-detail-layout, :where(html:not(.pb-base-shell)) .calculator-panel, :where(html:not(.pb-base-shell)) .hot-link-list, :where(html:not(.pb-base-shell)) .job-list, :where(html:not(.pb-base-shell)) .signal-list, :where(html:not(.pb-base-shell)) .map-layout, :where(html:not(.pb-base-shell)) .hub-grid, :where(html:not(.pb-base-shell)) .resource-hubs, :where(html:not(.pb-base-shell)) .resource-grid, :where(html:not(.pb-base-shell)) .forms-grid, :where(html:not(.pb-base-shell)) .filters, :where(html:not(.pb-base-shell)) .province-grid, :where(html:not(.pb-base-shell)) .hs-hero, :where(html:not(.pb-base-shell)) .hs-quick-grid, :where(html:not(.pb-base-shell)) .hs-role-grid, :where(html:not(.pb-base-shell)) .hs-form-grid, :where(html:not(.pb-base-shell)) .hs-template-grid, :where(html:not(.pb-base-shell)) .hs-training-grid, :where(html:not(.pb-base-shell)) .hs-health-grid, :where(html:not(.pb-base-shell)) .hs-risk-grid, :where(html:not(.pb-base-shell)) .opportunity-grid > div { grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .forms-intro { align-items: flex-start; flex-direction: column; }
  :where(html:not(.pb-base-shell)) .lead-grid, :where(html:not(.pb-base-shell)) .profile-detail-grid, :where(html:not(.pb-base-shell)) .stat-grid { grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .lead-map { min-height: 520px; }
}
@media (max-width: 560px) {
  :where(html:not(.pb-base-shell)) h1 { font-size: var(--pb-h1-sm); }
}
@media (max-width: 420px) {
  :where(html:not(.pb-base-shell)) body { overflow-x: hidden; }
  :where(html:not(.pb-base-shell)) .project-lead-filter-bar, :where(html:not(.pb-base-shell)) .filter-summary-panel, :where(html:not(.pb-base-shell)) .lead-card { padding-left: 10px; padding-right: 10px; }
}
@media print {
  :where(html:not(.pb-base-shell)) .site-header, :where(html:not(.pb-base-shell)) .filters, :where(html:not(.pb-base-shell)) .lead-actions, :where(html:not(.pb-base-shell)) script { display: none !important; }
  :where(html:not(.pb-base-shell)) body { background: #fff; }
  :where(html:not(.pb-base-shell)) .hero, :where(html:not(.pb-base-shell)) .snapshot, :where(html:not(.pb-base-shell)) .lead-list { grid-template-columns: 1fr; }
  :where(html:not(.pb-base-shell)) .lead-card { box-shadow: none; break-inside: avoid; }
}

/* ---- cards-v1 ---- */

      :where(.pb-css-cards-v1) .lead-card--triage { display: grid; grid-template-columns: minmax(min(96px, 32%), 120px) minmax(0, 1fr); gap: 0; width: 100%; max-width: 100%; min-width: 0; padding: 0; overflow: hidden; border-left: 0; box-sizing: border-box; }
      :where(.pb-css-cards-v1) .lead-card--triage *, :where(.pb-css-cards-v1) .lead-card--triage *::before, :where(.pb-css-cards-v1) .lead-card--triage *::after { box-sizing: border-box; }
      :where(.pb-css-cards-v1) .lead-card--triage .lead-card-main { display: grid; gap: 12px; width: 100%; max-width: 100%; min-width: 0; padding: 16px; overflow: hidden; }
      :where(.pb-css-cards-v1) .lead-card--triage .lead-intent-rail, :where(.pb-css-cards-v1) .lead-card--triage .lead-intent-rail strong, :where(.pb-css-cards-v1) .lead-card--triage .lead-intent-rail span, :where(.pb-css-cards-v1) .lead-card--triage .lead-card-main > *, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-card-header, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-card-header h3, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-card-header a, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-location, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-context, :where(.pb-css-cards-v1) .lead-card--triage .lead-why, :where(.pb-css-cards-v1) .lead-card--triage .lead-why p, :where(.pb-css-cards-v1) .lead-card--triage .lead-evidence-strip, :where(.pb-css-cards-v1) .lead-card--triage .lead-evidence-pill, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-scan-grid, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-scan-grid > *, :where(.pb-css-cards-v1) .lead-card--triage .lead-key-field, :where(.pb-css-cards-v1) .lead-card--triage .lead-support-field, :where(.pb-css-cards-v1) .lead-card--triage .lead-key-field dt, :where(.pb-css-cards-v1) .lead-card--triage .lead-key-field dd, :where(.pb-css-cards-v1) .lead-card--triage .lead-support-field dt, :where(.pb-css-cards-v1) .lead-card--triage .lead-support-field dd, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-panel, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-panel summary, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-grid, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-grid dt, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-grid dd, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-note, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-links, :where(.pb-css-cards-v1) .lead-card--triage .chip-row, :where(.pb-css-cards-v1) .lead-card--triage .lead-card-source {
        min-width: 0;
        max-width: 100%;
        white-space: normal;
        overflow-wrap: break-word;
        word-break: normal;
      }
      :where(.pb-css-cards-v1) .lead-card--triage .opportunity-stage-pill, :where(.pb-css-cards-v1) .lead-card--triage .lead-key-field dt, :where(.pb-css-cards-v1) .lead-card--triage .lead-support-field dt, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-grid dt, :where(.pb-css-cards-v1) .lead-card--triage .lead-evidence-pill strong {
        overflow-wrap: normal;
        word-break: normal;
      }
      :where(.pb-css-cards-v1) .lead-card--triage .opportunity-scan-grid, :where(.pb-css-cards-v1) .lead-card--triage .record-intelligence-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
      }
      :where(.pb-css-cards-v1) .lead-card--triage .lead-actions, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        min-width: 0;
        max-width: 100%;
      }
      :where(.pb-css-cards-v1) .lead-card--triage .lead-actions a, :where(.pb-css-cards-v1) .lead-card--triage .lead-actions button, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-actions a, :where(.pb-css-cards-v1) .lead-card--triage .opportunity-actions button {
        flex: 0 1 auto;
        min-width: max-content;
        max-width: 100%;
        white-space: nowrap;
        overflow-wrap: normal;
        word-break: normal;
      }
      :where(.pb-css-cards-v1) .lead-list-template { background: var(--pb-page); overflow-x: hidden; }
      :where(.pb-css-cards-v1) .lead-list-template .hero {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(360px, .6fr);
        gap: 32px;
        align-items: stretch;
        padding: 48px max(24px, calc((100vw - var(--pb-container)) / 2 + 32px));
        background: linear-gradient(120deg, var(--pb-navy) 0%, var(--pb-hero-end) 100%);
        color: #fff;
        position: relative;
        min-width: 0;
        max-width: 100%;
        overflow: hidden;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero::before { display: none; }
      :where(.pb-css-cards-v1) .lead-list-template .page-hero {
        max-width: none;
        margin: 0;
        padding: 48px max(24px, calc((100vw - var(--pb-container)) / 2 + 32px));
        background: linear-gradient(120deg, var(--pb-navy) 0%, var(--pb-hero-end) 100%);
        color: #fff;
      }
      :where(.pb-css-cards-v1) .lead-list-template .page-hero h1 { max-width: 680px; color: #fff; }
      :where(.pb-css-cards-v1) .lead-list-template .page-hero p { max-width: 620px; color: rgba(255,255,255,.78); }
      :where(.pb-css-cards-v1) .lead-list-template .page-hero .eyebrow { color: var(--pb-kicker); }
      :where(.pb-css-cards-v1) .lead-list-template .hero-copy, :where(.pb-css-cards-v1) .lead-list-template .hero-panel {
        position: relative;
        z-index: 2;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-copy {
        max-width: 680px;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero h1 {
        max-width: 650px;
        font-size: 42px;
        letter-spacing: 0;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-intro {
        max-width: 560px;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-panel {
        display: grid;
        gap: 18px;
        padding: 22px;
        border: 1px solid rgba(255,255,255,.14);
        border-radius: 8px;
        background: rgba(255,255,255,.08);
      }
      :where(.pb-css-cards-v1) .lead-list-template .stat-big strong, :where(.pb-css-cards-v1) .lead-list-template .stat-grid strong {
        display: block;
        color: #fff;
      }
      :where(.pb-css-cards-v1) .lead-list-template .stat-big strong {
        font-size: 34px;
        line-height: 1;
      }
      :where(.pb-css-cards-v1) .lead-list-template .stat-big span, :where(.pb-css-cards-v1) .lead-list-template .stat-grid span {
        display: block;
        color: rgba(255,255,255,.7);
        font-size: 11px;
        line-height: 1.25;
        overflow-wrap: normal;
      }
      :where(.pb-css-cards-v1) .lead-list-template .stat-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 10px;
      }
      :where(.pb-css-cards-v1) .lead-list-template .stat-grid > div {
        min-width: 0;
        padding: 12px;
        border-radius: 8px;
        background: rgba(255,255,255,.08);
      }
      :where(.pb-css-cards-v1) .lead-list-template .filters, :where(.pb-css-cards-v1) .lead-list-template .filter-summary-panel, :where(.pb-css-cards-v1) .lead-list-template .forms-intro, :where(.pb-css-cards-v1) .lead-list-template .report-section {
        margin-left: auto;
        margin-right: auto;
        max-width: var(--pb-container);
      }
      :where(.pb-css-cards-v1) .lead-list-template .lead-list {
        display: grid;
        gap: 16px;
        grid-template-columns: minmax(0, 1fr) !important;
        align-items: start;
      }
      :where(.pb-css-cards-v1) .lead-list-template #project-leads-results { grid-template-columns: minmax(0, 1fr) !important; width: 100%; max-width: 100%; }
      :where(.pb-css-cards-v1) .lead-list-template .lead-list > * { min-width: 0; }
      :where(.pb-css-cards-v1) .lead-intent-rail { display: grid; align-content: start; gap: 9px; padding: 16px 12px; background: #eef4ff; border-right: 1px solid #d4e2fd; color: var(--pb-ink); }
      :where(.pb-css-cards-v1) .lead-intent-rail strong { font-size: 14px; line-height: 1.2; overflow-wrap: break-word; }
      :where(.pb-css-cards-v1) .lead-intent-rail > span:last-child { color: var(--pb-muted); font-size: 12px; font-weight: 800; }
      :where(.pb-css-cards-v1) .opportunity-card-header { display: grid; gap: 6px; min-width: 0; }
      :where(.pb-css-cards-v1) .opportunity-location { color: var(--pb-blue); font-size: 13px; font-weight: 900; letter-spacing: .02em; text-transform: uppercase; }
      :where(.pb-css-cards-v1) .opportunity-stage-pill { display: inline-flex; width: fit-content; padding: 5px 9px; border: 1px solid #d4e2fd; border-radius: 999px; background: #eef4ff; color: #1d4fb8; font-size: 12px; font-weight: 900; }
      :where(.pb-css-cards-v1) .opportunity-card[data-stage*="commencement"] .opportunity-stage-pill, :where(.pb-css-cards-v1) .opportunity-card[data-stage*="granted"] .opportunity-stage-pill, :where(.pb-css-cards-v1) .opportunity-card[data-stage*="grant"] .opportunity-stage-pill { border-color: #c4ebd2; background: #ecfaf1; color: #0b6b3a; }
      :where(.pb-css-cards-v1) .opportunity-card[data-stage*="tender"] .opportunity-stage-pill { border-color: #e0d4fb; background: #f5f0ff; color: #7c3aed; }
      :where(.pb-css-cards-v1) .opportunity-card[data-stage*="further-information"] .opportunity-stage-pill { border-color: #f2d6ae; background: #fff7ed; color: #7a4610; }
      :where(.pb-css-cards-v1) .opportunity-card[data-stage*="appeal"] .opportunity-stage-pill { border-color: #f2cf9b; background: #fff4e5; color: #8a4b0f; }
      :where(.pb-css-cards-v1) .opportunity-context { margin: 0; color: var(--pb-muted); font-size: 13px; }
      :where(.pb-css-cards-v1) .lead-why { padding: 12px 14px; background: #f8fbff; border: 1px solid var(--pb-line); border-radius: 8px; }
      :where(.pb-css-cards-v1) .lead-why strong { display: block; margin-bottom: 5px; color: var(--pb-blue); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; }
      :where(.pb-css-cards-v1) .lead-why p { margin: 0; color: var(--pb-ink); font-size: 14px; line-height: 1.45; }
      :where(.pb-css-cards-v1) .lead-evidence-strip {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        align-items: center;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .lead-evidence-pill {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        min-height: 30px;
        max-width: 100%;
        padding: 6px 9px;
        border: 1px solid #dbe5f4;
        border-radius: 999px;
        background: #fff;
        color: #425372;
        font-size: 12px;
        font-weight: 850;
        line-height: 1.25;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .lead-evidence-pill strong {
        color: var(--pb-ink);
        font-size: 11px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .lead-evidence-pill.is-linked {
        border-color: #c4ebd2;
        background: #ecfaf1;
        color: #16703b;
      }
      :where(.pb-css-cards-v1) .lead-evidence-pill.is-missing {
        border-color: #f2d6ae;
        background: #fff7ed;
        color: #8a4f13;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel {
        grid-column: 1 / -1;
        min-width: 0;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #fbfdff;
        overflow: hidden;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel summary {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
        align-items: center;
        min-height: 44px;
        padding: 11px 13px;
        cursor: pointer;
        list-style: none;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel summary::-webkit-details-marker { display: none; }
      :where(.pb-css-cards-v1) .record-intelligence-panel summary span {
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel summary strong {
        color: var(--pb-ink);
        font-size: 13px;
        line-height: 1.35;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel summary::after {
        content: "Open";
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
      }
      :where(.pb-css-cards-v1) .record-intelligence-panel[open] summary { border-bottom: 1px solid #dbe5f4; }
      :where(.pb-css-cards-v1) .record-intelligence-panel[open] summary::after { content: "Close"; }
      :where(.pb-css-cards-v1) .record-intelligence-body {
        display: grid;
        gap: 12px;
        padding: 12px 13px 13px;
      }
      :where(.pb-css-cards-v1) .record-intelligence-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
        gap: 8px;
        margin: 0;
      }
      :where(.pb-css-cards-v1) .record-intelligence-grid div {
        display: grid;
        gap: 4px;
        min-width: 0;
        padding: 10px;
        border: 1px solid #edf2fa;
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-cards-v1) .record-intelligence-grid dt {
        color: var(--pb-muted);
        font-size: 11px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .record-intelligence-grid dd {
        margin: 0;
        color: var(--pb-ink);
        font-size: 13px;
        line-height: 1.35;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .record-intelligence-note {
        display: grid;
        gap: 5px;
        margin: 0;
        padding: 10px 11px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #f8fbff;
        color: #425372;
        font-size: 13px;
        line-height: 1.4;
      }
      :where(.pb-css-cards-v1) .record-intelligence-note strong {
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .record-intelligence-links {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      :where(.pb-css-cards-v1) .record-intelligence-links a, :where(.pb-css-cards-v1) .record-intelligence-links span {
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        padding: 6px 9px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        text-decoration: none;
      }
      :where(.pb-css-cards-v1) .record-intelligence-links span {
        color: var(--pb-muted);
        background: #f8fafc;
      }
      :where(.pb-css-cards-v1) .opportunity-scan-grid { grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr)); min-width: 0; }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-key-field { min-height: 74px; min-width: 0; }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-2 { grid-column: span 2; }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-4 { grid-column: span 2; }
      :where(.pb-css-cards-v1) .opportunity-card dd { overflow-wrap: break-word; }
      :where(.pb-css-cards-v1) .opportunity-actions { align-items: center; border-top: 1px solid var(--pb-line); padding-top: 10px; }
      :where(.pb-css-cards-v1) .opportunity-actions .shortlist-button { margin-left: auto; min-width: 132px; }
      :where(.pb-css-cards-v1) .lead-triage-button.is-active {
        border-color: var(--pb-blue);
        background: #eef4ff;
        color: var(--pb-ink);
      }
      :where(.pb-css-cards-v1) .lead-triage-button[data-lead-triage-action="follow-up"].is-active {
        border-color: #f2d6ae;
        background: #fff7ed;
        color: #8a4f13;
      }
      :where(.pb-css-cards-v1) .lead-note-toggle.is-active {
        border-color: #c7d2fe;
        background: #eef2ff;
        color: #27346a;
      }
      :where(.pb-css-cards-v1) .lead-note-preview {
        margin: 0;
        padding: 9px 11px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #f8fbff;
        color: #334155;
        font-size: 12px;
        font-weight: 800;
        line-height: 1.45;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .lead-note-preview[hidden] {
        display: none;
      }
      :where(.pb-css-cards-v1) .lead-note-editor {
        display: grid;
        gap: 8px;
        min-width: 0;
        padding: 10px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-cards-v1) .lead-note-editor[hidden] {
        display: none;
      }
      :where(.pb-css-cards-v1) .lead-note-editor label {
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .lead-note-editor textarea {
        width: 100%;
        min-height: 76px;
        min-width: 0;
        resize: vertical;
        padding: 9px 10px;
        border: 1px solid #cbd8ea;
        border-radius: 8px;
        color: var(--pb-ink);
        background: #f8fafc;
        font: inherit;
        font-size: 13px;
        line-height: 1.45;
      }
      :where(.pb-css-cards-v1) .lead-note-editor-footer {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        align-items: center;
        justify-content: space-between;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .lead-note-editor-footer span {
        flex: 1 1 180px;
        min-width: 0;
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 800;
        line-height: 1.35;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .lead-note-editor-footer button {
        min-height: 30px;
        padding: 6px 9px;
        border: 1px solid #cbd8ea;
        border-radius: 8px;
        background: #fff;
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        cursor: pointer;
      }
      :where(.pb-css-cards-v1) .lead-board-select-control {
        justify-self: start;
        display: inline-flex;
        align-items: center;
        gap: 7px;
        width: fit-content;
        max-width: 100%;
        min-height: 30px;
        padding: 6px 9px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        line-height: 1.2;
        cursor: pointer;
      }
      :where(.pb-css-cards-v1) .lead-board-select-control input {
        width: 15px;
        height: 15px;
        margin: 0;
        accent-color: var(--pb-blue);
        flex: none;
      }
      :where(.pb-css-cards-v1) .lead-board-select-control span {
        min-width: 0;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .lead-card--triage.is-board-selected .lead-card-main {
        box-shadow: inset 0 0 0 2px var(--pb-blue);
      }
      :where(.pb-css-cards-v1) .lead-triage-summary {
        display: grid;
        gap: 8px;
        min-width: 0;
        margin-top: 10px;
        padding: 10px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-cards-v1) .lead-new-since-badge {
        justify-self: start;
        width: max-content;
        max-width: 100%;
        padding: 3px 7px;
        border: 1px solid #bfd1ee;
        border-radius: 999px;
        background: #f3f7ff;
        color: #244875;
        font-size: 11px;
        font-weight: 900;
        line-height: 1.2;
        text-transform: uppercase;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar {
        display: flex;
        flex-wrap: wrap;
        gap: 6px;
        align-items: center;
        min-width: 0;
        padding: 9px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        background: #eef4ff;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar[hidden] {
        display: none;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar strong {
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        line-height: 1.25;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 30px;
        border: 1px solid #bfd1ee;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-blue);
        padding: 6px 9px;
        font: inherit;
        font-size: 12px;
        font-weight: 900;
        line-height: 1.2;
        cursor: pointer;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar button[aria-pressed="true"] {
        border-color: var(--pb-blue);
        background: #dbeafe;
        color: var(--pb-ink);
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar button:disabled {
        cursor: not-allowed;
        opacity: .55;
      }
      :where(.pb-css-cards-v1) .lead-board-selection-toolbar span {
        flex: 1 1 190px;
        min-width: 0;
        color: #425372;
        font-size: 12px;
        font-weight: 800;
        line-height: 1.35;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .lead-board-packet-preview[hidden] {
        display: none;
      }
      :where(.pb-css-cards-v1) .lead-board-packet-preview {
        position: fixed;
        inset: 0;
        z-index: 80;
        display: grid;
        place-items: center;
        padding: 18px;
        background: rgba(7, 17, 31, .48);
      }
      :where(.pb-css-cards-v1) .lead-list-template .lead-card-source { grid-column: 1 / -1; min-width: 0; max-width: 100%; overflow-wrap: break-word; }
      :where(.pb-css-cards-v1) .lead-list-template .pagination button, :where(.pb-css-cards-v1) .lead-list-template .project-filter-pagination button {
        min-height: 36px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-blue);
        padding: 7px 10px;
        font: inherit;
        font-size: 13px;
        font-weight: 900;
        cursor: pointer;
      }
      :where(.pb-css-cards-v1) .lead-list-template .is-loading { opacity: .62; }
      :where(.pb-css-cards-v1) .filters.project-lead-filter-bar { grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(148px, 1fr)) minmax(130px, auto) minmax(130px, auto) minmax(132px, auto) minmax(150px, auto); }
      :where(.pb-css-cards-v1) .filters.project-lead-filter-bar > * { min-width: 0; }
      :where(.pb-css-cards-v1) .filters.project-lead-filter-bar .filter-search { grid-column: span 2; }
      :where(.pb-css-cards-v1) .template-a-workspace {
        display: grid;
        grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
        gap: 18px;
        width: 100%;
        max-width: var(--pb-container);
        margin: 18px auto 0;
        padding: 0 0 36px;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .market-summary-panel {
        display: grid;
        gap: 12px;
        min-width: 0;
        padding: 14px 16px;
        border: 1px solid #d8e3f3;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 8px 24px rgba(10,23,51,.05);
      }
      :where(.pb-css-cards-v1) .saved-filter-presets {
        display: grid;
        gap: 7px;
        min-width: 0;
        padding: 9px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fbfdff;
      }
      :where(.pb-css-cards-v1) .filter-chip[data-remove-filter] {
        gap: 7px;
        font: inherit;
        text-align: left;
        cursor: pointer;
      }
      @keyframes lead-filter-spin { to { transform: rotate(360deg); } }
      @keyframes lead-count-shimmer { to { background-position: -220% 0; } }
      @media (max-width: 980px) {
        :where(.pb-css-cards-v1) .lead-list-template .hero { grid-template-columns: 1fr; }
        :where(.pb-css-cards-v1) .lead-list-template .stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        :where(.pb-css-cards-v1) .filters.project-lead-filter-bar .filter-search { grid-column: span 1; }
        :where(.pb-css-cards-v1) .filters.project-lead-filter-bar { grid-template-columns: repeat(auto-fit, minmax(148px, 1fr)); }
        :where(.pb-css-cards-v1) .template-a-workspace { grid-template-columns: 1fr; max-width: calc(100% - 48px); margin-left: auto; margin-right: auto; }
      }
      @media (max-width: 860px) {
        :where(.pb-css-cards-v1) .lead-list-template .hero { padding: 40px 24px; }
        :where(.pb-css-cards-v1) .lead-card--triage { grid-template-columns: 1fr; }
        :where(.pb-css-cards-v1) .lead-intent-rail { display: flex; flex-wrap: wrap; align-items: center; border-right: 0; border-bottom: 1px solid #d4e2fd; }
        :where(.pb-css-cards-v1) .lead-intent-rail strong { margin-left: auto; }
        :where(.pb-css-cards-v1) .opportunity-actions .shortlist-button { margin-left: 0; width: 100%; }
      }
      @media (max-width: 520px) {
        :where(.pb-css-cards-v1) .lead-list-template .hero h1 { font-size: 34px; }
        :where(.pb-css-cards-v1) .lead-list-template .hero-panel { padding: 16px; }
        :where(.pb-css-cards-v1) .lead-list-template .stat-grid { grid-template-columns: 1fr; }
        :where(.pb-css-cards-v1) .template-a-workspace { max-width: calc(100% - 28px); }
        :where(.pb-css-cards-v1) .opportunity-scan-grid { grid-template-columns: 1fr; }
        :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-2, :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-3, :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-4 { grid-column: span 1; }
        :where(.pb-css-cards-v1) .opportunity-actions a, :where(.pb-css-cards-v1) .opportunity-actions button { width: 100%; text-align: center; }
        :where(.pb-css-cards-v1) .lead-board-packet-preview {
          align-items: end;
          padding: 0;
        }
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: end;
        gap: 24px;
        max-width: var(--pb-container);
        margin: 0 auto;
        padding: 26px 32px 18px;
        background: transparent;
        color: var(--pb-ink);
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero h1 {
        max-width: 820px;
        margin-bottom: 10px;
        color: var(--pb-ink);
        font-size: clamp(30px, 4vw, 42px);
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-intro {
        max-width: 780px;
        color: #425372;
        font-size: 15px;
        line-height: 1.55;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero .eyebrow {
        color: var(--pb-blue);
        letter-spacing: .08em;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-panel {
        align-self: end;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 8px;
        padding: 0;
        border: 0;
        background: transparent;
      }
      :where(.pb-css-cards-v1) .template-a-command-bar {
        position: sticky;
        top: 0;
        z-index: 20;
        display: grid;
        grid-template-columns: minmax(260px, 1fr) auto auto;
        gap: 10px;
        align-items: center;
        max-width: var(--pb-container);
        margin: 0 auto 14px;
        padding: 10px;
        border: 1px solid #e0e7f2;
        border-radius: 8px;
        background: rgba(243,246,252,.96);
        box-shadow: 0 8px 24px rgba(10,23,51,.06);
        backdrop-filter: blur(12px);
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 14px;
        align-items: start;
        max-width: var(--pb-container);
        margin: 0 auto 14px;
        padding: 14px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 10px 28px rgba(10,23,51,.06);
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-copy {
        display: grid;
        gap: 7px;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-copy p, :where(.pb-css-cards-v1) .opportunity-workspace-copy h2 {
        margin: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-copy .eyebrow {
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-copy h2 {
        color: var(--pb-ink);
        font-size: 21px;
        line-height: 1.2;
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-summary {
        color: #425372;
        font-size: 14px;
        line-height: 1.45;
      }
      :where(.pb-css-cards-v1) .project-query-diagnostics {
        display: grid;
        gap: 12px;
        max-width: var(--pb-container);
        margin: 0 auto 14px;
        padding: 14px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 10px 28px rgba(10,23,51,.05);
      }
      :where(.pb-css-cards-v1) .project-query-diagnostics-head p, :where(.pb-css-cards-v1) .project-query-diagnostics-head h2, :where(.pb-css-cards-v1) .project-query-diagnostics .privacy-note {
        margin: 0;
      }
      :where(.pb-css-cards-v1) .workspace-query-chips, :where(.pb-css-cards-v1) .active-filter-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .workspace-query-chip, :where(.pb-css-cards-v1) .filter-chip {
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        max-width: 100%;
        padding: 5px 9px;
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        background: #eef4ff;
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-cards-v1) .workspace-query-chip.is-muted, :where(.pb-css-cards-v1) .filter-chip.is-muted {
        border-style: dashed;
        background: #fbfdff;
        color: var(--pb-muted);
      }
      :where(.pb-css-cards-v1) .opportunity-workspace-actions {
        display: grid;
        gap: 10px;
        justify-items: end;
        min-width: 260px;
      }
      :where(.pb-css-cards-v1) .opportunity-route-switch {
        display: inline-grid;
        grid-template-columns: repeat(3, minmax(78px, 1fr));
        min-height: 40px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        overflow: hidden;
        background: #fff;
      }
      :where(.pb-css-cards-v1) .opportunity-route-switch a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px;
        color: var(--pb-blue);
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
        white-space: nowrap;
      }
      :where(.pb-css-cards-v1) .opportunity-route-switch a + a {
        border-left: 1px solid #d4e2fd;
      }
      :where(.pb-css-cards-v1) .opportunity-route-switch a[aria-current="page"] {
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-cards-v1) .opportunity-primary-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 8px;
      }
      :where(.pb-css-cards-v1) .opportunity-primary-actions a {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 12px;
        border: 1px solid #cfd9ea;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-ink);
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
      }
      :where(.pb-css-cards-v1) .opportunity-primary-actions a.primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-cards-v1) .template-a-workspace {
        grid-template-columns: minmax(280px, 320px) minmax(0, 1fr);
        gap: 18px;
        margin-top: 14px;
      }
      :where(.pb-css-cards-v1) .market-summary-panel {
        padding: 12px 14px;
      }
      :where(.pb-css-cards-v1) .filter-summary-panel {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 12px;
        padding: 12px 14px;
      }
      :where(.pb-css-cards-v1) .lead-card--triage {
        grid-template-columns: minmax(min(108px, 34%), 124px) minmax(0, 1fr);
        border: 1px solid #e0e7f2;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 2px 9px rgba(10,23,51,.04);
        content-visibility: visible !important;
        contain-intrinsic-size: auto !important;
      }
      :where(.pb-css-cards-v1) .lead-card--triage .lead-card-main {
        grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
        align-items: start;
        gap: 10px 16px;
        padding: 14px;
      }
      :where(.pb-css-cards-v1) .lead-intent-rail {
        gap: 8px;
        padding: 14px 11px;
        min-width: 0;
        overflow: hidden;
      }
      :where(.pb-css-cards-v1) .lead-intent-rail .opportunity-stage-pill {
        max-width: 100%;
        min-width: 0;
        justify-content: center;
        white-space: normal;
        overflow-wrap: break-word;
        text-align: center;
        line-height: 1.15;
      }
      :where(.pb-css-cards-v1) .opportunity-card-header {
        grid-column: 1;
        gap: 5px;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-card-header h3 {
        margin: 0;
        font-size: 17px;
        line-height: 1.28;
        min-width: 0;
        max-width: 100%;
        white-space: normal;
        overflow-wrap: break-word;
        word-break: normal;
      }
      :where(.pb-css-cards-v1) .opportunity-card-header h3 a {
        min-width: 0;
        max-width: 100%;
        white-space: normal;
        overflow-wrap: break-word;
        word-break: normal;
      }
      :where(.pb-css-cards-v1) .opportunity-context {
        font-size: 13px;
      }
      :where(.pb-css-cards-v1) .lead-why {
        grid-column: 1;
        padding: 0;
        border: 0;
        background: transparent;
      }
      :where(.pb-css-cards-v1) .lead-why strong {
        display: none;
      }
      :where(.pb-css-cards-v1) .lead-why p {
        color: #33476d;
        font-size: 14px;
      }
      :where(.pb-css-cards-v1) .opportunity-scan-grid {
        grid-column: 2;
        grid-row: 1 / span 3;
        grid-template-columns: repeat(auto-fit, minmax(min(132px, 100%), 1fr));
        gap: 8px;
      }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-key-field {
        min-height: 54px;
        padding: 8px;
        background: #fbfdff;
        overflow-wrap: break-word;
      }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-support-field, :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-4 {
        display: none;
      }
      :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-2, :where(.pb-css-cards-v1) .opportunity-scan-grid .lead-field-span-3 {
        grid-column: span 1;
      }
      :where(.pb-css-cards-v1) .lead-card-main > .chip-row {
        display: none;
      }
      :where(.pb-css-cards-v1) .opportunity-actions {
        grid-column: 2;
        display: grid;
        grid-template-columns: 1fr;
        gap: 6px;
        align-self: end;
        border-top: 0;
        padding-top: 0;
      }
      :where(.pb-css-cards-v1) .opportunity-actions .card-secondary-action {
        min-height: 32px;
        padding: 7px 9px;
        font-size: 12px;
      }
      :where(.pb-css-cards-v1) .opportunity-actions .shortlist-button {
        margin-left: 0;
        min-width: 0;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-panel {
        overflow: visible;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-form {
        display: grid;
        grid-template-columns: repeat(4, minmax(150px, 1fr));
        gap: 12px;
        align-items: end;
        width: 100%;
        max-width: 100%;
        margin-top: 14px;
        padding: 16px;
        border: 1px solid #d9e4f4;
        border-radius: 8px;
        background: #fbfdff;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.9);
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-form > label:not(.push-consent) {
        display: grid;
        gap: 7px;
        min-width: 0;
        color: #53627d;
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-form select {
        width: 100%;
        min-height: 42px;
        border: 1px solid #cfd9ea;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-ink);
        padding: 9px 11px;
        font: inherit;
        font-size: 14px;
        font-weight: 800;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-consent {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: 22px minmax(0, 1fr);
        gap: 10px;
        align-items: start;
        margin: 4px 0 0;
        padding: 12px;
        border: 1px solid #d9e4f4;
        border-radius: 8px;
        background: #fff;
        color: #33476d;
        font-size: 14px;
        font-weight: 700;
        line-height: 1.45;
        text-transform: none;
        letter-spacing: 0;
        width: 100%;
        max-width: none;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-consent input {
        width: 18px;
        height: 18px;
        margin: 2px 0 0;
        accent-color: var(--pb-blue);
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-action-row {
        grid-column: 1 / -1;
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-action-row .button {
        width: auto;
        flex: 0 0 auto;
        min-height: 42px;
        min-width: 160px;
        border-radius: 7px;
        padding: 10px 14px;
        font-size: 14px;
        font-weight: 900;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-action-row .button.primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-action-row .button.secondary {
        border: 1px solid #d4e2fd;
        background: #fff;
        color: var(--pb-blue);
      }
      :where(.pb-css-cards-v1) .lead-list-template .push-action-row .button.secondary:disabled {
        background: #eef4ff;
        color: var(--pb-muted);
        cursor: not-allowed;
        opacity: 1;
      }
      :where(.pb-css-cards-v1) .lead-list-template, :where(.pb-css-cards-v1) .lead-list-template *, :where(.pb-css-cards-v1) .site-nav, :where(.pb-css-cards-v1) .site-nav * {
        min-width: 0;
      }
      html:where(:has(> body.pb-css-cards-v1)), body:where(.pb-css-cards-v1) {
        max-width: 100%;
        overflow-x: hidden;
      }
      :where(.pb-css-cards-v1) .lead-list-template .hero-copy, :where(.pb-css-cards-v1) .lead-list-template .hero-intro, :where(.pb-css-cards-v1) .opportunity-workspace-header, :where(.pb-css-cards-v1) .template-a-workspace, :where(.pb-css-cards-v1) .market-summary-panel, :where(.pb-css-cards-v1) .filter-summary-panel, :where(.pb-css-cards-v1) .report-section, :where(.pb-css-cards-v1) .forms-intro {
        max-width: 100%;
      }
      @media (max-width: 980px) {
        :where(.pb-css-cards-v1) .template-a-command-bar {
          max-width: calc(100% - 48px);
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .opportunity-workspace-header {
          grid-template-columns: 1fr;
          max-width: calc(100% - 48px);
        }
        :where(.pb-css-cards-v1) .project-query-diagnostics {
          max-width: calc(100% - 48px);
        }
        :where(.pb-css-cards-v1) .opportunity-workspace-actions {
          justify-items: stretch;
          min-width: 0;
        }
        :where(.pb-css-cards-v1) .opportunity-route-switch {
          width: 100%;
        }
        :where(.pb-css-cards-v1) .opportunity-primary-actions {
          justify-content: flex-start;
        }
        :where(.pb-css-cards-v1) .template-a-workspace {
          grid-template-columns: 1fr;
          max-width: calc(100% - 48px);
        }
        :where(.pb-css-cards-v1) .lead-list-template .push-form {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }
      @media (max-width: 1120px) {
        :where(.pb-css-cards-v1) .lead-card--triage .lead-card-main {
          grid-template-columns: minmax(0, 1fr);
        }
        :where(.pb-css-cards-v1) .opportunity-card-header, :where(.pb-css-cards-v1) .lead-why, :where(.pb-css-cards-v1) .opportunity-scan-grid, :where(.pb-css-cards-v1) .opportunity-actions {
          grid-column: 1;
          grid-row: auto;
        }
        :where(.pb-css-cards-v1) .opportunity-actions {
          grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
        }
        :where(.pb-css-cards-v1) .record-intelligence-grid {
          grid-template-columns: 1fr;
        }
      }
      @media (max-width: 860px) {
        :where(.pb-css-cards-v1) .site-nav {
          overflow-x: hidden;
        }
        :where(.pb-css-cards-v1) .lead-list-template .hero {
          grid-template-columns: 1fr;
          width: 100%;
          max-width: 100%;
          padding: 24px 14px 16px;
        }
        :where(.pb-css-cards-v1) .lead-list-template .hero h1 {
          font-size: 28px;
          width: 100%;
          max-width: 100%;
          white-space: normal;
          overflow-wrap: anywhere;
          word-break: break-word;
        }
        :where(.pb-css-cards-v1) .lead-list-template .hero-copy, :where(.pb-css-cards-v1) .lead-list-template .hero-intro, :where(.pb-css-cards-v1) .forms-intro, :where(.pb-css-cards-v1) .forms-intro p, :where(.pb-css-cards-v1) .opportunity-workspace-header, :where(.pb-css-cards-v1) .filter-summary-panel, :where(.pb-css-cards-v1) .report-section {
          width: 100%;
          max-width: 100%;
          overflow-wrap: anywhere;
        }
        :where(.pb-css-cards-v1) .lead-list-template .push-form {
          grid-template-columns: 1fr;
          padding: 12px;
        }
        :where(.pb-css-cards-v1) .lead-list-template .push-action-row {
          display: grid;
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .lead-list-template .push-action-row .button {
          width: 100%;
          min-width: 0;
        }
        :where(.pb-css-cards-v1) .lead-list-template .hero-panel {
          justify-content: stretch;
        }
        :where(.pb-css-cards-v1) .template-a-command-bar {
          position: static;
          grid-template-columns: 1fr;
          max-width: calc(100% - 28px);
          width: calc(100% - 28px);
          padding: 0;
          border: 0;
          background: transparent;
          box-shadow: none;
        }
        :where(.pb-css-cards-v1) .opportunity-workspace-header {
          max-width: calc(100% - 28px);
          padding: 12px;
        }
        :where(.pb-css-cards-v1) .project-query-diagnostics {
          max-width: calc(100% - 28px);
          padding: 12px;
        }
        :where(.pb-css-cards-v1) .market-summary-panel {
          padding: 12px;
        }
        :where(.pb-css-cards-v1) .opportunity-route-switch {
          grid-template-columns: repeat(3, minmax(0, 1fr));
        }
        :where(.pb-css-cards-v1) .opportunity-primary-actions {
          display: grid;
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .opportunity-primary-actions a {
          width: 100%;
        }
        :where(.pb-css-cards-v1) .template-a-workspace {
          display: block;
          width: calc(100% - 28px);
          max-width: calc(100% - 28px);
          margin-top: 10px;
          padding-bottom: 28px;
        }
        :where(.pb-css-cards-v1) .lead-list-template .hero-intro {
          display: none;
        }
        :where(.pb-css-cards-v1) #project-leads-list .section-heading {
          gap: 8px;
          margin-bottom: 10px;
        }
        :where(.pb-css-cards-v1) #project-leads-list .section-heading .privacy-note {
          display: none;
        }
        :where(.pb-css-cards-v1) .filter-summary-panel {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .lead-list-template .section-heading {
          display: grid;
          grid-template-columns: 1fr;
          gap: 4px;
        }
        :where(.pb-css-cards-v1) .lead-list-template .section-count {
          justify-self: start;
        }
        :where(.pb-css-cards-v1) .lead-card--triage {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .lead-intent-rail {
          display: flex;
          align-items: center;
          border-right: 0;
          border-bottom: 1px solid #d4e2fd;
        }
        :where(.pb-css-cards-v1) .lead-intent-rail strong {
          margin-left: 0;
        }
        :where(.pb-css-cards-v1) .lead-card--triage .lead-card-main {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-cards-v1) .opportunity-scan-grid, :where(.pb-css-cards-v1) .opportunity-actions {
          grid-column: 1;
          grid-row: auto;
        }
        :where(.pb-css-cards-v1) .opportunity-actions {
          grid-template-columns: minmax(0, 1fr);
        }
        :where(.pb-css-cards-v1) .record-intelligence-panel summary, :where(.pb-css-cards-v1) .record-intelligence-links {
          grid-template-columns: 1fr;
        }
      }
      @media (max-width: 520px) {
        :where(.pb-css-cards-v1) .lead-list-template .hero h1 {
          font-size: 26px;
        }
        :where(.pb-css-cards-v1) .opportunity-scan-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
      }
    
/* ---- approved ---- */

      :where(.pb-css-approved) .approved-surface {
        background: var(--pb-page);
        color: var(--pb-ink);
        font-family: var(--pb-font);
        overflow-x: hidden;
      }
      :where(.pb-css-approved) .approved-surface * { box-sizing: border-box; }
      :where(.pb-css-approved) .approved-page {
        width: 100%;
        max-width: var(--pb-container);
        margin: 0 auto;
        padding: 28px var(--pb-gutter) 72px;
      }
      :where(.pb-css-approved) .approved-page a { color: inherit; }
      :where(.pb-css-approved) .approved-breadcrumbs {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        color: var(--pb-muted);
        font-size: 13px;
        font-weight: 800;
      }
      :where(.pb-css-approved) .approved-breadcrumbs a { color: var(--pb-blue); text-decoration: none; }
      :where(.pb-css-approved) .approved-hero {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 22px;
        align-items: end;
        margin-top: 18px;
        padding: 28px;
        border-radius: 8px;
        background: linear-gradient(120deg, var(--pb-navy) 0%, var(--pb-hero-end) 100%);
        color: #fff;
      }
      :where(.pb-css-approved) .approved-hero h1 {
        margin: 0;
        color: #fff;
        font-size: var(--pb-h1);
        line-height: var(--pb-h1-line);
        letter-spacing: 0;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-approved) .approved-hero p {
        margin: 10px 0 0;
        max-width: 720px;
        color: var(--pb-hero-text);
        line-height: 1.55;
      }
      :where(.pb-css-approved) .approved-kicker {
        margin: 0 0 8px;
        color: var(--pb-kicker);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .approved-actions, :where(.pb-css-approved) .approved-inline-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        align-items: center;
      }
      :where(.pb-css-approved) .approved-button, :where(.pb-css-approved) .approved-page button, :where(.pb-css-approved) .approved-page input, :where(.pb-css-approved) .approved-page select {
        font: inherit;
      }
      :where(.pb-css-approved) .approved-button, :where(.pb-css-approved) .approved-page button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 42px;
        border: 1px solid #d4e2fd;
        border-radius: 7px;
        padding: 10px 13px;
        background: #fff;
        color: var(--pb-blue);
        font-size: 14px;
        font-weight: 900;
        text-decoration: none;
        cursor: pointer;
      }
      :where(.pb-css-approved) .approved-button.primary, :where(.pb-css-approved) .approved-page button.primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-approved) .approved-button.ghost {
        border-color: rgba(255,255,255,.32);
        background: transparent;
        color: #fff;
      }
      :where(.pb-css-approved) .approved-panel, :where(.pb-css-approved) .workspace-card, :where(.pb-css-approved) .workspace-module, :where(.pb-css-approved) .search-builder-panel, :where(.pb-css-approved) .organisation-panel, :where(.pb-css-approved) .article-panel {
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-approved) .workspace-nav {
        display: flex;
        gap: 8px;
        margin: 18px 0 0;
        padding: 10px;
        overflow-x: auto;
        border-radius: 8px;
        background: var(--pb-hero-end);
      }
      :where(.pb-css-approved) .workspace-nav a {
        flex: none;
        border-radius: 7px;
        padding: 9px 12px;
        color: rgba(255,255,255,.72);
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
      }
      :where(.pb-css-approved) .workspace-nav a[aria-current="page"] {
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-approved) .surface-grid {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 330px;
        gap: 18px;
        align-items: start;
        margin-top: 18px;
      }
      :where(.pb-css-approved) .surface-stack {
        display: grid;
        gap: 18px;
        min-width: 0;
      }
      :where(.pb-css-approved) .metric-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 14px;
        margin-top: 18px;
      }
      :where(.pb-css-approved) .metric-card {
        min-width: 0;
        padding: 16px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-approved) .metric-card span {
        display: block;
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .metric-card strong {
        display: block;
        margin-top: 7px;
        color: var(--pb-ink);
        font-size: 26px;
        line-height: 1;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-approved) .workspace-module, :where(.pb-css-approved) .search-builder-panel, :where(.pb-css-approved) .organisation-panel, :where(.pb-css-approved) .article-panel {
        padding: 18px;
      }
      :where(.pb-css-approved) .module-head {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        align-items: flex-start;
        justify-content: space-between;
        margin-bottom: 14px;
      }
      :where(.pb-css-approved) .module-head p {
        margin: 0 0 5px;
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .module-head h2, :where(.pb-css-approved) .module-head h3 {
        margin: 0;
        color: var(--pb-ink);
        line-height: 1.18;
        letter-spacing: 0;
      }
      :where(.pb-css-approved) .compact-list, :where(.pb-css-approved) .timeline-list {
        display: grid;
        gap: 10px;
        margin: 0;
        padding: 0;
        list-style: none;
      }
      :where(.pb-css-approved) .compact-list li, :where(.pb-css-approved) .timeline-list li {
        display: grid;
        gap: 4px;
        min-width: 0;
        padding: 12px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-approved) .compact-list strong, :where(.pb-css-approved) .timeline-list strong {
        color: var(--pb-ink);
        overflow-wrap: anywhere;
      }
      :where(.pb-css-approved) .compact-list span, :where(.pb-css-approved) .timeline-list span {
        color: var(--pb-muted);
        font-size: 13px;
      }
      :where(.pb-css-approved) .status-chip, :where(.pb-css-approved) .filter-chip, :where(.pb-css-approved) .entity-chip {
        display: inline-flex;
        align-items: center;
        width: fit-content;
        min-height: 28px;
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        padding: 5px 10px;
        background: #eef4ff;
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
      }
      :where(.pb-css-approved) .status-chip.neutral { border-color: #dbe4f1; background: #eef2fa; color: var(--pb-ink); }
      :where(.pb-css-approved) .status-chip.warn, :where(.pb-css-approved) .filter-chip.exclusion { border-color: #f2d6ae; background: #fff7ed; color: #a6651f; }
      :where(.pb-css-approved) .status-chip.good { border-color: #c4ebd2; background: #ecfaf1; color: #1f9d52; }
      :where(.pb-css-approved) .filter-chip.is-muted { border-color: #dbe4f1; background: #eef2fa; color: var(--pb-muted); }
      :where(.pb-css-approved) .filter-taxonomy {
        display: grid;
        gap: 12px;
      }
      :where(.pb-css-approved) .filter-taxonomy fieldset {
        display: grid;
        gap: 8px;
        margin: 0;
        padding: 12px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-approved) .filter-taxonomy legend {
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .filter-taxonomy label {
        display: flex;
        gap: 8px;
        color: var(--pb-ink);
        font-size: 14px;
        line-height: 1.35;
      }
      :where(.pb-css-approved) .search-layout, :where(.pb-css-approved) .organisation-layout, :where(.pb-css-approved) .article-layout {
        display: grid;
        grid-template-columns: 280px minmax(0, 1fr);
        gap: 18px;
        align-items: start;
        margin-top: 18px;
      }
      :where(.pb-css-approved) .county-hub-layout {
        grid-template-columns: minmax(0, 1fr) 330px;
      }
      :where(.pb-css-approved) .county-hub-layout > .surface-stack {
        width: 100%;
        max-width: 100%;
      }
      :where(.pb-css-approved) .county-hub-layout .lead-list {
        grid-template-columns: minmax(0, 1fr);
      }
      :where(.pb-css-approved) .keyword-bar {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 10px;
        margin-top: 18px;
        padding: 12px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-approved) .keyword-bar input, :where(.pb-css-approved) .search-builder-panel input, :where(.pb-css-approved) .search-builder-panel select, :where(.pb-css-approved) .organisation-panel select {
        min-width: 0;
        min-height: 44px;
        border: 1px solid #dbe5f4;
        border-radius: 7px;
        padding: 10px;
        color: var(--pb-ink);
      }
      :where(.pb-css-approved) .active-filter-chips, :where(.pb-css-approved) .entity-meta-row, :where(.pb-css-approved) .alias-row {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        min-width: 0;
      }
      :where(.pb-css-approved) .search-builder-surface .search-result-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        align-items: start;
        width: 100%;
        min-width: 0;
      }
      :where(.pb-css-approved) .search-builder-surface .search-result-list .lead-card--triage {
        width: 100%;
        max-width: 100%;
        grid-template-columns: minmax(min(112px, 34%), 138px) minmax(0, 1fr);
        border: 1px solid #e0e7f2;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 2px 9px rgba(10,23,51,.04);
      }
      :where(.pb-css-approved) .search-builder-surface .search-result-list .card-primary-action {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-approved) .search-builder-surface .search-result-list .card-secondary-action {
        border-color: #d4e2fd;
        background: #fff;
        color: #1746a2;
      }
      :where(.pb-css-approved) .search-builder-surface .search-result-list .card-primary-action:hover, :where(.pb-css-approved) .search-builder-surface .search-result-list .card-primary-action:focus-visible, :where(.pb-css-approved) .search-builder-surface .search-result-list .card-secondary-action:hover, :where(.pb-css-approved) .search-builder-surface .search-result-list .card-secondary-action:focus-visible {
        border-color: var(--pb-blue);
        background: #eef4ff;
        color: #1746a2;
      }
      :where(.pb-css-approved) .dashboard-surface .surface-grid, :where(.pb-css-approved) .dashboard-surface .surface-stack, :where(.pb-css-approved) .dashboard-surface .workspace-module, :where(.pb-css-approved) .dashboard-surface .lead-list {
        min-width: 0;
        max-width: 100%;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 14px;
        align-items: start;
        overflow: hidden;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-list > * {
        width: 100%;
        max-width: 100%;
        min-width: 0;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        grid-template-columns: minmax(min(116px, 34%), 140px) minmax(0, 1fr);
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-scan-grid {
        grid-template-columns: repeat(auto-fit, minmax(min(150px, 100%), 1fr));
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .record-intelligence-panel summary {
        grid-template-columns: minmax(0, 1fr) auto;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .record-intelligence-panel summary span {
        grid-column: 1;
        grid-row: 1;
        white-space: nowrap;
        overflow-wrap: normal;
        word-break: normal;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .record-intelligence-panel summary strong {
        grid-column: 1;
        grid-row: 2;
        min-width: 0;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .record-intelligence-panel summary::after {
        grid-column: 2;
        grid-row: 1 / span 2;
        align-self: center;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .lead-actions, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
      }
      :where(.pb-css-approved) .dashboard-surface .lead-card--triage .lead-actions a, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .lead-actions button, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-actions a, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-actions button, :where(.pb-css-approved) .dashboard-surface .approved-button {
        flex: 0 1 auto;
        min-width: max-content;
        max-width: 100%;
        white-space: nowrap;
      }
      :where(.pb-css-approved) .modal-preview, :where(.pb-css-approved) .mobile-filter-drawer-preview {
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 20px 42px rgba(15,33,71,.14);
      }
      :where(.pb-css-approved) .modal-preview {
        margin-top: 14px;
        padding: 18px;
      }
      :where(.pb-css-approved) .modal-preview label {
        display: grid;
        gap: 6px;
        margin: 12px 0;
        color: var(--pb-muted);
        font-size: 13px;
        font-weight: 800;
      }
      :where(.pb-css-approved) .mobile-filter-drawer-preview {
        display: none;
      }
      :where(.pb-css-approved) .search-builder-surface[data-search-state="save-modal"]::after, :where(.pb-css-approved) .search-builder-surface[data-search-state="mobile-save-alert"]::after, :where(.pb-css-approved) .search-builder-surface[data-search-state="mobile-filter-drawer"]::after {
        content: "";
        position: fixed;
        inset: 0;
        z-index: 40;
        background: rgba(10, 23, 51, .34);
      }
      :where(.pb-css-approved) .search-builder-surface[data-search-state="save-modal"] .modal-preview, :where(.pb-css-approved) .search-builder-surface[data-search-state="mobile-save-alert"] .modal-preview {
        position: fixed;
        top: 50%;
        left: 50%;
        z-index: 60;
        width: min(480px, calc(100vw - 32px));
        margin: 0;
        transform: translate(-50%, -50%);
      }
      :where(.pb-css-approved) .organisation-header {
        display: grid;
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: 16px;
        align-items: center;
      }
      :where(.pb-css-approved) .org-monogram {
        display: grid;
        place-items: center;
        width: 62px;
        height: 62px;
        border-radius: 8px;
        background: #eef4ff;
        color: var(--pb-blue);
        font-size: 24px;
        font-weight: 900;
      }
      :where(.pb-css-approved) .kpi-strip {
        display: grid;
        grid-template-columns: repeat(6, minmax(0, 1fr));
        gap: 12px;
        margin-top: 18px;
      }
      :where(.pb-css-approved) .trend-bars {
        display: grid;
        gap: 9px;
      }
      :where(.pb-css-approved) .trend-bars span {
        display: grid;
        grid-template-columns: 92px minmax(0, 1fr) 42px;
        gap: 8px;
        align-items: center;
        color: var(--pb-muted);
        font-size: 13px;
      }
      :where(.pb-css-approved) .trend-bars i {
        height: 9px;
        border-radius: 999px;
        background: var(--pb-blue);
      }
      :where(.pb-css-approved) .article-layout {
        grid-template-columns: 240px minmax(0, 1fr);
      }
      :where(.pb-css-approved) .article-toc {
        position: sticky;
        top: 14px;
      }
      :where(.pb-css-approved) .article-toc a {
        display: block;
        padding: 8px 0;
        color: var(--pb-muted);
        font-size: 14px;
        font-weight: 800;
        text-decoration: none;
      }
      :where(.pb-css-approved) .article-body {
        display: grid;
        gap: 18px;
        min-width: 0;
      }
      :where(.pb-css-approved) .article-body h2 {
        margin: 0 0 8px;
        color: var(--pb-ink);
        font-size: 24px;
        letter-spacing: 0;
      }
      :where(.pb-css-approved) .article-guide-surface {
        --article-navy: var(--pb-navy);
        --article-ink: var(--pb-ink);
        --article-muted: var(--pb-muted);
        --article-accent: var(--pb-blue);
        --article-card: #fff;
        --article-line: var(--pb-line);
      }
      :where(.pb-css-approved) .article-guide-surface .approved-kicker, :where(.pb-css-approved) .article-guide-surface .module-head p {
        letter-spacing: 0;
      }
      :where(.pb-css-approved) .article-guide-surface .approved-hero {
        align-items: stretch;
      }
      :where(.pb-css-approved) .article-hero-copy {
        display: grid;
        align-content: start;
        gap: 10px;
        min-width: 0;
      }
      :where(.pb-css-approved) .article-hero-copy p, :where(.pb-css-approved) .article-hero-copy h1 {
        margin-top: 0;
      }
      :where(.pb-css-approved) .article-meta-row, :where(.pb-css-approved) .article-chip-row, :where(.pb-css-approved) .article-reference-list {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        min-width: 0;
      }
      :where(.pb-css-approved) .article-meta-row span, :where(.pb-css-approved) .article-reference-list a {
        display: inline-flex;
        align-items: center;
        min-height: 28px;
        border: 1px solid rgba(255,255,255,.22);
        border-radius: 999px;
        padding: 5px 10px;
        color: #e7eefc;
        font-size: 12px;
        font-weight: 900;
      }
      :where(.pb-css-approved) .article-source-promise {
        max-width: 760px;
        border-left: 3px solid var(--pb-kicker);
        padding-left: 12px;
        color: #e7eefc !important;
      }
      :where(.pb-css-approved) .article-guide-surface .approved-actions {
        align-content: end;
        justify-content: flex-end;
        min-width: min(280px, 100%);
      }
      :where(.pb-css-approved) .article-toc-details > summary {
        display: none;
      }
      :where(.pb-css-approved) .article-toc-details {
        display: none;
      }
      :where(.pb-css-approved) .article-toc-nav {
        display: grid;
        gap: 2px;
      }
      :where(.pb-css-approved) .article-toc a[aria-current="true"], :where(.pb-css-approved) .article-toc a.is-active {
        border-left: 3px solid var(--pb-blue);
        padding-left: 10px;
        color: var(--pb-ink);
        background: #eef4ff;
      }
      :where(.pb-css-approved) .article-section-copy {
        margin: 0;
        color: #24385f;
        line-height: 1.6;
      }
      :where(.pb-css-approved) .article-chip-row {
        margin-top: 14px;
      }
      :where(.pb-css-approved) .article-guide-surface .status-chip.good, :where(.pb-css-approved) .article-guide-surface .status-chip.neutral {
        border-color: #d4e2fd;
        background: #eef4ff;
        color: var(--pb-blue);
      }
      :where(.pb-css-approved) .article-callout-grid, :where(.pb-css-approved) .article-method-grid, :where(.pb-css-approved) .article-guide-strip {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 12px;
      }
      :where(.pb-css-approved) .article-data-callout, :where(.pb-css-approved) .article-method-card, :where(.pb-css-approved) .article-guide-card {
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-approved) .article-data-callout, :where(.pb-css-approved) .article-method-card {
        padding: 14px;
      }
      :where(.pb-css-approved) .article-data-callout span, :where(.pb-css-approved) .article-method-card span {
        display: block;
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .article-data-callout strong, :where(.pb-css-approved) .article-method-card strong {
        display: block;
        margin-top: 6px;
        color: var(--pb-ink);
        font-size: 18px;
        line-height: 1.2;
      }
      :where(.pb-css-approved) .article-data-callout p, :where(.pb-css-approved) .article-method-card p, :where(.pb-css-approved) .article-guide-card p {
        margin: 7px 0 0;
        color: var(--pb-muted);
        line-height: 1.5;
      }
      :where(.pb-css-approved) .article-stage-table {
        width: 100%;
        border-collapse: collapse;
        overflow: hidden;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-approved) .article-stage-table th, :where(.pb-css-approved) .article-stage-table td {
        padding: 12px;
        border-bottom: 1px solid var(--pb-line);
        text-align: left;
        vertical-align: top;
      }
      :where(.pb-css-approved) .article-stage-table th {
        background: var(--pb-navy);
        color: #fff;
        font-size: 12px;
        text-transform: uppercase;
      }
      :where(.pb-css-approved) .article-stage-table td {
        color: #24385f;
        line-height: 1.45;
      }
      :where(.pb-css-approved) .article-stage-table tr:last-child td {
        border-bottom: 0;
      }
      :where(.pb-css-approved) .article-reference-list {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      :where(.pb-css-approved) .article-reference-list a, :where(.pb-css-approved) .article-guide-card {
        display: grid;
        gap: 6px;
        min-height: 100%;
        padding: 14px;
        color: var(--pb-ink);
        text-decoration: none;
      }
      :where(.pb-css-approved) .article-reference-list a {
        border-color: var(--pb-line);
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-approved) .article-reference-list strong, :where(.pb-css-approved) .article-guide-card strong {
        color: var(--pb-ink);
      }
      :where(.pb-css-approved) .article-reference-list span, :where(.pb-css-approved) .article-guide-card span {
        color: var(--pb-muted);
        font-size: 13px;
        line-height: 1.45;
      }
      :where(.pb-css-approved) .article-related-module[data-related-state="empty"] .lead-list {
        display: block;
      }
      :where(.pb-css-approved) .article-guide-surface .article-panel {
        overflow: hidden;
      }
      :where(.pb-css-approved) .article-guide-surface .lead-list {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
        width: 100%;
        max-width: 100%;
        min-width: 0;
        overflow: hidden;
      }
      :where(.pb-css-approved) .article-guide-surface .lead-list > * {
        width: 100%;
        max-width: 100%;
        min-width: 0;
      }
      :where(.pb-css-approved) .article-guide-surface .lead-actions, :where(.pb-css-approved) .article-guide-surface .lead-card-actions, :where(.pb-css-approved) .article-guide-surface .opportunity-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        max-width: 100%;
        min-width: 0;
      }
      :where(.pb-css-approved) .article-guide-surface .lead-actions a, :where(.pb-css-approved) .article-guide-surface .lead-actions button, :where(.pb-css-approved) .article-guide-surface .lead-card-actions a, :where(.pb-css-approved) .article-guide-surface .lead-card-actions button, :where(.pb-css-approved) .article-guide-surface .opportunity-actions a, :where(.pb-css-approved) .article-guide-surface .opportunity-actions button {
        flex: 1 1 150px;
        max-width: 100%;
        min-width: 0;
      }
      :where(.pb-css-approved) .source-chain {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 10px;
      }
      :where(.pb-css-approved) .source-chain article {
        padding: 14px;
        border-radius: 8px;
        background: var(--pb-hero-end);
        color: #fff;
      }
      :where(.pb-css-approved) .source-chain p {
        margin: 6px 0 0;
        color: var(--pb-hero-text);
        font-size: 13px;
      }
      :where(.pb-css-approved) .navy-cta {
        padding: 20px;
        border-radius: 8px;
        background: var(--pb-navy);
        color: #fff;
      }
      :where(.pb-css-approved) .navy-cta h2, :where(.pb-css-approved) .navy-cta h3 {
        color: #fff;
      }
      :where(.pb-css-approved) .navy-cta p {
        color: var(--pb-hero-text);
      }
      :where(.pb-css-approved) .mobile-article-action {
        display: none;
      }
      :where(.pb-css-approved) .skeleton-line {
        display: block;
        height: 12px;
        border-radius: 999px;
        background: linear-gradient(90deg, #eef2fa, #dbe5f4, #eef2fa);
      }
      @media (max-width: 960px) {
        :where(.pb-css-approved) .approved-hero, :where(.pb-css-approved) .surface-grid, :where(.pb-css-approved) .search-layout, :where(.pb-css-approved) .organisation-layout, :where(.pb-css-approved) .article-layout {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .metric-grid {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        :where(.pb-css-approved) .kpi-strip {
          display: flex;
          overflow-x: auto;
          padding-bottom: 4px;
        }
        :where(.pb-css-approved) .kpi-strip .metric-card {
          flex: 0 0 150px;
        }
        :where(.pb-css-approved) .source-chain {
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        :where(.pb-css-approved) .article-toc {
          position: static;
        }
        :where(.pb-css-approved) .article-toc-nav-desktop {
          display: none;
        }
        :where(.pb-css-approved) .article-toc-details {
          display: block;
        }
        :where(.pb-css-approved) .article-toc-details > summary {
          display: flex;
          align-items: center;
          justify-content: space-between;
          min-height: 42px;
          color: var(--pb-ink);
          font-weight: 900;
          cursor: pointer;
        }
        :where(.pb-css-approved) .article-toc-details:not([open]) .article-toc-nav {
          display: none;
        }
        :where(.pb-css-approved) .article-callout-grid, :where(.pb-css-approved) .article-method-grid, :where(.pb-css-approved) .article-guide-strip, :where(.pb-css-approved) .article-reference-list {
          grid-template-columns: 1fr;
        }
      }
      @media (max-width: 560px) {
        :where(.pb-css-approved) .approved-page {
          padding: 20px var(--pb-gutter-sm) 76px;
        }
        :where(.pb-css-approved) .approved-hero {
          padding: 20px 14px;
        }
        :where(.pb-css-approved) .approved-hero h1 {
          font-size: var(--pb-h1-sm);
        }
        :where(.pb-css-approved) .metric-grid, :where(.pb-css-approved) .source-chain {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .article-stage-table, :where(.pb-css-approved) .article-stage-table tbody, :where(.pb-css-approved) .article-stage-table tr, :where(.pb-css-approved) .article-stage-table td {
          display: block;
          width: 100%;
        }
        :where(.pb-css-approved) .article-stage-table thead {
          display: none;
        }
        :where(.pb-css-approved) .article-stage-table tr {
          border-bottom: 1px solid var(--pb-line);
        }
        :where(.pb-css-approved) .article-stage-table tr:last-child {
          border-bottom: 0;
        }
        :where(.pb-css-approved) .article-stage-table td {
          display: grid;
          grid-template-columns: minmax(96px, .42fr) minmax(0, 1fr);
          gap: 10px;
          border-bottom: 0;
          overflow-wrap: anywhere;
        }
        :where(.pb-css-approved) .article-stage-table td::before {
          content: attr(data-label);
          color: var(--pb-muted);
          font-size: 12px;
          font-weight: 900;
          text-transform: uppercase;
        }
        :where(.pb-css-approved) .keyword-bar {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .organisation-header {
          grid-template-columns: 1fr;
          align-items: start;
        }
        :where(.pb-css-approved) .approved-actions, :where(.pb-css-approved) .approved-inline-actions {
          align-items: stretch;
          flex-direction: column;
        }
        :where(.pb-css-approved) .search-builder-surface .search-result-list .lead-card--triage {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .dashboard-surface .lead-card--triage {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-scan-grid, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .record-intelligence-grid {
          grid-template-columns: 1fr;
        }
        :where(.pb-css-approved) .dashboard-surface .lead-card--triage .lead-actions a, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .lead-actions button, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-actions a, :where(.pb-css-approved) .dashboard-surface .lead-card--triage .opportunity-actions button, :where(.pb-css-approved) .dashboard-surface .approved-button {
          width: auto;
          min-width: 0;
          white-space: normal;
        }
        :where(.pb-css-approved) .approved-button, :where(.pb-css-approved) .approved-page button {
          width: 100%;
        }
        :where(.pb-css-approved) .search-builder-surface[data-search-state="mobile-filter-drawer"] .mobile-filter-drawer-preview {
          display: block;
          position: fixed;
          top: 0;
          bottom: 0;
          left: 0;
          z-index: 60;
          width: min(340px, calc(100vw - 34px));
          margin: 0;
          padding: 14px;
          overflow-y: auto;
          border-radius: 0 8px 8px 0;
        }
        :where(.pb-css-approved) .search-builder-surface[data-search-state="mobile-save-alert"] .modal-preview {
          position: fixed;
          right: 12px;
          bottom: 12px;
          left: 12px;
          z-index: 60;
          width: auto;
          margin: 0;
          padding: 14px;
          transform: none;
        }
        :where(.pb-css-approved) .mobile-article-action {
          position: fixed;
          left: 0;
          right: 0;
          bottom: 0;
          z-index: 30;
          display: grid;
          grid-template-columns: 1fr 1.4fr;
          gap: 8px;
          padding: 10px 12px;
          border-top: 1px solid #dbe5f4;
          background: #fff;
          box-shadow: 0 -10px 30px rgba(15,33,71,.14);
        }
      }
    
/* ---- embed ---- */

  /* /embed/ on the approved surface: tokens from docs/design-tokens.md only. */
  :where(.pb-css-embed) .embed-body .embed-hero { grid-template-columns: 1fr; }
  :where(.pb-css-embed) .embed-body .embed-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; align-items: start; margin-top: 18px; }
  :where(.pb-css-embed) .embed-body .embed-code, :where(.pb-css-embed) .embed-body .embed-preview { display: grid; gap: 14px; min-width: 0; }
  :where(.pb-css-embed) .embed-body .module-head { margin-bottom: 0; align-items: center; }
  :where(.pb-css-embed) .embed-body .module-head .approved-button { flex: 0 0 auto; width: auto; }
  :where(.pb-css-embed) .embed-body pre { margin: 0; overflow-x: auto; border-radius: 8px; padding: 14px; background: var(--pb-navy); color: #fff; font-size: 13px; line-height: 1.6; white-space: pre; }
  :where(.pb-css-embed) .embed-body pre code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
  :where(.pb-css-embed) .embed-body .embed-options strong { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; }
  :where(.pb-css-embed) .embed-body .embed-note { margin: 18px 0 0; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  :where(.pb-css-embed) .embed-body .embed-note a { color: var(--pb-blue); font-weight: 800; }
  @media (max-width: 960px) {
    :where(.pb-css-embed) .embed-body .embed-layout { grid-template-columns: 1fr; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-embed) .embed-body .embed-hero h1 { font-size: var(--pb-h1-sm); }
    :where(.pb-css-embed) .embed-body .embed-hero p { font-size: 14px; }
    :where(.pb-css-embed) .embed-body .embed-layout { margin-top: 14px; }
    :where(.pb-css-embed) .embed-body .embed-code, :where(.pb-css-embed) .embed-body .embed-preview { padding: 14px; }
    :where(.pb-css-embed) .embed-body pre { font-size: 12px; white-space: pre-wrap; overflow-wrap: anywhere; }
  }

/* ---- county-directory ---- */

      :where(.pb-css-county-directory) .county-directory-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px; }
      :where(.pb-css-county-directory) .county-directory-card { display:block;padding:20px;border:1px solid #dce4ef;border-radius:10px;background:#fff;color:var(--pb-ink);text-decoration:none;box-shadow:0 8px 24px rgba(15,33,71,.04); }
      :where(.pb-css-county-directory) .county-directory-card:hover { border-color:var(--pb-blue);text-decoration:none;transform:translateY(-1px); }
      :where(.pb-css-county-directory) .county-directory-card span { color:#16786d;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase; }
      :where(.pb-css-county-directory) .county-directory-card h2 { margin:7px 0 6px;font-size:23px; }
      :where(.pb-css-county-directory) .county-directory-card p { margin:0 0 14px;color:var(--pb-muted);font-size:13px;line-height:1.5; }
      :where(.pb-css-county-directory) .county-directory-card strong { color:var(--pb-blue);font-size:12px; }
      @media(max-width:900px) { :where(.pb-css-county-directory) .county-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
      @media(max-width:560px) { :where(.pb-css-county-directory) .county-directory-grid { grid-template-columns:1fr; } }
    
/* ---- county-hub ---- */
  /* County hubs (/counties/<slug>/, O1). The body uses the town page's order and
     grid (place.css): H1, count line, newest leads, the collapsed alert, then the
     rest, in DOM order on phones. These rules add the county's own blocks. */
  :where(.pb-css-county-hub) .county-hero .county-sparse-note { margin: 8px 0 0; color: var(--pb-hero-text); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-county-hub) .county-open-all { margin: 14px 0 0; }
  :where(.pb-css-county-hub) .county-rest { display: grid; gap: 14px; min-width: 0; }
  :where(.pb-css-county-hub) .county-rest .county-town-chips { margin: 0; }
  @media (max-width: 960px) {
    :where(.pb-css-county-hub) .county-open-all .approved-button { width: 100%; justify-content: center; }
  }
  /* Wide screens: grid placement only, like the town page. Left: newest leads
     (rows 1-3), then the town chips and activity mix (row 4). Right: alert
     (row 1), summary (row 2), links (row 3). Row 3 is the flexible one: the
     leads span it, so their height lands there instead of being shared out
     over the alert and summary rows, and no empty row 5 opens a gap under the
     activity mix (on town pages the pager and the long list fill those rows). */
  @media (min-width: 961px) {
    :where(.pb-css-county-hub) .county-layout { grid-template-rows: auto auto 1fr auto; }
    :where(.pb-css-county-hub) .county-rest { grid-column: 1; grid-row: 4; }
    :where(.pb-css-county-hub) .county-layout .place-context { grid-row: 3; }
    /* No results, or one or two (R4-B): the short list and the town chips and
       activity mix interleave with the right column's rows (alert, summary,
       links), so the mix sits just under the short list instead of below the
       whole right column with a blank left column (measured at 1440: the mix
       starts 57 px under the list, was 332 px; the links do not move). */
    :where(.pb-css-county-hub) .county-layout.is-short-list { grid-template-rows: auto auto auto 1fr; }
    :where(.pb-css-county-hub) .county-layout.is-short-list .place-newest { grid-row: 1 / 3; }
    :where(.pb-css-county-hub) .county-layout.is-short-list .place-kpis { grid-row: 2 / 4; }
    :where(.pb-css-county-hub) .county-layout.is-short-list .county-rest { grid-row: 3 / 5; align-self: start; }
    :where(.pb-css-county-hub) .county-layout.is-short-list .place-context { grid-row: 4; }
  }

/* ---- contact ---- */

  /* /contact/ on the approved surface: tokens from docs/design-tokens.md only. */
  :where(.pb-css-contact) .contact-body .contact-hero { grid-template-columns: 1fr; }
  :where(.pb-css-contact) .contact-body .approved-hero a { color: #fff; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; overflow-wrap: anywhere; }
  :where(.pb-css-contact) .contact-body .contact-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; align-items: start; margin-top: 18px; }
  :where(.pb-css-contact) .contact-body .contact-form-panel { display: grid; gap: 14px; }
  :where(.pb-css-contact) .contact-body .contact-form-panel > .module-head { margin-bottom: 0; }
  :where(.pb-css-contact) .contact-body .contact-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; }
  :where(.pb-css-contact) .contact-body .contact-form label { display: grid; gap: 6px; min-width: 0; color: var(--pb-ink); font-size: 13px; font-weight: 900; }
  :where(.pb-css-contact) .contact-body .contact-form .contact-message, :where(.pb-css-contact) .contact-body .contact-form button { grid-column: 1 / -1; }
  :where(.pb-css-contact) .contact-body .contact-form input, :where(.pb-css-contact) .contact-body .contact-form select, :where(.pb-css-contact) .contact-body .contact-form textarea { width: 100%; min-width: 0; min-height: 44px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 9px 10px; background: #fff; color: var(--pb-ink); font: inherit; font-size: 15px; font-weight: 400; }
  :where(.pb-css-contact) .contact-body .contact-form textarea { min-height: 140px; resize: vertical; }
  :where(.pb-css-contact) .contact-body .contact-form input:focus-visible, :where(.pb-css-contact) .contact-body .contact-form select:focus-visible, :where(.pb-css-contact) .contact-body .contact-form textarea:focus-visible { outline: 3px solid rgba(47, 111, 237, .3); border-color: var(--pb-blue); }
  :where(.pb-css-contact) .contact-body .contact-form button { justify-self: start; min-width: 200px; }
  :where(.pb-css-contact) .contact-body .contact-query-context { display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid #d4e2fd; border-radius: 8px; padding: 12px 14px; background: var(--pb-page); }
  :where(.pb-css-contact) .contact-body .contact-query-context[hidden] { display: none !important; }
  :where(.pb-css-contact) .contact-body .contact-query-context strong { display: block; color: var(--pb-ink); font-size: 14px; }
  :where(.pb-css-contact) .contact-body .contact-query-context p { margin: 4px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.4; }
  :where(.pb-css-contact) .contact-body .contact-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
  :where(.pb-css-contact) .contact-body .contact-filter-chip { display: inline-flex; align-items: center; min-height: 26px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 5px 9px; background: #fff; color: var(--pb-ink); font-size: 12px; font-weight: 900; }
  :where(.pb-css-contact) .contact-body .contact-routes { display: grid; gap: 12px; }
  :where(.pb-css-contact) .contact-body .contact-routes .organisation-panel { display: grid; gap: 6px; padding: 16px; }
  :where(.pb-css-contact) .contact-body .contact-routes h2 { margin: 0; color: var(--pb-ink); font-size: 17px; }
  :where(.pb-css-contact) .contact-body .contact-routes p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-contact) .contact-body .contact-routes a { color: var(--pb-blue); font-size: 14px; font-weight: 900; }
  :where(.pb-css-contact) .contact-body .contact-note { max-width: 860px; margin: 18px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.55; }
  :where(.pb-css-contact) .contact-body .contact-note a { color: var(--pb-blue); font-weight: 800; }
  @media (max-width: 960px) {
    :where(.pb-css-contact) .contact-body .contact-layout { grid-template-columns: 1fr; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-contact) .contact-body .contact-hero h1 { font-size: var(--pb-h1-sm); }
    :where(.pb-css-contact) .contact-body .contact-hero p { font-size: 14px; }
    :where(.pb-css-contact) .contact-body .contact-layout { margin-top: 14px; }
    :where(.pb-css-contact) .contact-body .contact-form-panel { padding: 14px; }
    :where(.pb-css-contact) .contact-body .contact-form { grid-template-columns: 1fr; }
    :where(.pb-css-contact) .contact-body .contact-form button { width: 100%; }
    :where(.pb-css-contact) .contact-body .contact-query-context { align-items: flex-start; flex-direction: column; }
    :where(.pb-css-contact) .contact-body .contact-filter-chips { justify-content: flex-start; }
  }

/* ---- activity-map ---- */
/* Activity map (R5-A): the map fills the screen below the nav; a floating
   panel (filters) sits top left, the list of sites in view on the right. On
   phones (960px and narrower) search and Filters float on top and the list is
   a bottom sheet. Colours are tokens; the chip pair and the map background
   are the approved mockup's values, named once here. */
:where(.pb-css-activity-map) .am-stage {
  --am-inset: 14px;
  --am-panel-w: 360px;
  --am-list-w: 380px;
  --am-chip-bg: #e3ebfc;
  --am-chip-ink: #1c3f8f;
  --am-land: #eef2f7;
  /* Decided view marks: the refused and appealed pins are the tokens
     --pb-refused and --pb-appealed (Release 5); the cluster shade and the
     chip tint below are map-only until a token decision. */
  --am-refused-dark: #8f1d14;
  --am-refused-tint: #fde8e6;
  --am-shadow: 0 10px 30px rgba(10, 23, 51, 0.2);
  --am-shadow-sm: 0 6px 18px rgba(10, 23, 51, 0.2);
  --am-peek: 180px;
  position: relative;
  isolation: isolate;
  font-family: var(--pb-font);
  color: var(--pb-ink);
}
:where(.pb-css-activity-map) .am-stage .vh, :where(.pb-css-activity-map) .am-stage .vh-focusable:not(:focus) {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden;
  clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
:where(.pb-css-activity-map) .am-stage [hidden] { display: none !important; }
:where(.pb-css-activity-map) .am-stage button, :where(.pb-css-activity-map) .am-stage select, :where(.pb-css-activity-map) .am-stage input { font-family: inherit; }
/* The shared base stretches every button (legacy-base); map controls size to their content. */
:where(.pb-css-activity-map) .am-stage button { width: auto; }
:where(.pb-css-activity-map) .am-stage a { color: var(--pb-blue); }
:where(.pb-css-activity-map) .am-stage a:hover { color: var(--pb-blue-hover); }
:where(.pb-css-activity-map) .am-stage :focus-visible { outline: 3px solid var(--pb-blue); outline-offset: 2px; }
:where(.pb-css-activity-map) .am-ico { fill: none; stroke: currentColor; stroke-width: 2.4; stroke-linecap: round; stroke-linejoin: round; }

:where(.pb-css-activity-map) .am-skip {
  position: absolute; left: var(--am-inset); top: var(--am-inset); z-index: 1400;
  padding: 12px 16px; border-radius: var(--pb-radius); background: var(--pb-navy); color: #fff !important;
  font-weight: 700; transform: translateY(-200%);
}
:where(.pb-css-activity-map) .am-skip:focus { transform: none; }

/* ---- Panel ---- */
:where(.pb-css-activity-map) .am-panel {
  background: var(--pb-card); border-radius: var(--pb-radius); box-shadow: var(--am-shadow); overflow: hidden;
}
:where(.pb-css-activity-map) .am-head { background: var(--pb-navy); padding: 18px 20px 0; }
:where(.pb-css-activity-map) .am-head-row { display: flex; align-items: center; justify-content: space-between; }
:where(.pb-css-activity-map) .am-kicker {
  margin: 0; font-size: 12px; line-height: 16px; font-weight: 900; letter-spacing: 0.08em;
  text-transform: uppercase; color: var(--pb-kicker);
}
:where(.pb-css-activity-map) .am-head h1 { margin: 6px 0 0; font-size: var(--pb-h1-sm); line-height: var(--pb-h1-line); font-weight: 700; color: #fff; }
:where(.pb-css-activity-map) .am-count { margin: 8px 0 0; font-size: 14px; line-height: 18px; color: var(--pb-hero-text); }
:where(.pb-css-activity-map) .am-count strong { color: #fff; }
:where(.pb-css-activity-map) .am-filters-done { display: none; }
:where(.pb-css-activity-map) .am-tabs { margin: 12px -20px 0; padding: 0 8px; border: 0; min-width: 0; display: flex; }
:where(.pb-css-activity-map) .am-tab {
  flex: 1 1 auto; min-height: 44px; display: flex; align-items: center; justify-content: center; padding: 0 6px;
  border-bottom: 3px solid transparent; color: var(--pb-hero-text); font-size: 13px; font-weight: 700;
  white-space: nowrap; cursor: pointer; text-align: center;
}
:where(.pb-css-activity-map) .am-tab.is-current { border-bottom-color: var(--pb-blue); color: #fff; }
:where(.pb-css-activity-map) .am-tab-rule { flex: 0 0 1px; align-self: center; height: 20px; margin: 0 2px; background: rgba(255, 255, 255, 0.22); }
:where(.pb-css-activity-map) .am-tab:focus-within { outline: 3px solid var(--pb-kicker); outline-offset: -3px; }
:where(.pb-css-activity-map) .am-body { padding: 16px 20px; display: flex; flex-direction: column; gap: 12px; }
:where(.pb-css-activity-map) .am-segmented {
  margin: 0; padding: 0; border: 1px solid var(--pb-line-strong); border-radius: var(--pb-radius); min-width: 0;
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: hidden;
}
:where(.pb-css-activity-map) .am-segmented label {
  min-height: 44px; display: flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700;
  color: var(--pb-ink); background: var(--pb-card); cursor: pointer;
}
:where(.pb-css-activity-map) .am-segmented label + label { border-left: 1px solid var(--pb-line-strong); }
:where(.pb-css-activity-map) .am-segmented label.is-current { background: var(--pb-navy); color: #fff; }
:where(.pb-css-activity-map) .am-segmented label:focus-within { outline: 3px solid var(--pb-blue); outline-offset: -3px; }
:where(.pb-css-activity-map) .am-field { display: flex; flex-direction: column; gap: 6px; margin: 0; padding: 0; border: 0; min-width: 0; }
:where(.pb-css-activity-map) .am-field > label, :where(.pb-css-activity-map) .am-field > legend { font-size: 13px; line-height: 18px; font-weight: 700; color: var(--pb-ink); padding: 0; }
:where(.pb-css-activity-map) .am-select { position: relative; min-width: 0; }
:where(.pb-css-activity-map) .am-select select, :where(.pb-css-activity-map) .am-field input, :where(.pb-css-activity-map) .am-search input {
  width: 100%; height: 44px; margin: 0; border: 1px solid var(--pb-line-strong); border-radius: var(--pb-radius);
  background: var(--pb-card); color: var(--pb-ink); font-size: 14px;
}
:where(.pb-css-activity-map) .am-select select { appearance: none; -webkit-appearance: none; padding: 0 34px 0 12px; font-weight: 700; font-size: 13px; cursor: pointer; }
:where(.pb-css-activity-map) .am-select .am-chevron { position: absolute; right: 12px; top: 15px; pointer-events: none; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-field input { padding: 0 12px; }
:where(.pb-css-activity-map) .am-search { display: flex; min-width: 0; }
:where(.pb-css-activity-map) .am-search input { border-right: 0; border-radius: var(--pb-radius) 0 0 var(--pb-radius); padding: 0 8px 0 12px; min-width: 0; flex: 1 1 auto; }
:where(.pb-css-activity-map) .am-search input::placeholder, :where(.pb-css-activity-map) .am-field input::placeholder { color: var(--pb-muted); opacity: 1; }
:where(.pb-css-activity-map) .am-search-go {
  flex: 0 0 44px; width: 44px; height: 44px; margin: 0; border: 0; border-radius: 0 var(--pb-radius) var(--pb-radius) 0;
  background: var(--pb-blue); color: #fff; display: flex; align-items: center; justify-content: center; cursor: pointer;
}
:where(.pb-css-activity-map) .am-search-go:hover { background: var(--pb-blue-hover); }
:where(.pb-css-activity-map) .am-row { display: flex; gap: 8px; }
:where(.pb-css-activity-map) .am-row > .am-select { flex: 1 1 auto; min-width: 0; }
:where(.pb-css-activity-map) .am-place > .am-county { flex: 0 0 124px; }
:where(.pb-css-activity-map) .am-place > .am-search { flex: 1 1 auto; }
:where(.pb-css-activity-map) .am-place .am-search input { padding: 0 6px 0 10px; }
:where(.pb-css-activity-map) .am-builder { flex: 0 0 auto; }
:where(.pb-css-activity-map) .am-more-toggle, :where(.pb-css-activity-map) .am-filters-open {
  flex: 0 0 auto; min-height: 44px; margin: 0; padding: 0 14px 0 12px; border: 1px solid var(--pb-line-strong);
  border-radius: var(--pb-radius); background: var(--pb-card); color: var(--pb-ink); font-size: 13px; font-weight: 700;
  display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
}
:where(.pb-css-activity-map) .am-more-hint { margin-left: auto; font-weight: 400; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-more-toggle[aria-expanded="true"] { border-color: var(--pb-blue); box-shadow: inset 0 0 0 1px var(--pb-blue); background: #eef3fe; }
:where(.pb-css-activity-map) .am-badge {
  display: inline-flex; align-items: center; justify-content: center; min-width: 20px; height: 20px; padding: 0 6px;
  border-radius: 10px; background: var(--pb-blue); color: #fff; font-size: 12px;
}
:where(.pb-css-activity-map) .am-chips { margin: 0; padding: 0; border: 0; min-width: 0; display: flex; flex-wrap: wrap; gap: 6px; }
:where(.pb-css-activity-map) .am-chip-choice {
  min-height: 44px; padding: 0 12px; border: 1px solid var(--pb-line); border-radius: 22px; background: var(--pb-page);
  color: var(--pb-ink); font-size: 13px; font-weight: 700; display: inline-flex; align-items: center; cursor: pointer;
}
:where(.pb-css-activity-map) .am-chip-choice.is-current { background: var(--pb-navy); border-color: var(--pb-navy); color: #fff; gap: 6px; }
:where(.pb-css-activity-map) .am-chip-choice.am-choice-refused.is-current { background: var(--am-refused-dark); border-color: var(--am-refused-dark); }
:where(.pb-css-activity-map) .am-decision .am-chips { gap: 6px; }
:where(.pb-css-activity-map) .am-decision .am-chip-choice { background: var(--pb-card); border-color: var(--pb-line-strong); padding: 0 14px; }
:where(.pb-css-activity-map) .am-decision .am-chip-choice.is-current { color: #fff; }
:where(.pb-css-activity-map) .am-key { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 16px; font-size: 12px; line-height: 16px; color: #3c4c68; }
:where(.pb-css-activity-map) .am-key span { display: inline-flex; align-items: center; gap: 6px; }
:where(.pb-css-activity-map) .am-key-mark {
  display: inline-grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; border: 1px solid #fff;
  background: var(--pb-blue); font: 700 11px/1 var(--pb-font); font-style: normal; color: #fff;
}
:where(.pb-css-activity-map) .am-key-refused { background: var(--pb-refused); }
:where(.pb-css-activity-map) .am-key-refused::after { content: ""; width: 7px; height: 2px; border-radius: 1px; background: #fff; }
:where(.pb-css-activity-map) .am-key-appealed { background: var(--pb-appealed); border-radius: 2px; transform: rotate(45deg); width: 11px; height: 11px; }
:where(.pb-css-activity-map) .am-key-cluster { width: 20px; height: 20px; background: var(--pb-navy); }
:where(.pb-css-activity-map) .am-key-cluster-refused { background: var(--am-refused-dark); }
:where(.pb-css-activity-map) .am-chip-choice:focus-within { outline: 3px solid var(--pb-blue); outline-offset: 2px; }
:where(.pb-css-activity-map) .am-pro { border-top: 1px solid var(--pb-line); padding-top: 12px; font-size: 13px; line-height: 18px; }
:where(.pb-css-activity-map) .am-pro h2 { margin: 0; font-size: 13px; line-height: 18px; font-weight: 700; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-builders { list-style: none; margin: 4px 0 0; padding: 0; }
:where(.pb-css-activity-map) .am-builders li { display: flex; align-items: center; gap: 8px; min-height: 52px; border-bottom: 1px solid var(--pb-line); }
:where(.pb-css-activity-map) .am-builders li:last-child { border-bottom: 0; }
:where(.pb-css-activity-map) .am-builders li > div { flex: 1 1 auto; min-width: 0; }
:where(.pb-css-activity-map) .am-builder-name { margin: 0; font-size: 14px; line-height: 18px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
:where(.pb-css-activity-map) .am-builder-name a { color: var(--pb-ink); text-decoration: none; }
:where(.pb-css-activity-map) .am-builder-name a:hover { text-decoration: underline; }
:where(.pb-css-activity-map) .am-builder-count { margin: 2px 0 0; font-size: 13px; line-height: 18px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-builder-alert {
  flex: 0 0 auto; min-height: 44px; padding: 0 12px 0 10px; border: 1px solid var(--pb-line-strong); border-radius: var(--pb-radius);
  background: var(--pb-card); color: var(--pb-ink) !important; font-size: 13px; font-weight: 700; display: inline-flex;
  align-items: center; gap: 6px; text-decoration: none;
}
:where(.pb-css-activity-map) .am-builders-empty { color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-hint { margin: 6px 0 0; font-size: 12px; line-height: 16px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-gate {
  margin: 0; border-top: 1px solid var(--pb-line); padding-top: 12px; display: flex; align-items: flex-start; gap: 8px;
  font-size: 13px; line-height: 18px; color: #3c4c68;
}
:where(.pb-css-activity-map) .am-gate svg { flex: 0 0 auto; margin-top: 1px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-gate a { font-weight: 700; display: inline-flex; align-items: center; min-height: 44px; margin: -13px 0; }
:where(.pb-css-activity-map) .am-muted-line { margin: 0; font-size: 13px; line-height: 18px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-area-alert {
  display: none; align-items: center; gap: 8px; min-height: 44px; padding: 0 18px 0 14px; border-radius: 22px; background: var(--pb-blue);
  color: #fff !important; box-shadow: 0 6px 18px rgba(10, 23, 51, 0.24); font-size: 14px; font-weight: 900; text-decoration: none; white-space: nowrap;
}
:where(.pb-css-activity-map) .am-area-alert:hover { background: var(--pb-blue-hover); }
:where(.pb-css-activity-map) .am-error { margin: 0; color: var(--pb-ink); font-weight: 700; }
:where(.pb-css-activity-map) .am-retry {
  display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px; border-radius: var(--pb-radius);
  background: var(--pb-blue); color: #fff !important; font-weight: 900; text-decoration: none;
}
:where(.pb-css-activity-map) .am-qualification { margin: 0; font-size: 13px; line-height: 18px; color: var(--pb-muted); }

/* ---- Filters: one <details> disclosure in the panel ---- */
:where(.pb-css-activity-map) .am-more { border: 1px solid var(--pb-line-strong); border-radius: var(--pb-radius); background: var(--pb-card); }
:where(.pb-css-activity-map) .am-more > summary { list-style: none; width: 100%; border: 0; border-radius: var(--pb-radius); }
:where(.pb-css-activity-map) .am-more > summary::-webkit-details-marker { display: none; }
:where(.pb-css-activity-map) .am-more > summary .am-chevron { position: static; margin-left: 4px; transition: transform 0.15s ease; }
:where(.pb-css-activity-map) .am-more[open] > summary { border-bottom: 1px solid var(--pb-line); border-radius: var(--pb-radius) var(--pb-radius) 0 0; }
:where(.pb-css-activity-map) .am-more[open] > summary .am-chevron { transform: rotate(180deg); }
:where(.pb-css-activity-map) .am-more-fields { padding: 12px; display: flex; flex-direction: column; gap: 12px; }
:where(.pb-css-activity-map) .am-about-head h2 { margin: 0; font-size: 16px; line-height: 20px; font-weight: 700; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-close {
  width: 44px; height: 44px; margin: 0 -12px 0 0; border: 0; background: transparent; color: var(--pb-ink);
  display: flex; align-items: center; justify-content: center; cursor: pointer;
}
:where(.pb-css-activity-map) .am-check { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: 14px; line-height: 20px; color: var(--pb-ink); cursor: pointer; }
:where(.pb-css-activity-map) .am-check input { width: 20px; height: 20px; margin: 0; accent-color: var(--pb-blue); }
:where(.pb-css-activity-map) .am-more-actions { display: flex; gap: 8px; margin-top: 2px; }
:where(.pb-css-activity-map) .am-apply, :where(.pb-css-activity-map) .am-clear {
  flex: 1 1 0; min-height: 44px; margin: 0; border-radius: var(--pb-radius); font-size: 14px; font-weight: 900;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer; text-decoration: none;
}
:where(.pb-css-activity-map) .am-apply { border: 0; background: var(--pb-blue); color: #fff; }
:where(.pb-css-activity-map) .am-clear { border: 1px solid var(--pb-line-strong); background: var(--pb-card); color: var(--pb-ink) !important; }

/* ---- List ---- */
:where(.pb-css-activity-map) .am-list { background: var(--pb-card); border-radius: var(--pb-radius); box-shadow: var(--am-shadow); display: flex; flex-direction: column; overflow: hidden; }
:where(.pb-css-activity-map) .am-handle { display: none; }
:where(.pb-css-activity-map) .am-list-head { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; padding: 16px 20px 14px; border-bottom: 1px solid var(--pb-line); }
:where(.pb-css-activity-map) .am-list-head h2 { margin: 0; flex: 1 1 auto; min-width: 0; font-size: 15px; line-height: 20px; font-weight: 700; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-sheet-toggle {
  margin: 0; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-align: left; cursor: default;
}
:where(.pb-css-activity-map) .am-list-meta { font-weight: 400; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-showas { display: none; }
:where(.pb-css-activity-map) .am-pills { display: none; }
:where(.pb-css-activity-map) .am-scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
:where(.pb-css-activity-map) .am-cards { list-style: none; margin: 0; padding: 0; }
:where(.pb-css-activity-map) .am-card { border-bottom: 1px solid var(--pb-line); background: var(--pb-card); cursor: pointer; }
:where(.pb-css-activity-map) .am-card[aria-current="true"] { box-shadow: inset 4px 0 0 var(--pb-blue); }
:where(.pb-css-activity-map) .am-card article {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; column-gap: 8px; align-items: center; padding: 14px 10px 14px 20px;
}
:where(.pb-css-activity-map) .am-card-meta { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 13px; line-height: 18px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-chip {
  display: inline-flex; align-items: center; height: 22px; padding: 0 8px; border-radius: 11px;
  background: var(--am-chip-bg); color: var(--am-chip-ink); font-size: 12px; font-weight: 700; white-space: nowrap;
}
:where(.pb-css-activity-map) .am-chip-refusals { background: var(--am-refused-tint); color: var(--am-refused-dark); }
:where(.pb-css-activity-map) .am-card-title {
  margin: 8px 0 0; font-size: 15px; line-height: 20px; font-weight: 700; color: var(--pb-ink);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: break-word;
}
:where(.pb-css-activity-map) .am-card-place { margin: 4px 0 0; font-size: 13px; line-height: 18px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-card-builder { margin: 6px 0 0; display: flex; align-items: center; gap: 6px; font-size: 13px; line-height: 18px; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-card-builder svg { color: var(--pb-muted); flex: 0 0 auto; }
:where(.pb-css-activity-map) .am-card-builder a {
  color: var(--pb-ink); font-weight: 700; text-decoration: underline; text-decoration-color: var(--pb-line-strong); text-underline-offset: 2px;
}
:where(.pb-css-activity-map) .am-card-builder.is-muted { color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-open {
  display: inline-flex; align-items: center; gap: 4px; min-height: 44px; padding: 0 10px; font-size: 14px; font-weight: 700;
  color: var(--pb-blue); text-decoration: none; white-space: nowrap;
}
:where(.pb-css-activity-map) .am-empty, :where(.pb-css-activity-map) .am-unlocated { margin: 0; padding: 14px 20px; font-size: 14px; line-height: 20px; color: var(--pb-muted); cursor: default; }
:where(.pb-css-activity-map) .am-unlocated { border-top: 1px solid var(--pb-line); font-size: 13px; }
:where(.pb-css-activity-map) .am-unlocated a, :where(.pb-css-activity-map) .am-unlocated button { font-weight: 700; display: inline-flex; align-items: center; min-height: 44px; margin: -13px 0; }
:where(.pb-css-activity-map) .am-next {
  flex: 0 0 auto; display: flex; align-items: center; justify-content: center; min-height: 44px; margin: 10px 20px 14px; border: 1px solid var(--pb-line-strong);
  border-radius: var(--pb-radius); background: var(--pb-card); color: var(--pb-ink) !important; font-size: 14px; font-weight: 700; text-decoration: none; cursor: pointer;
}

/* ---- About this map ---- */
:where(.pb-css-activity-map) .am-about-toggle {
  min-height: 44px; margin: 0; padding: 0 14px 0 10px; border: 0; border-radius: 22px; background: var(--pb-card);
  color: var(--pb-ink); box-shadow: var(--am-shadow-sm); font-size: 14px; font-weight: 700; display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
}
:where(.pb-css-activity-map) .am-about-toggle[aria-expanded="true"] { background: var(--pb-navy); color: #fff; }
:where(.pb-css-activity-map) .am-about { background: var(--pb-card); border-radius: var(--pb-radius); box-shadow: 0 18px 44px rgba(10, 23, 51, 0.28); padding: 6px 16px 10px; }
:where(.pb-css-activity-map) .am-about-head { display: flex; align-items: center; justify-content: space-between; }
:where(.pb-css-activity-map) .am-about ul { list-style: none; margin: 2px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
:where(.pb-css-activity-map) .am-about li { display: flex; align-items: flex-start; gap: 10px; font-size: 14px; line-height: 20px; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-about li svg { flex: 0 0 18px; margin-top: 1px; color: var(--pb-muted); }
:where(.pb-css-activity-map) .am-about > a { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin-top: 4px; font-size: 14px; font-weight: 700; text-decoration: none; }
:where(.pb-css-activity-map) .am-notice { margin: 0; padding: 10px 14px; border-radius: var(--pb-radius); background: var(--pb-card); box-shadow: var(--am-shadow-sm); font-size: 13px; line-height: 18px; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-notice:empty { display: none; }
:where(.pb-css-activity-map) .am-notice button { margin-left: 8px; min-height: 44px; padding: 0 14px; border: 0; border-radius: var(--pb-radius); background: var(--pb-blue); color: #fff; font-weight: 900; cursor: pointer; }
:where(.pb-css-activity-map) .am-phone-bar { display: none; }

/* ---- Map marks ---- */
:where(.pb-css-activity-map) .am-canvas { background: var(--am-land); }
:where(.pb-css-activity-map) .am-cluster {
  border-radius: 50%; background: var(--pb-navy); color: #fff; border: 2px solid #fff; display: grid; place-items: center;
  font: 700 12px/1 var(--pb-font); box-shadow: 0 2px 8px rgba(10, 23, 51, 0.3);
}
:where(.pb-css-activity-map) .am-cluster.is-homes { background: var(--pb-blue); }
:where(.pb-css-activity-map) .am-pin { border-radius: 50%; background: var(--pb-blue); border: 2px solid #fff; box-shadow: 0 1px 4px rgba(10, 23, 51, 0.4); }
:where(.pb-css-activity-map) .am-pin.is-refusals { background: var(--pb-refused); display: grid; place-items: center; }
:where(.pb-css-activity-map) .am-pin.is-refusals::after { content: ""; width: 50%; height: 2px; border-radius: 1px; background: #fff; }
:where(.pb-css-activity-map) .am-pin.is-appeals { background: var(--pb-appealed); border-radius: 3px; transform: rotate(45deg) scale(0.9); }
:where(.pb-css-activity-map) .am-cluster.is-refusals { background: var(--am-refused-dark); }
:where(.pb-css-activity-map) .am-pin.is-selected { border-width: 3px; box-shadow: 0 0 0 8px rgba(47, 111, 237, 0.22), 0 1px 4px rgba(10, 23, 51, 0.4); }
:where(.pb-css-activity-map) .am-stage .leaflet-container { font-family: var(--pb-font); background: var(--am-land); }
:where(.pb-css-activity-map) .am-stage .leaflet-control-zoom { border: 0; border-radius: var(--pb-radius); box-shadow: var(--am-shadow-sm); overflow: hidden; }
:where(.pb-css-activity-map) .am-stage .leaflet-control-zoom a { width: 44px; height: 44px; line-height: 44px; font-size: 20px; color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-stage .leaflet-control-attribution { font-size: 11px; line-height: 14px; color: #3c4c68; background: rgba(255, 255, 255, 0.88); border-radius: 6px 0 0 0; }
:where(.pb-css-activity-map) .am-stage .leaflet-control-attribution a { color: var(--pb-ink); }
:where(.pb-css-activity-map) .am-stage .leaflet-marker-icon:focus-visible { outline: 3px solid var(--pb-blue); outline-offset: 3px; }

/* ---- Without JavaScript: panel, then the list, in page flow ---- */
:where(.pb-css-activity-map) .am-nojs { max-width: var(--pb-container); margin: 0 auto; padding: 20px var(--pb-gutter) 40px; display: flex; flex-direction: column; gap: 16px; }
:where(.pb-css-activity-map) .am-nojs .am-canvas, :where(.pb-css-activity-map) .am-nojs .am-about-toggle, :where(.pb-css-activity-map) .am-nojs .am-close, :where(.pb-css-activity-map) .am-nojs .am-phone-bar, :where(.pb-css-activity-map) .am-nojs .am-showas { display: none; }
:where(.pb-css-activity-map) .am-nojs .am-scroll { overflow: visible; }

/* ---- Desktop and tablet ---- */
@media (min-width: 961px) {
  :where(.pb-css-activity-map) .am-js { height: calc(100vh - 64px); height: calc(100dvh - 64px); min-height: 520px; overflow: hidden; }
  :where(.pb-css-activity-map) .am-js .am-canvas { position: absolute; inset: 0; z-index: 0; }
  :where(.pb-css-activity-map) .am-js .am-panel {
    position: absolute; top: var(--am-inset); left: var(--am-inset); width: var(--am-panel-w); z-index: 1100;
    max-height: calc(100% - 2 * var(--am-inset) - 58px); overflow: auto;
  }
  :where(.pb-css-activity-map) .am-js .am-list {
    position: absolute; top: var(--am-inset); right: var(--am-inset); bottom: var(--am-inset); width: var(--am-list-w); z-index: 1100;
  }
  /* The panel can reach the bottom of the stage: About sits at the
     bottom left of the uncovered map, and its sheet opens above it. */
  :where(.pb-css-activity-map) .am-js .am-about-toggle { position: absolute; left: calc(var(--am-panel-w) + 28px); bottom: var(--am-inset); z-index: 1100; }
  :where(.pb-css-activity-map) .am-js .am-area-alert {
    display: inline-flex; position: absolute; top: var(--am-inset); z-index: 1100; transform: translateX(-50%);
    left: calc((var(--am-inset) + var(--am-panel-w) + 100% - var(--am-list-w) - var(--am-inset)) / 2);
  }

  :where(.pb-css-activity-map) .am-js .am-about { position: absolute; left: calc(var(--am-panel-w) + 28px); bottom: 66px; width: 340px; z-index: 1200; }
  :where(.pb-css-activity-map) .am-js .am-notice { position: absolute; left: calc(var(--am-panel-w) + 28px); right: calc(var(--am-inset) * 2 + var(--am-list-w)); top: 70px; z-index: 1100; }
  :where(.pb-css-activity-map) .am-js .leaflet-top.leaflet-right { right: calc(var(--am-list-w) + var(--am-inset) * 2 - 10px); top: 4px; }
  :where(.pb-css-activity-map) .am-js .leaflet-bottom.leaflet-right { right: calc(var(--am-list-w) + var(--am-inset) * 2); }
  :where(.pb-css-activity-map) .am-js .leaflet-bottom.leaflet-right .leaflet-control { margin: 0; }
}

/* ---- Phone (960px and narrower): map first, a bottom sheet for the list ---- */
@media (max-width: 960px) {
  :where(.pb-css-activity-map) .am-js { height: calc(100vh - 64px); height: calc(100dvh - 64px); min-height: 480px; overflow: hidden; }
  :where(.pb-css-activity-map) .am-js .am-canvas { position: absolute; inset: 0; z-index: 0; }
  :where(.pb-css-activity-map) .am-js .am-panel { background: transparent; box-shadow: none; overflow: visible; }
  :where(.pb-css-activity-map) .am-js .am-head .am-head-row .am-filters-done { display: none; }
  :where(.pb-css-activity-map) .am-js .am-body { padding: 0; }
  :where(.pb-css-activity-map) .am-js .am-body > :not(.am-place) { display: none; }
  :where(.pb-css-activity-map) .am-js .am-place > .am-county { display: none; }
  :where(.pb-css-activity-map) .am-js .am-search {
    position: absolute; top: var(--am-inset); left: var(--am-inset); right: var(--am-inset); z-index: 1100;
    height: 48px; padding: 2px; background: var(--pb-card); border-radius: var(--pb-radius); box-shadow: var(--am-shadow-sm); align-items: center;
  }
  :where(.pb-css-activity-map) .am-js .am-search input { border: 0; height: 44px; font-size: 16px; background: transparent; }
  :where(.pb-css-activity-map) .am-js .am-search-go { border-radius: 6px; }
  :where(.pb-css-activity-map) .am-js .am-phone-bar {
    display: flex; align-items: center; justify-content: space-between; gap: 8px;
    position: absolute; top: 126px; left: var(--am-inset); right: var(--am-inset); z-index: 1100; pointer-events: none;
  }
  /* The stage tabs float under the search bar as a segmented control. */
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-head {
    position: absolute; top: 70px; left: var(--am-inset); right: var(--am-inset); height: 48px; margin: 0; padding: 2px;
    overflow: hidden; z-index: 1100; background: var(--pb-card); border-radius: var(--pb-radius); box-shadow: var(--am-shadow-sm);
  }
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-head > :not(.am-tabs) {
    position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap;
  }
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-head .am-tabs { display: flex; margin: 0; padding: 0; gap: 2px; height: 44px; }
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-tab { border: 0; border-radius: 6px; color: var(--pb-ink); padding: 0 6px; min-height: 44px; }
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-tab.is-current { background: var(--pb-navy); color: #fff; }
  :where(.pb-css-activity-map) .am-js:not(.is-filters-open) .am-tab-rule { display: none; }
  :where(.pb-css-activity-map) .am-js .am-phone-bar > * { pointer-events: auto; }
  :where(.pb-css-activity-map) .am-pill {
    margin: 0; height: 32px; padding: 0 12px; border-radius: 16px; background: var(--pb-navy); color: #fff; font-size: 13px;
    font-weight: 700; display: inline-flex; align-items: center; box-shadow: 0 4px 12px rgba(10, 23, 51, 0.22);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0;
  }
  :where(.pb-css-activity-map) .am-pill strong { margin-right: 4px; }
  :where(.pb-css-activity-map) .am-js .am-filters-open { border: 0; box-shadow: var(--am-shadow-sm); font-size: 14px; }
  /* The Filters sheet: the whole panel as a modal over the stage. */
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-panel {
    position: absolute; inset: 0; z-index: 1300; background: var(--pb-card); overflow-y: auto; border-radius: 0; box-shadow: none;
  }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-head { padding: 18px 20px 0; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-head .am-tabs { display: flex; overflow-x: auto; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-head .am-head-row .am-filters-done {
    display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px; border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: var(--pb-radius); background: transparent; color: #fff; font-size: 14px; font-weight: 700; cursor: pointer;
  }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-body { padding: 16px 20px 24px; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-body > :not(.am-place) { display: revert; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-body > .am-row, :where(.pb-css-activity-map) .am-js.is-filters-open .am-body > .am-key { display: flex; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-body > .am-segmented { display: grid; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-place > .am-county { display: block; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-search { position: static; height: auto; padding: 0; box-shadow: none; }
  :where(.pb-css-activity-map) .am-js.is-filters-open .am-search input { border: 1px solid var(--pb-line-strong); border-right: 0; font-size: 16px; }
  /* The list as a bottom sheet: peek shows the handle, the header and one card. */
  :where(.pb-css-activity-map) .am-js .am-list {
    position: absolute; left: 0; right: 0; bottom: 0; height: 70%; z-index: 1100; border-radius: var(--pb-radius) var(--pb-radius) 0 0;
    box-shadow: 0 -6px 20px rgba(10, 23, 51, 0.18); transform: translateY(calc(100% - var(--am-peek)));
    transition: transform 0.22s ease;
  }
  :where(.pb-css-activity-map) .am-js .am-list.is-expanded { transform: translateY(0); }
  :where(.pb-css-activity-map) .am-js .am-list.is-dragging { transition: none; }
  :where(.pb-css-activity-map) .am-js .am-handle { display: block; position: absolute; top: 8px; left: 50%; width: 36px; height: 4px; margin-left: -18px; border-radius: 2px; background: var(--pb-line-strong); }
  :where(.pb-css-activity-map) .am-js .am-list-head { padding: 14px 14px 8px; border-bottom: 1px solid var(--pb-line); touch-action: none; }
  :where(.pb-css-activity-map) .am-js .am-sheet-toggle { cursor: pointer; min-height: 44px; width: 100%; }
  :where(.pb-css-activity-map) .am-js .am-list-label, :where(.pb-css-activity-map) .am-js .am-list-meta { display: block; }
  :where(.pb-css-activity-map) .am-js .am-list-meta { font-size: 13px; line-height: 18px; }
  :where(.pb-css-activity-map) .am-js .am-list-meta .am-dot { display: none; }
  :where(.pb-css-activity-map) .am-js .am-showas { display: flex; flex: 0 0 auto; height: 44px; border: 1px solid var(--pb-line-strong); border-radius: var(--pb-radius); overflow: hidden; }
  :where(.pb-css-activity-map) .am-js .am-showas button { margin: 0; padding: 0 14px; border: 0; background: var(--pb-card); color: var(--pb-ink); font-size: 14px; font-weight: 700; cursor: pointer; }
  :where(.pb-css-activity-map) .am-js .am-showas button[aria-pressed="true"] { background: var(--pb-navy); color: #fff; }
  :where(.pb-css-activity-map) .am-js .am-list.is-expanded .am-pills { display: flex; }
  :where(.pb-css-activity-map) .am-js .am-pills { flex: 0 0 auto; gap: 8px; padding: 12px 14px; overflow-x: auto; border-bottom: 1px solid var(--pb-line); scrollbar-width: none; }
  :where(.pb-css-activity-map) .am-js .am-pills > .am-select { flex: 0 0 auto; }
  :where(.pb-css-activity-map) .am-js .am-pills .am-select select { width: auto; border-radius: 22px; padding: 0 34px 0 14px; font-size: 14px; }
  :where(.pb-css-activity-map) .am-js .am-pills .am-more-toggle { border-radius: 22px; font-size: 14px; white-space: nowrap; }
  :where(.pb-css-activity-map) .am-js .am-card article { padding: 12px 4px 12px 14px; column-gap: 4px; }
  :where(.pb-css-activity-map) .am-js .am-about-toggle {
    position: absolute; left: var(--am-inset); bottom: calc(var(--am-peek) + 14px); z-index: 1050; width: 44px; padding: 0; justify-content: center;
  }
  :where(.pb-css-activity-map) .am-js .am-about-toggle span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  :where(.pb-css-activity-map) .am-js .am-about { position: absolute; left: var(--am-inset); right: var(--am-inset); bottom: calc(var(--am-peek) + 66px); z-index: 1200; }
  :where(.pb-css-activity-map) .am-js .am-notice { position: absolute; left: var(--am-inset); right: var(--am-inset); top: 178px; z-index: 1100; }
  :where(.pb-css-activity-map) .am-js .am-list .am-gate { border-top: 0; padding: 4px 14px 10px; flex: 0 0 auto; }
  /* At peek the sheet shows its header and one card; the gate line and the
     pills appear once it is pulled up. */
  :where(.pb-css-activity-map) .am-js .am-list:not(.is-expanded) .am-gate { display: none; }
  :where(.pb-css-activity-map) .am-js .leaflet-bottom.leaflet-right { bottom: var(--am-peek); }
  :where(.pb-css-activity-map) .am-js .leaflet-top.leaflet-right { top: 176px; }
}
@media (max-width: 960px) and (hover: none) and (pointer: coarse) {
  :where(.pb-css-activity-map) .am-js .leaflet-control-zoom { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  :where(.pb-css-activity-map) .am-js .am-list { transition: none; }
}

/* ---- source-collection ---- */

  :where(.pb-css-source-collection) .source-collection-grid{display:grid;gap:14px;margin:18px 0}:where(.pb-css-source-collection) .source-collection-row{padding:16px;border:1px solid #d9e3ee;border-radius:8px;min-width:0;background:#fff}:where(.pb-css-source-collection) .source-collection-row h3{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 14px;font-size:18px}:where(.pb-css-source-collection) .source-collection-row h3 span{font-size:12px;color:#536780}:where(.pb-css-source-collection) .source-collection-row dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0}:where(.pb-css-source-collection) .source-collection-row dt{font-size:12px;color:#536780}:where(.pb-css-source-collection) .source-collection-row dd{margin:3px 0 0;font-weight:650;overflow-wrap:anywhere}:where(.pb-css-source-collection) .source-collection-row p{font-size:13px;line-height:1.55;color:#43566e;margin:12px 0 0}:where(.pb-css-source-collection) .source-collection-row .source-collection-caution{color:#795322}@media(max-width:620px){:where(.pb-css-source-collection) .source-collection-row dl{grid-template-columns:1fr}}

/* ---- state-of-planning ---- */

  /* /state-of-planning/ on the approved surface: tokens from docs/design-tokens.md.
     Chart series colours are data colours, unchanged from the previous page. */
  :where(.pb-css-state-of-planning) .state-body .state-hero { grid-template-columns: 1fr; }
  :where(.pb-css-state-of-planning) .state-body .approved-hero .state-hero-meta { color: var(--pb-hero-text); }
  :where(.pb-css-state-of-planning) .state-body .approved-hero .state-hero-meta a { color: #fff; font-weight: 800; text-decoration: underline; text-underline-offset: 2px; }
  :where(.pb-css-state-of-planning) .state-body .kpi-strip.state-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  :where(.pb-css-state-of-planning) .state-body .state-kpis .metric-card strong { font-size: 32px; }
  :where(.pb-css-state-of-planning) .state-body .state-kpis .metric-card p { margin: 8px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-state-of-planning) .state-body .state-intro { max-width: 860px; margin: 16px 0 0; color: var(--pb-muted); font-size: 15px; line-height: 1.55; }
  :where(.pb-css-state-of-planning) .state-body .state-panel { display: grid; gap: 14px; margin-top: 18px; }
  :where(.pb-css-state-of-planning) .state-body .state-panel > .module-head { margin-bottom: 0; align-items: center; }
  :where(.pb-css-state-of-planning) .state-body .state-panel h2 { font-size: 24px; }
  :where(.pb-css-state-of-planning) .state-body .state-head-link { color: var(--pb-blue); font-size: 14px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-state-of-planning) .state-body .state-head-link:hover { text-decoration: underline; }
  :where(.pb-css-state-of-planning) .state-body .state-copy, :where(.pb-css-state-of-planning) .state-body .state-unavailable p { max-width: 860px; margin: 0; color: var(--pb-muted); font-size: 15px; line-height: 1.6; }
  :where(.pb-css-state-of-planning) .state-body .state-unavailable h2 { margin: 0; }
  :where(.pb-css-state-of-planning) .state-body .state-unavailable a { color: var(--pb-blue); font-weight: 800; }
  :where(.pb-css-state-of-planning) .state-body .state-chart-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  :where(.pb-css-state-of-planning) .state-body .state-chart-block { min-width: 0; margin: 0; padding: 14px; border: 1px solid var(--pb-line); border-radius: 8px; background: var(--pb-page); }
  :where(.pb-css-state-of-planning) .state-body .state-chart-block figcaption { margin-bottom: 8px; color: var(--pb-ink); font-weight: 900; }
  :where(.pb-css-state-of-planning) .state-body .state-chart { display: block; width: 100%; height: auto; overflow: visible; }
  :where(.pb-css-state-of-planning) .state-body .state-chart text { fill: var(--pb-muted); font-size: 12px; font-weight: 800; }
  :where(.pb-css-state-of-planning) .state-body .state-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
  :where(.pb-css-state-of-planning) .state-body .state-fact { min-width: 0; padding: 14px; border: 1px solid var(--pb-line); border-radius: 8px; background: var(--pb-page); }
  :where(.pb-css-state-of-planning) .state-body .state-fact span { display: block; color: var(--pb-muted); font-size: 12px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
  :where(.pb-css-state-of-planning) .state-body .state-fact strong { display: block; margin-top: 6px; color: var(--pb-ink); font-size: 26px; line-height: 1.1; }
  :where(.pb-css-state-of-planning) .state-body .state-fact p { margin: 6px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-state-of-planning) .state-body .state-pipeline-figure { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; }
  :where(.pb-css-state-of-planning) .state-body .state-pipeline-figure strong { color: var(--pb-ink); font-size: 44px; line-height: 1; }
  :where(.pb-css-state-of-planning) .state-body .state-pipeline-figure p { flex: 1 1 320px; margin: 0; color: var(--pb-ink); font-size: 17px; line-height: 1.5; }
  :where(.pb-css-state-of-planning) .state-body .state-progress { height: 12px; border-radius: 999px; background: var(--pb-line); overflow: hidden; }
  :where(.pb-css-state-of-planning) .state-body .state-progress span { display: block; height: 100%; border-radius: 999px; background: #1f7a55; }
  :where(.pb-css-state-of-planning) .state-body .state-note { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap { min-width: 0; overflow-x: auto; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap table { width: 100%; border-collapse: collapse; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap th, :where(.pb-css-state-of-planning) .state-body .state-table-wrap td { padding: 10px 12px; border-bottom: 1px solid var(--pb-line); color: var(--pb-ink); font-size: 15px; text-align: left; vertical-align: baseline; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap thead th { color: var(--pb-muted); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap tbody th { font-weight: 800; letter-spacing: 0; text-transform: none; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap td { font-variant-numeric: tabular-nums; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap tr:last-child th, :where(.pb-css-state-of-planning) .state-body .state-table-wrap tr:last-child td { border-bottom: 0; }
  :where(.pb-css-state-of-planning) .state-body .state-table-wrap caption { padding: 10px 12px 0; color: var(--pb-ink); font-weight: 900; text-align: left; }
  :where(.pb-css-state-of-planning) .state-body .state-methodology { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  :where(.pb-css-state-of-planning) .state-body .state-methodology article { border: 1px solid var(--pb-line); border-radius: 8px; padding: 14px; background: var(--pb-page); }
  :where(.pb-css-state-of-planning) .state-body .state-methodology h3 { margin: 0 0 6px; color: var(--pb-ink); font-size: 16px; }
  :where(.pb-css-state-of-planning) .state-body .state-methodology p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  :where(.pb-css-state-of-planning) .state-body .state-updated { margin: 0; color: var(--pb-muted); font-size: 14px; }
  @media (max-width: 960px) {
    :where(.pb-css-state-of-planning) .state-body .kpi-strip.state-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
    :where(.pb-css-state-of-planning) .state-body .state-chart-grid, :where(.pb-css-state-of-planning) .state-body .state-methodology { grid-template-columns: 1fr; }
    :where(.pb-css-state-of-planning) .state-body .state-facts { grid-template-columns: 1fr; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-state-of-planning) .state-body .state-hero h1 { font-size: var(--pb-h1-sm); }
    :where(.pb-css-state-of-planning) .state-body .state-kpis .metric-card { padding: 12px; }
    :where(.pb-css-state-of-planning) .state-body .state-kpis .metric-card strong { font-size: 24px; }
    :where(.pb-css-state-of-planning) .state-body .state-kpis .metric-card p { font-size: 12px; }
    :where(.pb-css-state-of-planning) .state-body .state-panel { padding: 14px; }
    :where(.pb-css-state-of-planning) .state-body .state-panel h2 { font-size: 20px; }
    :where(.pb-css-state-of-planning) .state-body .state-pipeline-figure strong { font-size: 36px; }
    :where(.pb-css-state-of-planning) .state-body .state-chart text { font-size: 20px; }
    :where(.pb-css-state-of-planning) .state-body .state-chart-legend { display: none; }
  }

/* ---- project-types ---- */

  /* /project-types/ index on the approved surface: tokens from docs/design-tokens.md only. */
  :where(.pb-css-project-types) .project-types-body .project-types-hero { grid-template-columns: 1fr; }
  :where(.pb-css-project-types) .project-types-body .type-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 12px; margin-top: 18px; }
  :where(.pb-css-project-types) .project-types-body .type-card { display: grid; grid-template-rows: auto 1fr auto; gap: 8px; min-width: 0; border: 1px solid var(--pb-line); border-radius: 8px; padding: 16px; background: #fff; color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-project-types) .project-types-body .type-card:hover, :where(.pb-css-project-types) .project-types-body .type-card:focus-visible { border-color: var(--pb-blue); box-shadow: 0 6px 18px rgba(15,33,71,.08); }
  :where(.pb-css-project-types) .project-types-body .type-card h2 { margin: 0; color: var(--pb-ink); font-size: 19px; line-height: 1.2; }
  :where(.pb-css-project-types) .project-types-body .type-card p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-project-types) .project-types-body .type-count { color: var(--pb-muted); font-size: 13px; }
  :where(.pb-css-project-types) .project-types-body .type-count strong { color: var(--pb-blue); font-size: 18px; }
  :where(.pb-css-project-types) .project-types-body .project-types-panel { margin-top: 18px; }
  :where(.pb-css-project-types) .project-types-body .project-types-fit a { color: var(--pb-blue); font-weight: 800; }
  :where(.pb-css-project-types) .project-types-body .project-types-actions { display: flex; flex-wrap: wrap; gap: 8px; }
  :where(.pb-css-project-types) .project-types-body .project-types-note { margin: 14px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.5; }
  @media (max-width: 560px) {
    :where(.pb-css-project-types) .project-types-body .approved-hero p { font-size: 14px; }
    :where(.pb-css-project-types) .project-types-body .type-grid { grid-template-columns: 1fr; gap: 8px; margin-top: 14px; }
    :where(.pb-css-project-types) .project-types-body .type-card { grid-template-rows: auto; padding: 12px 14px; }
    :where(.pb-css-project-types) .project-types-body .type-card p { display: none; }
    :where(.pb-css-project-types) .project-types-body .type-card { grid-template-columns: minmax(0, 1fr) auto; align-items: baseline; }
    :where(.pb-css-project-types) .project-types-body .type-card h2 { font-size: 17px; }
    :where(.pb-css-project-types) .project-types-body .project-types-actions .approved-button { flex: 1 1 calc(50% - 8px); }
  }

/* ---- print-sheet ---- */

        :where(.pb-css-print-sheet) .print-sheet-actions { margin: 16px 0 10px; }
        :where(.pb-css-print-sheet) .print-sheet { border: 1px solid #d7e0ee; border-radius: 10px; padding: 16px; background: #fff; }
        :where(.pb-css-print-sheet) .print-sheet h3 { margin: 0 0 10px; font-size: 18px; }
        :where(.pb-css-print-sheet) .print-sheet table { width: 100%; border-collapse: collapse; margin-bottom: 12px; table-layout: fixed; }
        :where(.pb-css-print-sheet) .print-sheet th, :where(.pb-css-print-sheet) .print-sheet td { border: 1px solid #c9d3e3; padding: 8px; text-align: left; vertical-align: top; font-size: 13px; }
        :where(.pb-css-print-sheet) .print-sheet-fields th { width: 34%; background: #f5f8fd; }
        :where(.pb-css-print-sheet) .print-sheet-fields tr td { height: 30px; }
        :where(.pb-css-print-sheet) .print-sheet-fields tr.tall td { height: 72px; }
        :where(.pb-css-print-sheet) .print-sheet-attendees th:first-child, :where(.pb-css-print-sheet) .print-sheet-attendees td:first-child { width: 32px; }
        :where(.pb-css-print-sheet) .print-sheet-attendees td { height: 28px; }
        :where(.pb-css-print-sheet) .print-sheet-signoff { margin: 8px 0 0; font-size: 13px; }
        @media print {
          body:where(.pb-css-print-sheet) *:not(:has(.print-sheet)):not(.print-sheet):not(.print-sheet *) { display: none !important; }
          body:where(.pb-css-print-sheet) *:has(.print-sheet) { display: block !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; max-width: none !important; }
          :where(.pb-css-print-sheet) .print-sheet { border: 0; padding: 0; }
        }
      
/* ---- guide-sources ---- */

        :where(.pb-css-guide-sources) .article-summary-box { display: grid; gap: 8px; max-width: 760px; margin: 4px 0 0; padding: 12px 14px; border: 1px solid rgba(255,255,255,.22); border-radius: 8px; background: rgba(255,255,255,.06); }
        :where(.pb-css-guide-sources) .article-summary-box div { display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 10px; align-items: baseline; }
        :where(.pb-css-guide-sources) .article-summary-box dt { margin: 0; color: var(--pb-kicker); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
        :where(.pb-css-guide-sources) .article-summary-box dd { margin: 0; color: #fff; font-size: 15px; font-weight: 400; line-height: 1.45; overflow-wrap: anywhere; }
        :where(.pb-css-guide-sources) .article-cite { margin: 12px 0 0; color: var(--pb-muted); font-size: 12px; font-weight: 800; }
        :where(.pb-css-guide-sources) .article-cite a { color: var(--pb-blue); }
        :where(.pb-css-guide-sources) .article-source-list { margin: 12px 0 0; padding-left: 24px; list-style: decimal; }
        :where(.pb-css-guide-sources) .article-source-list li { margin: 0 0 12px; color: var(--pb-ink); font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
        :where(.pb-css-guide-sources) .article-source-list li::marker { color: var(--pb-muted); font-weight: 800; }
        :where(.pb-css-guide-sources) .article-source-list a { color: var(--pb-blue); font-size: 14px; font-weight: 800; }
        :where(.pb-css-guide-sources) .article-source-list span { display: block; margin-top: 2px; color: var(--pb-muted); font-size: 12px; }
        @media (max-width: 560px) {
          :where(.pb-css-guide-sources) .article-summary-box { padding: 10px 12px; }
          :where(.pb-css-guide-sources) .article-summary-box div { grid-template-columns: 50px minmax(0, 1fr); gap: 8px; }
          :where(.pb-css-guide-sources) .article-summary-box dd { font-size: 14px; }
        }
      
/* ---- dashboard ---- */

      :where(.pb-css-dashboard) .dashboard-surface .pipeline-groups {
        display: grid;
        gap: 12px;
      }
      :where(.pb-css-dashboard) .dashboard-surface .pipeline-group {
        min-width: 0;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #f8fbff;
        padding: 12px;
      }
      :where(.pb-css-dashboard) .dashboard-surface .pipeline-group h3 {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        margin: 0 0 8px;
        color: var(--pb-ink);
        font-size: 15px;
        line-height: 1.3;
      }
      :where(.pb-css-dashboard) .dashboard-surface .pipeline-group h3 span {
        color: var(--pb-muted);
        font-size: 13px;
      }
    
/* ---- search-builder ---- */

      /* The result cards come from the Project Leads card renderer; its styles
         (extra_head below) read these tokens, which live on .lead-list-template there. */
      :where(.pb-css-search-builder) .search-builder-surface {
      }
      /* The older triage-card rules split the card body into two columns; the
         v2 card lays its body out as one column. */
      :where(.pb-css-search-builder) .search-builder-surface .search-result-list .pb-lead-main {
        grid-template-columns: minmax(0, 1fr) !important;
        align-content: start;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-hero {
        grid-template-columns: minmax(0, 1fr);
        padding: 22px 28px;
      }
      :where(.pb-css-search-builder) .search-builder-surface .keyword-bar {
        margin-top: 14px;
      }
      :where(.pb-css-search-builder) .search-count-line {
        display: flex;
        flex-wrap: wrap;
        gap: 6px 16px;
        align-items: baseline;
        justify-content: space-between;
        margin: 14px 2px 0;
        color: var(--pb-muted);
        font-size: 14px;
        line-height: 1.4;
      }
      :where(.pb-css-search-builder) .search-count-line p {
        margin: 0;
      }
      :where(.pb-css-search-builder) .search-count-line strong {
        color: var(--pb-ink);
        font-size: 16px;
      }
      :where(.pb-css-search-builder) .search-order {
        display: inline-flex;
        gap: 4px;
        align-items: center;
        font-weight: 800;
      }
      :where(.pb-css-search-builder) .search-order span {
        margin-right: 4px;
        color: var(--pb-muted);
        font-size: 12px;
        text-transform: uppercase;
        letter-spacing: .06em;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-order a {
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        padding: 5px 11px;
        background: #fff;
        color: var(--pb-blue);
        font-size: 13px;
        text-decoration: none;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-order a[aria-current] {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-layout {
        margin-top: 12px;
      }
      :where(.pb-css-search-builder) .search-filter-column, :where(.pb-css-search-builder) .search-results-column {
        min-width: 0;
      }
      :where(.pb-css-search-builder) .search-filter-drawer > summary {
        display: flex;
        flex-wrap: wrap;
        gap: 4px 10px;
        align-items: baseline;
        justify-content: space-between;
        list-style: none;
        cursor: pointer;
      }
      :where(.pb-css-search-builder) .search-filter-drawer > summary::-webkit-details-marker {
        display: none;
      }
      /* A span, not a heading: a heading inside <summary> can hide the toggle
         from screen readers (D16 O5). It keeps the old h2 look. */
      :where(.pb-css-search-builder) .search-filter-title {
        margin: 0;
        color: var(--pb-ink);
        font-size: 18px;
        font-weight: 700;
        line-height: 1.2;
      }
      :where(.pb-css-search-builder) .search-filter-title::after {
        content: " +";
        color: var(--pb-blue);
      }
      :where(.pb-css-search-builder) .search-filter-drawer[open] > summary .search-filter-title::after {
        content: " \2212";
      }
      /* .search-builder-panel input gives text inputs 44px and padding; the
         filter radios sit on the label's first line instead. */
      :where(.pb-css-search-builder) .search-filter-drawer .filter-taxonomy input[type="radio"] {
        min-height: 0;
        margin: 2px 0 0;
        padding: 0;
        flex: none;
      }
      :where(.pb-css-search-builder) .search-filter-state {
        color: var(--pb-muted);
        font-size: 13px;
        font-weight: 800;
      }
      :where(.pb-css-search-builder) .search-filter-drawer[open] > summary {
        margin-bottom: 14px;
      }
      /* Audience examples (R4-D): above the results with no query, below them with one. */
      :where(.pb-css-search-builder) .search-examples {
        /* A grid item: without min-width 0 the phone row below would widen
           the results column's track past the screen. */
        min-width: 0;
        margin: 0;
        padding: 16px 18px;
        border: 1px solid var(--pb-line);
        border-radius: var(--pb-radius);
        background: var(--pb-card);
      }
      :where(.pb-css-search-builder) .search-examples .module-head {
        margin-bottom: 10px;
      }
      :where(.pb-css-search-builder) .search-examples h2 {
        margin: 0;
        font-size: 18px;
      }
      :where(.pb-css-search-builder) .search-example-list {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
        gap: 8px;
        margin: 0;
        padding: 0;
        list-style: none;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-example-list a {
        display: grid;
        gap: 2px;
        height: 100%;
        box-sizing: border-box;
        padding: 10px 12px;
        border: 1px solid #d4e2fd;
        border-radius: var(--pb-radius);
        background: #f8fbff;
        color: var(--pb-ink);
        text-decoration: none;
      }
      :where(.pb-css-search-builder) .search-builder-surface .search-example-list a:hover, :where(.pb-css-search-builder) .search-builder-surface .search-example-list a:focus-visible {
        border-color: var(--pb-blue);
      }
      :where(.pb-css-search-builder) .search-example-list strong {
        color: var(--pb-blue);
        font-size: 15px;
      }
      :where(.pb-css-search-builder) .search-example-list span {
        color: var(--pb-muted);
        font-size: 13px;
        line-height: 1.4;
      }
      :where(.pb-css-search-builder) .search-handoff {
        margin-top: 18px;
      }
      :where(.pb-css-search-builder) .search-handoff-copy {
        margin: 0 0 10px;
        color: #33425f;
        line-height: 1.5;
      }
      :where(.pb-css-search-builder) .search-query-estimate {
        display: grid;
        gap: 4px;
        margin-top: 12px;
        padding: 12px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        background: #f8fbff;
      }
      :where(.pb-css-search-builder) .search-query-estimate strong {
        color: var(--pb-ink);
        font-size: 15px;
        line-height: 1.35;
      }
      :where(.pb-css-search-builder) .search-query-estimate span {
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 800;
      }
      :where(.pb-css-search-builder) .search-workflow-actions {
        margin-top: 12px;
      }
      :where(.pb-css-search-builder) .search-copy-link {
        border-color: #d4e2fd;
        background: #fff;
        color: #1746a2;
      }
      @media (min-width: 961px) {
        :where(.pb-css-search-builder) .search-builder-surface .search-layout {
          grid-template-areas: "filters results";
        }
        :where(.pb-css-search-builder) .search-results-column {
          grid-area: results;
        }
        :where(.pb-css-search-builder) .search-filter-column {
          grid-area: filters;
        }
        :where(.pb-css-search-builder) .search-filter-drawer > summary {
          cursor: default;
        }
        :where(.pb-css-search-builder) .search-filter-drawer > summary .search-filter-title::after {
          content: "";
        }
      }
      @media (max-width: 560px) {
        :where(.pb-css-search-builder) .search-builder-surface .search-hero {
          padding: 18px 14px;
        }
        :where(.pb-css-search-builder) .search-builder-surface .keyword-bar {
          grid-template-columns: minmax(0, 1fr) auto;
          padding: 8px;
        }
        :where(.pb-css-search-builder) .search-builder-surface .keyword-bar button {
          width: auto;
        }
        :where(.pb-css-search-builder) .search-query-estimate {
          padding: 10px;
        }
        /* Phones: the examples are one swipeable row, so with no query the
           first result still starts on the first screen. */
        :where(.pb-css-search-builder) .search-examples {
          padding: 12px 14px;
        }
        :where(.pb-css-search-builder) .search-example-list {
          display: flex;
          gap: 8px;
          overflow-x: auto;
          padding-bottom: 4px;
          scroll-snap-type: x proximity;
        }
        :where(.pb-css-search-builder) .search-example-list li {
          flex: 0 0 72%;
          scroll-snap-align: start;
        }
        :where(.pb-css-search-builder) .search-workflow-actions .approved-button, :where(.pb-css-search-builder) .search-workflow-actions button {
          width: 100%;
        }
      }
    
/* ---- sector-hub ---- */

      :where(.pb-css-sector-hub) .sector-hub-surface .approved-hero {
        grid-template-columns: minmax(0, 1fr) 360px;
      }
      :where(.pb-css-sector-hub) .sector-definition {
        display: grid;
        gap: 10px;
        min-width: 0;
        margin-top: 14px;
      }
      :where(.pb-css-sector-hub) .sector-definition dl, :where(.pb-css-sector-hub) .sector-signal-grid, :where(.pb-css-sector-hub) .sector-playbook-grid {
        display: grid;
        gap: 12px;
      }
      :where(.pb-css-sector-hub) .sector-definition dl {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        margin: 0;
      }
      :where(.pb-css-sector-hub) .sector-definition div, :where(.pb-css-sector-hub) .sector-signal-grid article, :where(.pb-css-sector-hub) .sector-playbook-grid article, :where(.pb-css-sector-hub) .sector-project-row {
        min-width: 0;
        padding: 14px;
        border: 1px solid var(--pb-line);
        border-radius: 8px;
        background: #fff;
      }
      :where(.pb-css-sector-hub) .sector-definition dt, :where(.pb-css-sector-hub) .sector-signal-grid span, :where(.pb-css-sector-hub) .sector-playbook-grid span {
        display: block;
        margin-bottom: 5px;
        color: var(--pb-muted);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .04em;
        text-transform: uppercase;
      }
      :where(.pb-css-sector-hub) .sector-definition dd {
        margin: 0;
        color: var(--pb-ink);
        font-weight: 900;
      }
      :where(.pb-css-sector-hub) .sector-hub-layout {
        grid-template-columns: minmax(0, 1fr) 330px;
      }
      :where(.pb-css-sector-hub) .sector-hub-layout > .surface-stack {
        width: 100%;
        max-width: 100%;
      }
      :where(.pb-css-sector-hub) .sector-hub-layout .lead-list {
        grid-template-columns: minmax(0, 1fr);
      }
      :where(.pb-css-sector-hub) .sector-signal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
      :where(.pb-css-sector-hub) .sector-playbook-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }
      :where(.pb-css-sector-hub) .sector-project-row {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 12px;
        align-items: center;
        color: var(--pb-ink);
        text-decoration: none;
      }
      :where(.pb-css-sector-hub) .sector-project-row strong {
        display: block;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-sector-hub) .sector-project-row span {
        color: var(--pb-muted);
        font-size: 13px;
      }
      :where(.pb-css-sector-hub) .sector-hub-surface[data-sector-state="sparse"] .sector-sparse-note {
        display: block;
      }
      :where(.pb-css-sector-hub) .sector-sparse-note {
        display: none;
        color: var(--pb-ink) !important;
        background: #fff7e6;
        border: 1px solid #f5d89b;
        border-radius: 8px;
        padding: 12px 14px;
      }
      @media (max-width: 960px) {
        :where(.pb-css-sector-hub) .sector-hub-surface .approved-hero, :where(.pb-css-sector-hub) .sector-hub-layout, :where(.pb-css-sector-hub) .sector-definition dl, :where(.pb-css-sector-hub) .sector-signal-grid, :where(.pb-css-sector-hub) .sector-playbook-grid {
          grid-template-columns: 1fr;
        }
      }
    
/* ---- shortlist ---- */

  /* /shortlist/ on the approved surface: tokens from docs/design-tokens.md only. */
  :where(.pb-css-shortlist) .shortlist-body .shortlist-hero { grid-template-columns: 1fr; padding: 22px 28px; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-hero h1 { font-size: var(--pb-h1); }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-saved, :where(.pb-css-shortlist) .shortlist-body .shortlist-next { display: grid; gap: 14px; margin-top: 18px; }
  :where(.pb-css-shortlist) .shortlist-body .module-head { margin-bottom: 0; align-items: center; }
  :where(.pb-css-shortlist) .shortlist-body .module-head h2 { font-size: 22px; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-count { display: inline-flex; align-items: center; min-height: 28px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 4px 10px; background: var(--pb-page); color: var(--pb-ink); font-size: 12px; font-weight: 900; white-space: nowrap; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results { display: grid; gap: 10px; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .empty { margin: 0; border: 1px dashed #d4e2fd; border-radius: 8px; padding: 16px; color: var(--pb-muted); font-size: 15px; line-height: 1.5; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 16px; align-items: center; margin: 0; border: 1px solid var(--pb-line); border-radius: 8px; padding: 14px 16px; background: #fff; box-shadow: none; transform: none; overflow: visible; content-visibility: visible; contain-intrinsic-size: auto; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card:hover { box-shadow: none; transform: none; border-color: #d4e2fd; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-topline { display: block; min-width: 0; margin: 0; padding: 0; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-meta { margin: 0 0 4px; color: var(--pb-muted); font-size: 12px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card h3 { margin: 0; font-size: 17px; line-height: 1.3; overflow-wrap: anywhere; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card h3 a { color: var(--pb-ink); text-decoration: none; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card h3 a:hover { color: var(--pb-blue); text-decoration: underline; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; border: 0; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions a, :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions button { display: inline-flex; align-items: center; justify-content: center; min-height: 40px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 8px 12px; background: #fff; color: var(--pb-blue); font: inherit; font-size: 14px; font-weight: 900; text-decoration: none; cursor: pointer; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions > * { flex: 0 0 auto; width: auto; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions a { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-actions a:hover { border-color: var(--pb-blue-hover); background: var(--pb-blue-hover); }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-actions button[disabled] { cursor: not-allowed; opacity: .55; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-status { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-links { display: flex; flex-wrap: wrap; gap: 8px; }
  :where(.pb-css-shortlist) .shortlist-body .shortlist-note { margin: 0; max-width: 760px; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  @media (max-width: 560px) {
    :where(.pb-css-shortlist) .shortlist-body .shortlist-hero { padding: 16px 14px; }
    :where(.pb-css-shortlist) .shortlist-body .shortlist-hero h1 { font-size: var(--pb-h1-sm); }
    :where(.pb-css-shortlist) .shortlist-body .shortlist-hero p { margin-top: 6px; font-size: 14px; }
    :where(.pb-css-shortlist) .shortlist-body .shortlist-saved, :where(.pb-css-shortlist) .shortlist-body .shortlist-next { margin-top: 14px; padding: 14px; }
    :where(.pb-css-shortlist) .shortlist-body .module-head h2 { font-size: 20px; }
    :where(.pb-css-shortlist) .shortlist-body .shortlist-results .lead-card { grid-template-columns: 1fr; padding: 12px; }
    :where(.pb-css-shortlist) .shortlist-body .shortlist-actions button, :where(.pb-css-shortlist) .shortlist-body .shortlist-links .approved-button { flex: 1 1 calc(50% - 8px); }
  }

/* ---- builder ---- */

:where(.pb-css-builder) .builders-page .bd-company{display:flex;flex-wrap:wrap;gap:6px 22px;margin:18px 0 0;padding:10px 14px;border-left:3px solid var(--pb-blue);background:#fff;border-radius:0 8px 8px 0;font-size:13px;color:var(--pb-muted)}
:where(.pb-css-builder) .builders-page .bd-company b{color:var(--pb-ink);font-weight:700}
:where(.pb-css-builder) .builders-page .bd-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
:where(.pb-css-builder) .builders-page .bd-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:18px;align-items:start;margin-top:18px}
:where(.pb-css-builder) .builders-page .bd-card{min-width:0;margin:18px 0 0;padding:18px;border:1px solid var(--pb-line);border-radius:8px;background:#fff}
:where(.pb-css-builder) .builders-page .bd-grid .bd-card{margin-top:0}
:where(.pb-css-builder) .builders-page .bd-grid > div{display:grid;gap:18px;min-width:0}
:where(.pb-css-builder) .builders-page .bd-card h2{margin:0 0 12px;color:var(--pb-ink);font-size:20px;line-height:1.2}
:where(.pb-css-builder) .builders-page .bd-card .module-head{margin-bottom:12px}
:where(.pb-css-builder) .builders-page #bd-map{height:470px;border-radius:8px;background:#e8eef9;z-index:1}
:where(.pb-css-builder) .builders-page .bd-bars{display:grid;gap:8px;margin:0;padding:0;list-style:none}
:where(.pb-css-builder) .builders-page .bd-bars li{display:grid;grid-template-columns:112px 1fr 38px;gap:10px;align-items:center;color:#33425f;font-size:14px}
:where(.pb-css-builder) .builders-page .bd-bars .track{height:8px;background:#e8eef9;border-radius:999px;overflow:hidden}
:where(.pb-css-builder) .builders-page .bd-bars .fill{height:8px;background:var(--pb-blue);border-radius:999px;min-width:3px}
:where(.pb-css-builder) .builders-page .bd-bars .val{text-align:right;font-variant-numeric:tabular-nums;color:var(--pb-ink);font-weight:800}
:where(.pb-css-builder) .builders-page .bd-bars a{color:var(--pb-blue);text-decoration:none}
:where(.pb-css-builder) .builders-page .bd-months{display:flex;align-items:flex-end;gap:6px;height:150px;padding:0 0 4px;border-bottom:1px solid var(--pb-line)}
:where(.pb-css-builder) .builders-page .bd-months div{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;font-size:11px;color:var(--pb-muted)}
:where(.pb-css-builder) .builders-page .bd-months .col{width:100%;max-width:34px;background:var(--pb-blue);border-radius:4px 4px 0 0;min-height:3px}
:where(.pb-css-builder) .builders-page .bd-months b{font-size:12px;color:var(--pb-ink);margin-bottom:3px}
:where(.pb-css-builder) .builders-page .bd-mlabels{display:flex;gap:6px;font-size:11px;color:var(--pb-muted);margin-top:5px}
:where(.pb-css-builder) .builders-page .bd-mlabels span{flex:1;text-align:center}
:where(.pb-css-builder) .builders-page table{width:100%;border-collapse:collapse}
:where(.pb-css-builder) .builders-page th, :where(.pb-css-builder) .builders-page td{text-align:left;padding:9px 10px;border-bottom:1px solid var(--pb-line);font-size:13px;vertical-align:top;color:#33425f}
:where(.pb-css-builder) .builders-page th{font-size:12px;color:var(--pb-muted);background:var(--pb-page)}
:where(.pb-css-builder) .builders-page td.num, :where(.pb-css-builder) .builders-page th.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
:where(.pb-css-builder) .builders-page .bd-table{overflow-x:auto}
:where(.pb-css-builder) .builders-page .bd-card td a{color:var(--pb-blue);text-decoration:none}:where(.pb-css-builder) .builders-page .bd-card td a:hover{text-decoration:underline}:where(.pb-css-builder) .builders-page .bd-refs{white-space:nowrap}
:where(.pb-css-builder) .builders-page .bd-gate{margin-top:18px}
:where(.pb-css-builder) .builders-page .bd-gate strong{display:block;margin-bottom:6px;color:#fff;font-size:18px}
:where(.pb-css-builder) .builders-page .bd-note{margin:12px 0 0;font-size:12px;color:var(--pb-muted);line-height:1.6}
:where(.pb-css-builder) .builders-page .bd-popup b{display:block;margin-bottom:4px}
:where(.pb-css-builder) .builders-page .bd-alert{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;border-left:3px solid var(--pb-blue)}
:where(.pb-css-builder) .builders-page .bd-alert > div{flex:1 1 320px;min-width:0}
:where(.pb-css-builder) .builders-page .bd-alert h2{margin:0 0 6px}
:where(.pb-css-builder) .builders-page .bd-alert p{margin:0;color:#33425f;font-size:14px;line-height:1.55}
:where(.pb-css-builder) .builders-page .bd-alert form{margin:0}
:where(.pb-css-builder) .builders-page .bd-alert-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
:where(.pb-css-builder) .builders-page .bd-alert-actions > *{flex:1 1 150px}
:where(.pb-css-builder) .builders-page .bd-alert-actions .approved-button, :where(.pb-css-builder) .builders-page .bd-alert-actions button{width:100%;color:var(--pb-blue)}
:where(.pb-css-builder) .builders-page .bd-alert-link{align-self:center;color:var(--pb-blue);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
:where(.pb-css-builder) .builders-page .bd-alert-link:hover, :where(.pb-css-builder) .builders-page .bd-alert-link:focus-visible{text-decoration:underline}
:where(.pb-css-builder) .builders-page .bd-gate .approved-inline-actions{margin-top:4px}
@media(max-width:960px){:where(.pb-css-builder) .builders-page .bd-grid{grid-template-columns:1fr}:where(.pb-css-builder) .builders-page #bd-map{height:360px}}
@media(max-width:860px){:where(.pb-css-builder) .builders-page .bd-hide-sm{display:none}}
@media(max-width:560px){:where(.pb-css-builder) .builders-page .bd-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;overflow:visible;padding-bottom:0}:where(.pb-css-builder) .builders-page .bd-kpis .metric-card{flex:none}}

/* ---- builders ---- */

/* Approved-surface tokens only (docs/design-tokens.md): ink var(--pb-ink), muted var(--pb-muted),
   line var(--pb-line), page var(--pb-page), CTA blue var(--pb-blue) (hover var(--pb-blue-hover)), navy var(--pb-navy),
   hero body var(--pb-hero-text). The font is the surface stack, inherited from .approved-surface. */
:where(.pb-css-builders) .builders-page .bl-shell{max-width:var(--pb-container);margin:0 auto;padding:28px var(--pb-gutter) 72px;color:var(--pb-ink)}
:where(.pb-css-builders) .builders-page .eyebrow{font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--pb-blue);margin:0 0 6px}
:where(.pb-css-builders) .builders-page h1{font-size:var(--pb-h1);line-height:1.08;letter-spacing:0;margin:0 0 10px;color:var(--pb-ink)}
:where(.pb-css-builders) .builders-page .bl-intro{max-width:760px;line-height:1.6;color:var(--pb-muted);margin:0 0 18px}
:where(.pb-css-builders) .builders-page .bl-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:0 0 16px}
:where(.pb-css-builders) .builders-page .bl-controls label{display:grid;gap:5px;font-size:13px;font-weight:800;color:var(--pb-ink)}
:where(.pb-css-builders) .builders-page .bl-controls select, :where(.pb-css-builders) .builders-page .bl-controls button{font:inherit;min-height:42px;border:1px solid #d4e2fd;border-radius:7px;padding:8px 11px;background:#fff;color:var(--pb-ink)}
:where(.pb-css-builders) .builders-page .bl-controls button{color:var(--pb-blue);font-weight:900;cursor:pointer}
:where(.pb-css-builders) .builders-page .bl-summary{font-size:13px;color:var(--pb-muted);margin:0 0 10px}
:where(.pb-css-builders) .builders-page table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--pb-line);border-radius:8px;overflow:hidden}
:where(.pb-css-builders) .builders-page th, :where(.pb-css-builders) .builders-page td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--pb-line);font-size:14px;color:var(--pb-ink)}
:where(.pb-css-builders) .builders-page th{font-size:12px;color:var(--pb-muted);background:var(--pb-page);font-weight:800}
:where(.pb-css-builders) .builders-page td.num, :where(.pb-css-builders) .builders-page th.num{text-align:right;font-variant-numeric:tabular-nums}
:where(.pb-css-builders) .builders-page td a{color:var(--pb-blue);font-weight:800;text-decoration:none}
:where(.pb-css-builders) .builders-page td a:hover{text-decoration:underline}
:where(.pb-css-builders) .builders-page .bl-rank{color:var(--pb-muted);width:44px}
:where(.pb-css-builders) .builders-page .bl-cta{margin:22px 0;padding:20px;border-radius:8px;background:var(--pb-navy);color:var(--pb-hero-text);line-height:1.55}
:where(.pb-css-builders) .builders-page .bl-cta strong{color:#fff}
:where(.pb-css-builders) .builders-page .bl-cta a.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:12px 10px 0 0;padding:10px 16px;border:1px solid var(--pb-blue);border-radius:7px;background:var(--pb-blue);color:#fff;font-size:14px;font-weight:900;text-decoration:none}
:where(.pb-css-builders) .builders-page .bl-cta a.button:hover{background:var(--pb-blue-hover);border-color:var(--pb-blue-hover)}
:where(.pb-css-builders) .builders-page .bl-cta a.secondary{background:transparent;border-color:rgba(255,255,255,.32);color:#fff}
:where(.pb-css-builders) .builders-page .bl-cta a.secondary:hover{background:transparent;border-color:#fff}
:where(.pb-css-builders) .builders-page .bl-note{font-size:12px;color:var(--pb-muted);line-height:1.6;margin-top:18px}
:where(.pb-css-builders) .builders-page .bl-staff{font-size:13px;margin:0 0 12px}
:where(.pb-css-builders) .builders-page .bl-staff a{color:var(--pb-blue)}
:where(.pb-css-builders) .builders-page .bl-years{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 14px}
:where(.pb-css-builders) .builders-page .bl-years a{padding:7px 14px;border:1px solid #d4e2fd;border-radius:999px;background:#fff;color:var(--pb-blue);font-weight:900;font-size:14px;text-decoration:none}
:where(.pb-css-builders) .builders-page .bl-years a[aria-current]{background:var(--pb-blue);border-color:var(--pb-blue);color:#fff}
@media(max-width:700px){:where(.pb-css-builders) .builders-page .bl-hide-sm{display:none}:where(.pb-css-builders) .builders-page th, :where(.pb-css-builders) .builders-page td{padding:10px 8px}}
@media(max-width:560px){:where(.pb-css-builders) .builders-page .bl-shell{padding:20px var(--pb-gutter-sm) 76px}:where(.pb-css-builders) .builders-page h1{font-size:var(--pb-h1-sm)}}

/* ---- briefing ---- */

      :where(.pb-css-briefing) .briefing-hub-page { background: var(--pb-page); overflow-x: hidden; }
      :where(.pb-css-briefing) .briefing-shell, :where(.pb-css-briefing) .briefing-shell * { box-sizing: border-box; }
      :where(.pb-css-briefing) .briefing-shell { max-width: var(--pb-container); margin: 0 auto; padding: 24px var(--pb-gutter) 46px; }
      :where(.pb-css-briefing) .briefing-hero { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 16px; margin-bottom: 16px; }
      :where(.pb-css-briefing) .briefing-title { min-width: 0; padding: 24px; border-radius: 8px; color: #fff; background: var(--pb-navy); }
      :where(.pb-css-briefing) .briefing-title .eyebrow { margin: 0 0 9px; color: #8fb2ff; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; overflow-wrap: anywhere; }
      :where(.pb-css-briefing) .briefing-title h1 { margin: 0; max-width: 780px; color: #fff; font-size: var(--pb-h1); line-height: var(--pb-h1-line); letter-spacing: 0; overflow-wrap: anywhere; }
      :where(.pb-css-briefing) .briefing-title p { margin: 13px 0 0; max-width: 760px; color: rgba(255,255,255,.78); font-size: 15px; line-height: 1.55; overflow-wrap: anywhere; }
      :where(.pb-css-briefing) .briefing-actions, :where(.pb-css-briefing) .briefing-panel, :where(.pb-css-briefing) .briefing-section, :where(.pb-css-briefing) .briefing-note, :where(.pb-css-briefing) .briefing-status-card { border: 1px solid #dfe7f4; border-radius: 8px; background: #fff; box-shadow: 0 1px 2px rgba(15,33,71,.05); }
      :where(.pb-css-briefing) .briefing-actions { display: grid; gap: 9px; padding: 16px; align-content: start; }
      :where(.pb-css-briefing) .briefing-actions a, :where(.pb-css-briefing) .briefing-actions button, :where(.pb-css-briefing) .briefing-link-button { min-height: 38px; border: 1px solid #d9e4f4; border-radius: 6px; padding: 10px 12px; background: #fff; color: var(--pb-ink); font: inherit; font-size: 13px; font-weight: 800; text-align: center; cursor: pointer; }
      /* Plain text links in a panel (archive rows, the edition bar) read as links; the resource
         shell used to colour them on the archive only (R4-E). */
      :where(.pb-css-briefing) .briefing-panel > a:not([class]), :where(.pb-css-briefing) .briefing-panel > p > a:not([class]) { color: var(--pb-blue); font-weight: 800; }
      :where(.pb-css-briefing) .briefing-actions .primary, :where(.pb-css-briefing) .briefing-link-button.primary { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
      :where(.pb-css-briefing) .briefing-status-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; }
      :where(.pb-css-briefing) .briefing-status-card { min-width: 0; padding: 14px; }
      :where(.pb-css-briefing) .briefing-status-card span { display: block; color: var(--pb-muted); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-status-card strong { display: block; margin-top: 6px; color: var(--pb-ink); font-size: 15px; line-height: 1.25; }
      :where(.pb-css-briefing) .briefing-status-card p { margin: 8px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
      :where(.pb-css-briefing) .briefing-status-card a { color: #1746a2; font-weight: 900; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
      :where(.pb-css-briefing) .briefing-filter-context { display: none; align-items: center; justify-content: space-between; gap: 12px; margin: 0 0 16px; padding: 12px 14px; border: 1px solid #cfe0ff; border-radius: 8px; background: #f8fbff; }
      :where(.pb-css-briefing) .briefing-filter-context.is-active { display: flex; }
      :where(.pb-css-briefing) .briefing-filter-context strong { display: block; color: var(--pb-ink); font-size: 14px; }
      :where(.pb-css-briefing) .briefing-filter-context p { margin: 4px 0 0; color: var(--pb-muted); font-size: 12px; line-height: 1.4; }
      :where(.pb-css-briefing) .briefing-filter-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
      :where(.pb-css-briefing) .briefing-filter-chip { display: inline-flex; align-items: center; min-height: 26px; border: 1px solid #cfe0ff; border-radius: 999px; padding: 5px 9px; background: #eaf1ff; color: #1746a2; font-size: 11px; font-weight: 900; }
      :where(.pb-css-briefing) .briefing-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 16px; }
      :where(.pb-css-briefing) .briefing-metric { padding: 14px; border: 1px solid #dfe7f4; border-radius: 8px; background: #fff; }
      :where(.pb-css-briefing) .briefing-metric span { display: block; color: var(--pb-muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-metric strong { display: block; margin-top: 5px; color: var(--pb-ink); font-size: 24px; line-height: 1.05; }
      :where(.pb-css-briefing) .briefing-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 340px); gap: 16px; align-items: start; }
      :where(.pb-css-briefing) .briefing-main { display: grid; gap: 16px; grid-column: 1; justify-self: stretch; width: 100%; max-width: 100%; min-width: 0; margin: 0; overflow: hidden; }
      :where(.pb-css-briefing) .briefing-section { min-width: 0; overflow: hidden; }
      :where(.pb-css-briefing) .briefing-section-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px; border-bottom: 1px solid var(--pb-line); }
      :where(.pb-css-briefing) .briefing-section-head h2 { margin: 0; color: var(--pb-ink); font-size: 17px; line-height: 1.25; }
      :where(.pb-css-briefing) .briefing-section-head p { margin: 3px 0 0; color: var(--pb-muted); font-size: 13px; }
      :where(.pb-css-briefing) .briefing-chip { display: inline-flex; min-height: 24px; align-items: center; border-radius: 999px; padding: 4px 9px; background: #eef2fa; color: var(--pb-ink); font-size: 11px; font-weight: 900; white-space: nowrap; }
      :where(.pb-css-briefing) .briefing-card-stack { display: grid; gap: 12px; padding: 14px; }
      :where(.pb-css-briefing) .briefing-card-stack .briefing-compact-card.lead-card--triage { display: grid !important; grid-template-columns: minmax(min(120px, 34%), 120px) minmax(0, 1fr); gap: 0; align-items: stretch; width: 100%; max-width: 100%; min-width: 0; padding: 0; overflow: hidden; }
      :where(.pb-css-briefing) .briefing-card-stack .lead-intent-rail { min-height: 0; border-right: 1px solid var(--pb-line); }
      :where(.pb-css-briefing) .briefing-card-stack .lead-card-main { min-width: 0; display: grid; gap: 8px; padding: 14px 0; }
      :where(.pb-css-briefing) .briefing-card-stack .briefing-compact-card.lead-card--triage > .lead-card-main { grid-template-columns: minmax(0, 1fr) !important; padding: 14px; }
      :where(.pb-css-briefing) .briefing-source-note { margin: 0; color: var(--pb-muted); font-size: 12px; line-height: 1.35; }
      :where(.pb-css-briefing) .briefing-signal-item { display: grid; grid-column: 1 / -1 !important; gap: 10px; min-width: 0; }
      :where(.pb-css-briefing) .briefing-signal-title-row { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 12px; min-width: 0; padding-bottom: 8px; border-bottom: 2px solid var(--pb-ink); }
      :where(.pb-css-briefing) .briefing-signal-title-row h3 { flex: 1 1 360px; min-width: 0; margin: 0; color: var(--pb-ink); font-size: 18px; line-height: 1.22; letter-spacing: 0; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-title-row h3 a { color: inherit; text-decoration: none; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-title-row h3 a:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
      :where(.pb-css-briefing) .briefing-signal-category { flex: 0 0 auto; color: #1746a2; font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-signal-location { margin: 0; color: var(--pb-ink); font-size: 14px; font-weight: 900; line-height: 1.35; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-location strong { color: inherit; font-size: inherit; line-height: inherit; }
      :where(.pb-css-briefing) .briefing-signal-description { margin: 0; color: #203557; font-size: 14px; line-height: 1.48; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid #dfe7f4; background: #fbfdff; }
      :where(.pb-css-briefing) .briefing-signal-meta div { min-width: 0; padding: 8px 10px; border-right: 1px solid #dfe7f4; border-bottom: 1px solid #dfe7f4; }
      :where(.pb-css-briefing) .briefing-signal-meta div:nth-child(2n) { border-right: 0; }
      :where(.pb-css-briefing) .briefing-signal-meta div:nth-last-child(-n+2) { border-bottom: 0; }
      :where(.pb-css-briefing) .briefing-signal-meta dt { margin: 0 0 3px; color: var(--pb-muted); font-size: 11px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-signal-meta dd { margin: 0; color: #06172f; font-size: 13px; font-weight: 800; line-height: 1.35; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-source { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin: 0; color: var(--pb-muted); font-size: 12px; line-height: 1.35; }
      :where(.pb-css-briefing) .briefing-signal-source strong { color: var(--pb-ink); }
      :where(.pb-css-briefing) .briefing-signal-source a { color: #1746a2; font-weight: 900; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-issue-stack { gap: 12px; }
      :where(.pb-css-briefing) .briefing-digest-record { display: grid; grid-template-columns: minmax(190px, 260px) minmax(0, 1fr); gap: 0; min-width: 0; overflow: hidden; border: 1px solid #dfe7f4; border-left: 4px solid var(--pb-blue); border-radius: 8px; background: #fff; }
      :where(.pb-css-briefing) .briefing-signal-snapshot { display: grid; gap: 10px; align-content: start; min-width: 0; padding: 14px; border-right: 1px solid #cfe0ff; background: #eaf1ff; }
      :where(.pb-css-briefing) .briefing-signal-snapshot > span { color: var(--pb-muted); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-signal-snapshot > strong { color: var(--pb-ink); font-size: 17px; line-height: 1.2; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-signal-snapshot .briefing-signal-meta { grid-template-columns: 1fr; border-color: #cfe0ff; background: #f8fbff; }
      :where(.pb-css-briefing) .briefing-signal-snapshot .briefing-signal-meta div, :where(.pb-css-briefing) .briefing-signal-snapshot .briefing-signal-meta div:nth-child(2n), :where(.pb-css-briefing) .briefing-signal-snapshot .briefing-signal-meta div:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid #dfe7f4; }
      :where(.pb-css-briefing) .briefing-signal-snapshot .briefing-signal-meta div:last-child { border-bottom: 0; }
      :where(.pb-css-briefing) .briefing-signal-body { display: grid; gap: 10px; min-width: 0; padding: 14px; }
      :where(.pb-css-briefing) .briefing-digest-record .briefing-signal-title-row { padding-bottom: 0; border-bottom: 0; }
      :where(.pb-css-briefing) .briefing-digest-intel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; padding: 9px; border: 1px solid #cfe0ff; background: #f7faff; }
      :where(.pb-css-briefing) .briefing-digest-intel span { min-width: 0; color: #203557; font-size: 12px; line-height: 1.38; overflow-wrap: break-word; }
      :where(.pb-css-briefing) .briefing-digest-intel strong { display: block; margin-bottom: 3px; color: var(--pb-ink); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; }
      :where(.pb-css-briefing) .briefing-digest-people { display: grid; gap: 3px; margin: 0; color: #06172f; font-size: 13px; line-height: 1.35; }
      :where(.pb-css-briefing) .briefing-digest-people span { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 10px; }
      :where(.pb-css-briefing) .briefing-digest-people strong { font-style: italic; }
      :where(.pb-css-briefing) .briefing-compact-actions { display: flex; flex-wrap: wrap; grid-column: 1 / -1 !important; gap: 7px; width: auto !important; }
      :where(.pb-css-briefing) .briefing-compact-actions a, :where(.pb-css-briefing) .briefing-compact-actions button, :where(.pb-css-briefing) .briefing-compact-actions span { display: inline-flex; align-items: center; justify-content: center; min-height: 32px; border: 1px solid #d9e4f4; border-radius: 6px; background: #fff; color: var(--pb-ink); padding: 7px 10px; font-size: 12px; font-weight: 800; text-align: center; }
      :where(.pb-css-briefing) .briefing-compact-actions .primary { border-color: var(--pb-ink); background: var(--pb-ink); color: #fff; }
      :where(.pb-css-briefing) .briefing-rank-list { display: grid; gap: 8px; padding: 14px; }
      :where(.pb-css-briefing) .briefing-rank-row { display: grid; grid-template-columns: 42px minmax(0, 1fr) minmax(96px, 148px); gap: 12px; align-items: center; min-width: 0; overflow: hidden; padding: 12px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
      :where(.pb-css-briefing) .briefing-rank-row .rank { display: inline-flex; width: 32px; height: 32px; align-items: center; justify-content: center; border-radius: 999px; background: #eaf1ff; color: #1746a2; font-weight: 900; }
      :where(.pb-css-briefing) .briefing-rank-row > div { min-width: 0; overflow: hidden; }
      :where(.pb-css-briefing) .briefing-rank-row h3 { min-width: 0; margin: 0; color: var(--pb-ink); font-size: 15px; line-height: 1.25; }
      :where(.pb-css-briefing) .briefing-rank-row h3 a { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
      :where(.pb-css-briefing) .briefing-rank-row p { margin: 4px 0 0; color: var(--pb-muted); font-size: 12px; line-height: 1.35; }
      :where(.pb-css-briefing) .briefing-rank-row strong { min-width: 0; color: var(--pb-ink); font-size: 13px; text-align: right; overflow-wrap: anywhere; }
      :where(.pb-css-briefing) .briefing-side { display: grid; gap: 16px; grid-column: 2; min-width: 0; width: 100%; max-width: 340px; justify-self: stretch; position: static; }
      :where(.pb-css-briefing) .briefing-panel { min-width: 0; overflow: hidden; padding: 16px; }
      :where(.pb-css-briefing) .briefing-panel h2 { margin: 0 0 10px; color: var(--pb-ink); font-size: 16px; }
      :where(.pb-css-briefing) .briefing-panel p, :where(.pb-css-briefing) .briefing-note p { margin: 0 0 10px; color: var(--pb-muted); font-size: 13px; line-height: 1.5; }
      :where(.pb-css-briefing) .briefing-mini-list { display: grid; gap: 8px; }
      :where(.pb-css-briefing) .briefing-mini-list a { display: flex; justify-content: space-between; gap: 10px; min-width: 0; padding: 8px 10px; border: 1px solid var(--pb-line); border-radius: 6px; color: var(--pb-ink); font-size: 13px; font-weight: 800; }
      :where(.pb-css-briefing) .briefing-note { margin-top: 16px; padding: 16px; }
      :where(.pb-css-briefing) .briefing-shell[data-briefing-hub="weekly-digest"] .briefing-grid { grid-template-columns: minmax(0, 1fr); }
      :where(.pb-css-briefing) .briefing-shell[data-briefing-hub="weekly-digest"] .briefing-main { grid-column: 1; }
      :where(.pb-css-briefing) .briefing-shell[data-briefing-hub="weekly-digest"] .briefing-side { grid-column: 1; grid-template-columns: repeat(3, minmax(0, 1fr)); max-width: none; }
      :where(.pb-css-briefing) .briefing-shell[data-briefing-hub="weekly-digest"] .briefing-card-stack .briefing-compact-card.lead-card--triage { width: 100%; max-width: 100%; }
      @media (max-width: 980px) {
        :where(.pb-css-briefing) .briefing-hero, :where(.pb-css-briefing) .briefing-grid { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-main, :where(.pb-css-briefing) .briefing-side { grid-column: auto; max-width: 100%; }
        :where(.pb-css-briefing) .briefing-side { position: static; }
        :where(.pb-css-briefing) .briefing-shell[data-briefing-hub="weekly-digest"] .briefing-side { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-status-strip { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-filter-context { align-items: flex-start; flex-direction: column; }
        :where(.pb-css-briefing) .briefing-filter-chips { justify-content: flex-start; }
        :where(.pb-css-briefing) .briefing-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      }
      @media (max-width: 520px) {
        :where(.pb-css-briefing) .briefing-hub-page { overflow-x: hidden; }
        :where(.pb-css-briefing) .briefing-shell { width: 100%; max-width: 100%; padding: 14px var(--pb-gutter-sm) 34px; overflow-x: hidden; }
        :where(.pb-css-briefing) .briefing-hero, :where(.pb-css-briefing) .briefing-title, :where(.pb-css-briefing) .briefing-actions, :where(.pb-css-briefing) .briefing-status-strip, :where(.pb-css-briefing) .briefing-metrics, :where(.pb-css-briefing) .briefing-grid, :where(.pb-css-briefing) .briefing-main, :where(.pb-css-briefing) .briefing-side, :where(.pb-css-briefing) .briefing-section, :where(.pb-css-briefing) .briefing-panel, :where(.pb-css-briefing) .briefing-note { width: 100%; max-width: 100%; min-width: 0; }
        :where(.pb-css-briefing) .briefing-title { padding: 18px; overflow: hidden; }
        :where(.pb-css-briefing) .briefing-title h1 { max-width: 100%; font-size: var(--pb-h1-sm); line-height: var(--pb-h1-line); }
        :where(.pb-css-briefing) .briefing-title p { max-width: 100%; font-size: 14px; }
        :where(.pb-css-briefing) .briefing-actions { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-actions a, :where(.pb-css-briefing) .briefing-actions button, :where(.pb-css-briefing) .briefing-link-button { width: 100%; max-width: 100%; min-width: 0; }
        :where(.pb-css-briefing) .briefing-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        :where(.pb-css-briefing) .briefing-metric strong { font-size: 20px; }
        :where(.pb-css-briefing) .briefing-section-head { align-items: flex-start; flex-direction: column; }
        :where(.pb-css-briefing) .briefing-rank-row { grid-template-columns: 34px minmax(0, 1fr); }
        :where(.pb-css-briefing) .briefing-rank-row strong { grid-column: 2; text-align: left; }
        :where(.pb-css-briefing) .briefing-card-stack .briefing-compact-card.lead-card--triage { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-card-stack .lead-intent-rail { border-right: 0; border-bottom: 1px solid var(--pb-line); }
        :where(.pb-css-briefing) .briefing-card-stack .lead-card-main { padding: 14px; }
        :where(.pb-css-briefing) .briefing-card-stack { padding: 10px; overflow: hidden; }
        :where(.pb-css-briefing) .briefing-signal-title-row { display: grid; gap: 6px; }
        :where(.pb-css-briefing) .briefing-signal-title-row h3 { flex-basis: auto; font-size: 16px; }
        :where(.pb-css-briefing) .briefing-digest-record, :where(.pb-css-briefing) .briefing-signal-body, :where(.pb-css-briefing) .briefing-signal-title-row, :where(.pb-css-briefing) .briefing-signal-title-row h3, :where(.pb-css-briefing) .briefing-signal-location, :where(.pb-css-briefing) .briefing-signal-description, :where(.pb-css-briefing) .briefing-signal-source, :where(.pb-css-briefing) .briefing-digest-intel, :where(.pb-css-briefing) .briefing-digest-people { width: 100%; max-width: 100%; min-width: 0; overflow-wrap: anywhere; }
        :where(.pb-css-briefing) .briefing-signal-meta { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-signal-meta div, :where(.pb-css-briefing) .briefing-signal-meta div:nth-child(2n), :where(.pb-css-briefing) .briefing-signal-meta div:nth-last-child(-n+2) { border-right: 0; border-bottom: 1px solid #dfe7f4; }
        :where(.pb-css-briefing) .briefing-signal-meta div:last-child { border-bottom: 0; }
        :where(.pb-css-briefing) .briefing-digest-record { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-signal-snapshot { border-right: 0; border-bottom: 1px solid #cfe0ff; }
        :where(.pb-css-briefing) .briefing-signal-body { padding: 12px 10px; overflow: hidden; }
        :where(.pb-css-briefing) .briefing-signal-source a { word-break: break-word; overflow-wrap: anywhere; }
        :where(.pb-css-briefing) .briefing-digest-intel { grid-template-columns: 1fr; }
        :where(.pb-css-briefing) .briefing-digest-people span { grid-template-columns: 1fr; gap: 1px; }
      }
    
/* ---- case-study ---- */

  :where(.pb-css-case-study) .development-case-study .story-shell { max-width:var(--pb-container); margin:0 auto; padding:26px var(--pb-gutter) 64px; color:#213548; }
  :where(.pb-css-case-study) .development-case-study .story-shell * { box-sizing:border-box; }
  :where(.pb-css-case-study) .development-case-study .story-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 22px; color:#687b87; font-size:13px; }
  :where(.pb-css-case-study) .development-case-study .story-breadcrumbs a { color:#356277; text-decoration:none; }
  :where(.pb-css-case-study) .development-case-study .story-hero { position:relative; overflow:hidden; padding:40px; border-radius:18px; background:#102b3b; color:#fff; }
  :where(.pb-css-case-study) .development-case-study .story-hero::after { content:""; position:absolute; width:320px; height:320px; border:1px solid rgba(103,206,183,.15); border-radius:50%; right:-125px; top:-145px; pointer-events:none; }
  :where(.pb-css-case-study) .development-case-study .story-eyebrow { margin:0 0 14px; font-size:11px; font-weight:750; letter-spacing:.13em; text-transform:uppercase; color:#75d3bd; }
  :where(.pb-css-case-study) .development-case-study .story-hero h1 { max-width:850px; margin:0; font-size:var(--pb-h1); font-weight:750; line-height:var(--pb-h1-line); letter-spacing:-.035em; color:#fff; overflow-wrap:anywhere; }
  :where(.pb-css-case-study) .development-case-study .story-location { margin:15px 0 26px; color:#bacdd6; font-size:14px; }
  :where(.pb-css-case-study) .development-case-study .story-hero h2 { max-width:800px; margin:0 0 14px; color:#fff; font-size:clamp(21px,2.5vw,29px); line-height:1.3; letter-spacing:-.015em; font-weight:600; }
  :where(.pb-css-case-study) .development-case-study .story-introduction { max-width:830px; margin:0; font-size:17px; line-height:1.7; color:#d5e3e9; }
  :where(.pb-css-case-study) .development-case-study .story-hero-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; margin-top:28px; padding-top:23px; border-top:1px solid rgba(255,255,255,.15); }
  :where(.pb-css-case-study) .development-case-study .story-reviewed { margin:0; color:#bdd1d9; font-size:13px; line-height:1.5; }
  :where(.pb-css-case-study) .development-case-study .story-actions { display:flex; flex-wrap:wrap; gap:10px; }
  :where(.pb-css-case-study) .development-case-study .story-action { display:inline-flex; justify-content:center; align-items:center; min-height:43px; padding:10px 16px; border:1px solid #75d3bd; border-radius:8px; font-size:13px; font-weight:700; text-decoration:none; background:#75d3bd; color:#10352e; }
  :where(.pb-css-case-study) .development-case-study .story-action.secondary { background:transparent; border-color:#597583; color:#f1f8fa; }
  :where(.pb-css-case-study) .development-case-study .story-grid { display:grid; grid-template-columns:minmax(0,1fr) 310px; grid-template-areas:"timeline outcome"; gap:38px; margin-top:32px; align-items:start; }
  :where(.pb-css-case-study) .development-case-study .story-main, :where(.pb-css-case-study) .development-case-study .story-aside { min-width:0; }
  :where(.pb-css-case-study) .development-case-study .story-main { grid-area:timeline; }
  :where(.pb-css-case-study) .development-case-study .story-aside { grid-area:outcome; }
  :where(.pb-css-case-study) .development-case-study .story-section { margin-top:36px; }
  :where(.pb-css-case-study) .development-case-study .story-section:first-child { margin-top:0; }
  :where(.pb-css-case-study) .development-case-study .story-section-heading { margin:0 0 8px; font-size:25px; line-height:1.3; font-weight:730; letter-spacing:-.025em; color:#15364a; }
  :where(.pb-css-case-study) .development-case-study .story-section-intro { margin:0 0 24px; color:#607482; font-size:14px; line-height:1.65; }
  :where(.pb-css-case-study) .development-case-study .story-timeline { list-style:none; padding:0; margin:0; }
  :where(.pb-css-case-study) .development-case-study .story-event { position:relative; margin:0 0 0 7px; padding:0 0 30px 26px; border-left:2px solid #d8e4e7; }
  :where(.pb-css-case-study) .development-case-study .story-event:last-child { padding-bottom:4px; border-color:transparent; }
  :where(.pb-css-case-study) .development-case-study .story-event::before { content:""; position:absolute; left:-7px; top:5px; width:12px; height:12px; border:3px solid #fff; border-radius:50%; background:#6d8797; box-shadow:0 0 0 1px #cbdce2; }
  :where(.pb-css-case-study) .development-case-study .story-event[data-kind="setback"]::before { background:#bd6b39; box-shadow:0 0 0 1px #e4ba99; }
  :where(.pb-css-case-study) .development-case-study .story-event[data-kind="completion"]::before, :where(.pb-css-case-study) .development-case-study .story-event[data-kind="permission"]::before { background:#198472; box-shadow:0 0 0 1px #9dccc0; }
  :where(.pb-css-case-study) .development-case-study .story-event-date { display:block; margin:0 0 7px; color:#527083; font-size:12px; font-weight:700; line-height:1.5; }
  :where(.pb-css-case-study) .development-case-study .story-event h3 { margin:0 0 9px; color:#193a4e; font-size:19px; line-height:1.4; font-weight:700; }
  :where(.pb-css-case-study) .development-case-study .story-event p { margin:0 0 11px; color:#455e6e; font-size:15px; line-height:1.75; }
  :where(.pb-css-case-study) .development-case-study .story-event .story-reference { display:block; margin:0 0 12px; color:#617783; font-size:12px; line-height:1.55; overflow-wrap:anywhere; }
  :where(.pb-css-case-study) .development-case-study .story-citations { display:flex; flex-wrap:wrap; gap:7px 13px; }
  :where(.pb-css-case-study) .development-case-study .story-citations a { display:inline-flex; align-items:center; min-height:28px; color:#14796b; font-size:12px; font-weight:650; line-height:1.5; text-decoration:underline; text-decoration-color:#adcfc5; text-underline-offset:3px; overflow-wrap:anywhere; }
  :where(.pb-css-case-study) .development-case-study .story-citations a::after { content:"↗"; margin-left:5px; font-size:13px; }
  :where(.pb-css-case-study) .development-case-study .story-internal-links { margin:14px 0 10px; }
  :where(.pb-css-case-study) .development-case-study .story-link-label { display:block; margin-bottom:7px; color:#526e7e; font-size:11px; font-weight:700; }
  :where(.pb-css-case-study) .development-case-study .story-record-actions { display:flex; flex-wrap:wrap; gap:8px; }
  :where(.pb-css-case-study) .development-case-study .story-record-link { display:inline-flex; align-items:center; min-height:40px; padding:9px 12px; border:1px solid #c7dcd6; border-radius:7px; background:#f0f7f5; color:#185b4e; font-size:12px; font-weight:700; line-height:1.5; text-decoration:none; overflow-wrap:anywhere; }
  :where(.pb-css-case-study) .development-case-study .story-record-link:hover { background:#e2f0eb; border-color:#91b9ac; }
  :where(.pb-css-case-study) .development-case-study .story-event .story-link-note { margin:8px 0 12px; font-size:12px; line-height:1.6; color:#657b89; }
  :where(.pb-css-case-study) .development-case-study .story-record-register { list-style:none; padding:0; margin:0; border-top:1px solid #dce6e9; }
  :where(.pb-css-case-study) .development-case-study .story-record-register li { padding:17px 0; border-bottom:1px solid #dce6e9; }
  :where(.pb-css-case-study) .development-case-study .story-record-register a { color:#185b4e; font-size:15px; font-weight:700; line-height:1.6; text-underline-offset:3px; }
  :where(.pb-css-case-study) .development-case-study .story-record-register p { margin:6px 0 0; font-size:13px; line-height:1.7; color:#607482; }
  :where(.pb-css-case-study) .development-case-study .story-outcome { padding:23px; background:#edf6f3; border:1px solid #cfe4dc; border-radius:12px; }
  :where(.pb-css-case-study) .development-case-study .story-outcome .story-eyebrow { color:#2b7f6b; font-size:10px; margin-bottom:10px; }
  :where(.pb-css-case-study) .development-case-study .story-outcome h2 { margin:0 0 12px; font-size:23px; line-height:1.25; letter-spacing:-.02em; color:#175444; }
  :where(.pb-css-case-study) .development-case-study .story-outcome p { margin:0; font-size:14px; line-height:1.75; color:#396052; }
  :where(.pb-css-case-study) .development-case-study .story-aside-section { padding:22px 2px; border-bottom:1px solid #dfe8eb; }
  :where(.pb-css-case-study) .development-case-study .story-aside-section h3 { margin:0 0 10px; color:#284b60; font-size:15px; line-height:1.45; }
  :where(.pb-css-case-study) .development-case-study .story-aside-section p { margin:0; color:#657b89; font-size:13px; line-height:1.8; }
  :where(.pb-css-case-study) .development-case-study .story-aside-nav { display:grid; gap:3px; padding:18px 0 0; }
  :where(.pb-css-case-study) .development-case-study .story-aside-nav a { display:block; padding:9px 0; color:#35677a; font-size:13px; text-decoration:none; }
  :where(.pb-css-case-study) .development-case-study .story-relations { display:grid; gap:12px; }
  :where(.pb-css-case-study) .development-case-study .story-relation { padding:20px; border:1px solid #dce6e9; border-radius:10px; background:#fff; }
  :where(.pb-css-case-study) .development-case-study .story-relation h3 { margin:0 0 10px; font-size:16px; color:#24485c; }
  :where(.pb-css-case-study) .development-case-study .story-relation p { margin:0 0 12px; color:#566e7d; font-size:14px; line-height:1.75; }
  :where(.pb-css-case-study) .development-case-study .story-gaps { padding:22px; border-radius:10px; background:#f5f7f8; }
  :where(.pb-css-case-study) .development-case-study .story-gaps h2 { margin-bottom:14px; font-size:21px; }
  :where(.pb-css-case-study) .development-case-study .story-gaps ul { margin:0; padding-left:18px; }
  :where(.pb-css-case-study) .development-case-study .story-gaps li { margin:0 0 12px; color:#586d79; font-size:13px; line-height:1.8; }
  :where(.pb-css-case-study) .development-case-study .story-gaps li:last-child { margin-bottom:0; }
  :where(.pb-css-case-study) .development-case-study .story-source-register { border:1px solid #d7e3e8; border-radius:10px; background:#fff; }
  :where(.pb-css-case-study) .development-case-study .story-source-register summary { padding:19px 21px; cursor:pointer; color:#254d64; font-size:16px; font-weight:700; line-height:1.4; }
  :where(.pb-css-case-study) .development-case-study .story-source-register[open] summary { border-bottom:1px solid #e2eaed; }
  :where(.pb-css-case-study) .development-case-study .story-source-register ul { list-style:none; margin:0; padding:0 21px; }
  :where(.pb-css-case-study) .development-case-study .story-source-register li { padding:17px 0; border-bottom:1px solid #e5ecef; }
  :where(.pb-css-case-study) .development-case-study .story-source-register li:last-child { border-bottom:0; }
  :where(.pb-css-case-study) .development-case-study .story-source-register a { color:#157d6e; font-size:14px; font-weight:700; line-height:1.5; text-underline-offset:3px; }
  :where(.pb-css-case-study) .development-case-study .story-source-register p { margin:7px 0 0; color:#627988; font-size:13px; line-height:1.75; }
  :where(.pb-css-case-study) .development-case-study .story-source-register small { display:block; margin-top:5px; color:#788b96; font-size:12px; }
  :where(.pb-css-case-study) .development-case-study .story-next { display:block; margin-top:30px; padding:22px; border-top:2px solid #c9e1d9; border-radius:0 0 10px 10px; background:#f0f7f5; text-decoration:none; }
  :where(.pb-css-case-study) .development-case-study .story-next span { display:block; color:#52796d; font-size:11px; letter-spacing:.08em; text-transform:uppercase; margin-bottom:8px; }
  :where(.pb-css-case-study) .development-case-study .story-next strong { display:block; color:#1f5549; font-size:18px; line-height:1.4; }
  :where(.pb-css-case-study) .development-case-study .story-next p { margin:7px 0 0; color:#527468; font-size:13px; line-height:1.6; }
  :where(.pb-css-case-study) .development-case-study .story-shell a:focus-visible, :where(.pb-css-case-study) .development-case-study .story-shell summary:focus-visible { outline:3px solid #c28a26; outline-offset:4px; }
  :where(.pb-css-case-study) .development-case-study .story-shell p, :where(.pb-css-case-study) .development-case-study .story-shell h2, :where(.pb-css-case-study) .development-case-study .story-shell h3 { overflow-wrap:break-word; }
  @media(min-width:901px) { :where(.pb-css-case-study) .development-case-study .story-aside { position:sticky; top:24px; } }
  @media(max-width:900px) {
    :where(.pb-css-case-study) .development-case-study .story-grid { grid-template-columns:minmax(0,1fr); grid-template-areas:"outcome" "timeline"; gap:28px; }
    :where(.pb-css-case-study) .development-case-study .story-aside { grid-row:1; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:18px; }
    :where(.pb-css-case-study) .development-case-study .story-aside-section { padding:8px 0; border:0; }
    :where(.pb-css-case-study) .development-case-study .story-aside-nav { display:none; }
  }
  @media(max-width:540px) {
    :where(.pb-css-case-study) .development-case-study .story-shell { padding:18px var(--pb-gutter-sm) 42px; }
    :where(.pb-css-case-study) .development-case-study .story-breadcrumbs { font-size:12px; margin-bottom:16px; }
    :where(.pb-css-case-study) .development-case-study .story-hero { padding:27px 23px; border-radius:12px; }
    :where(.pb-css-case-study) .development-case-study .story-hero h1 { font-size:var(--pb-h1-sm); }
    :where(.pb-css-case-study) .development-case-study .story-location { margin-bottom:21px; font-size:12px; line-height:1.6; }
    :where(.pb-css-case-study) .development-case-study .story-hero h2 { font-size:23px; }
    :where(.pb-css-case-study) .development-case-study .story-introduction { font-size:15px; line-height:1.75; }
    :where(.pb-css-case-study) .development-case-study .story-hero-footer { margin-top:23px; padding-top:20px; }
    :where(.pb-css-case-study) .development-case-study .story-actions { width:100%; }
    :where(.pb-css-case-study) .development-case-study .story-action { flex:1 1 130px; font-size:12px; padding:10px 12px; }
    :where(.pb-css-case-study) .development-case-study .story-grid { margin-top:23px; }
    :where(.pb-css-case-study) .development-case-study .story-aside { display:block; }
    :where(.pb-css-case-study) .development-case-study .story-outcome { padding:20px; }
    :where(.pb-css-case-study) .development-case-study .story-aside-section { padding:19px 2px 0; }
    :where(.pb-css-case-study) .development-case-study .story-event { padding-left:22px; padding-bottom:28px; }
    :where(.pb-css-case-study) .development-case-study .story-event h3 { font-size:18px; }
    :where(.pb-css-case-study) .development-case-study .story-event p { font-size:14px; }
    :where(.pb-css-case-study) .development-case-study .story-section-heading { font-size:23px; }
    :where(.pb-css-case-study) .development-case-study .story-relation, :where(.pb-css-case-study) .development-case-study .story-gaps { padding:18px; }
  }

/* ---- alerts ---- */

  /* /alerts/ on the approved surface: tokens from docs/design-tokens.md only. */
  :where(.pb-css-alerts) .alerts-body .alerts-hero { grid-template-columns: minmax(0, 1fr) minmax(220px, 280px); align-items: center; }
  :where(.pb-css-alerts) .alerts-body .alerts-promises { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-alerts) .alerts-body .alerts-promises li { position: relative; padding-left: 22px; color: #fff; font-size: 14px; font-weight: 800; line-height: 1.35; }
  :where(.pb-css-alerts) .alerts-body .alerts-promises li::before { content: ""; position: absolute; left: 2px; top: 4px; width: 10px; height: 6px; border-left: 2px solid var(--pb-kicker); border-bottom: 2px solid var(--pb-kicker); transform: rotate(-45deg); }
  :where(.pb-css-alerts) .alerts-body .alert-tabs { display: grid; gap: 14px; margin-top: 18px; }
  :where(.pb-css-alerts) .alerts-body .alert-tab-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; padding: 6px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-alerts) .alerts-body .alert-tab-list .alert-tab { min-width: 0; min-height: 44px; border: 1px solid transparent; border-radius: 7px; padding: 8px 10px; background: transparent; color: var(--pb-muted); font-size: 14px; font-weight: 900; line-height: 1.25; text-align: center; }
  :where(.pb-css-alerts) .alerts-body .alert-tab-list .alert-tab:hover { border-color: #d4e2fd; background: var(--pb-page); color: var(--pb-ink); }
  :where(.pb-css-alerts) .alerts-body .alert-tab-list .alert-tab[aria-selected="true"] { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-alerts) .alerts-body .alert-tab:focus-visible { outline: 3px solid var(--pb-ink); outline-offset: 2px; }
  :where(.pb-css-alerts) .alerts-body .alert-tab-panel { display: grid; gap: 14px; min-width: 0; }
  :where(.pb-css-alerts) .alerts-body .alert-tab-panel[hidden], :where(.pb-css-alerts) .alerts-body [data-alert-query-required][hidden], :where(.pb-css-alerts) .alerts-body .alert-empty-state[hidden], :where(.pb-css-alerts) .alerts-body .alert-filter-disclosure[hidden] { display: none !important; }
  :where(.pb-css-alerts) .alerts-body .alerts-panel, :where(.pb-css-alerts) .alerts-body .existing-alerts { display: grid; gap: 12px; min-width: 0; padding: 18px; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-alerts) .alerts-body .existing-alerts { margin-top: 18px; }
  :where(.pb-css-alerts) .alerts-body .alerts-panel > .module-head, :where(.pb-css-alerts) .alerts-body .existing-alerts > .module-head { margin-bottom: 0; }
  :where(.pb-css-alerts) .alerts-body .alerts-panel h2 { margin: 0; color: var(--pb-ink); font-size: 22px; line-height: 1.2; }
  :where(.pb-css-alerts) .alerts-body .alerts-panel p { margin: 0; }
  :where(.pb-css-alerts) .alerts-body .alerts-kicker { color: var(--pb-blue); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-alerts) .alerts-body .alert-empty-state > p:not(.alerts-kicker), :where(.pb-css-alerts) .alerts-body .alerts-note, :where(.pb-css-alerts) .alerts-body .privacy-note { max-width: 760px; color: var(--pb-muted); font-size: 14px; line-height: 1.55; }
  :where(.pb-css-alerts) .alerts-body .alerts-count, :where(.pb-css-alerts) .alerts-body .section-count { display: inline-flex; align-items: center; min-height: 28px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 4px 10px; background: var(--pb-page); color: var(--pb-ink); font-size: 12px; font-weight: 900; white-space: nowrap; }
  :where(.pb-css-alerts) .alerts-body .alerts-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
  :where(.pb-css-alerts) .alerts-body .button.primary { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; border: 1px solid var(--pb-blue); border-radius: 7px; padding: 10px 16px; background: var(--pb-blue); color: #fff; font: inherit; font-size: 15px; font-weight: 900; line-height: 1.2; cursor: pointer; }
  :where(.pb-css-alerts) .alerts-body .button.primary:hover { border-color: var(--pb-blue-hover); background: var(--pb-blue-hover); }
  :where(.pb-css-alerts) .alerts-body .button.primary[disabled] { cursor: not-allowed; opacity: .55; }
  :where(.pb-css-alerts) .alerts-body .alerts-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; margin: 0; }
  :where(.pb-css-alerts) .alerts-body .alerts-form > label, :where(.pb-css-alerts) .alerts-body .alerts-filter-grid > label { display: grid; gap: 6px; min-width: 0; color: var(--pb-ink); font-size: 13px; font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .alerts-form input[type="text"], :where(.pb-css-alerts) .alerts-body .alerts-form input[type="email"], :where(.pb-css-alerts) .alerts-body .alerts-form select { width: 100%; min-width: 0; min-height: 44px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 9px 10px; background: #fff; color: var(--pb-ink); font: inherit; font-size: 15px; font-weight: 400; }
  :where(.pb-css-alerts) .alerts-body .alerts-form input:focus-visible, :where(.pb-css-alerts) .alerts-body .alerts-form select:focus-visible { outline: 3px solid rgba(47, 111, 237, .3); border-color: var(--pb-blue); }
  :where(.pb-css-alerts) .alerts-body .alerts-consent, :where(.pb-css-alerts) .alerts-body .alert-setup-preview, :where(.pb-css-alerts) .alerts-body .alerts-form .alerts-actions, :where(.pb-css-alerts) .alerts-body .alerts-form .alerts-note, :where(.pb-css-alerts) .alerts-body .alerts-filters, :where(.pb-css-alerts) .alerts-body .alerts-choices, :where(.pb-css-alerts) .alerts-body .alert-account-email { grid-column: 1 / -1; }
  :where(.pb-css-alerts) .alerts-body .alerts-form > .alerts-consent { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: start; color: var(--pb-ink); font-size: 14px; font-weight: 400; line-height: 1.45; }
  :where(.pb-css-alerts) .alerts-body .alerts-consent input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--pb-blue); }
  :where(.pb-css-alerts) .alerts-body .alert-setup-preview { display: grid; gap: 4px; padding: 12px; border: 1px solid #d4e2fd; border-radius: 8px; background: var(--pb-page); }
  :where(.pb-css-alerts) .alerts-body .alert-setup-preview strong { color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-alerts) .alerts-body .alert-setup-preview span { color: var(--pb-muted); font-size: 13px; font-weight: 800; }
  :where(.pb-css-alerts) .alerts-body .alert-account-email { display: grid; align-content: center; min-height: 44px; border: 1px solid var(--pb-line); border-radius: 7px; padding: 10px; background: var(--pb-page); color: var(--pb-ink); font-size: 14px; font-weight: 800; overflow-wrap: anywhere; }
  :where(.pb-css-alerts) .alerts-body .alerts-filters { border: 1px solid var(--pb-line); border-radius: 8px; background: var(--pb-page); }
  :where(.pb-css-alerts) .alerts-body .alerts-filters > summary { min-height: 44px; padding: 12px 14px; color: var(--pb-blue); font-size: 14px; font-weight: 900; cursor: pointer; }
  :where(.pb-css-alerts) .alerts-body .alerts-filter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 14px; padding: 0 14px 14px; }
  :where(.pb-css-alerts) .alerts-body .alerts-choices { display: grid; gap: 8px; min-width: 0; margin: 0; border: 1px solid var(--pb-line); border-radius: 8px; padding: 12px 14px; background: var(--pb-page); }
  :where(.pb-css-alerts) .alerts-body .alerts-choices legend { padding: 0 4px; color: var(--pb-ink); font-size: 14px; font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .alerts-choices > p { color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-alerts) .alerts-body .alerts-choice-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px 10px; }
  :where(.pb-css-alerts) .alerts-body .alerts-choice-grid label { display: flex; gap: 8px; align-items: center; min-height: 36px; color: var(--pb-ink); font-size: 14px; font-weight: 400; }
  :where(.pb-css-alerts) .alerts-body .alerts-choice-grid input { width: 18px; height: 18px; margin: 0; accent-color: var(--pb-blue); }
  :where(.pb-css-alerts) .alerts-body .alert-query-chips { display: flex; flex-wrap: wrap; gap: 7px; }
  :where(.pb-css-alerts) .alerts-body .alert-query-chip { border: 1px solid #d4e2fd; border-radius: 999px; padding: 6px 10px; background: var(--pb-page); color: var(--pb-ink); font-size: 13px; font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .alert-filter-disclosure { display: grid; gap: 8px; border: 1px solid #f2d6ae; border-radius: 8px; padding: 12px; background: #fff7ed; color: #7a4610; }
  :where(.pb-css-alerts) .alerts-body .alert-filter-disclosure ul { display: grid; gap: 4px; margin: 0; padding-left: 18px; }
  :where(.pb-css-alerts) .alerts-body .alert-filter-disclosure p { color: #7a4610; font-size: 13px; line-height: 1.45; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-results { display: grid; gap: 10px; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-card { display: grid; gap: 6px; min-width: 0; border: 1px solid var(--pb-line); border-radius: 8px; padding: 14px; background: #fff; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-card .eyebrow { color: var(--pb-muted); font-size: 12px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-card h3 { margin: 0; color: var(--pb-ink); font-size: 17px; line-height: 1.3; overflow-wrap: anywhere; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-card a, :where(.pb-css-alerts) .alerts-body .alert-preview-results .card-secondary-action { justify-self: start; color: var(--pb-blue); font-weight: 900; text-decoration: none; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-results .alert-empty-state { display: grid; gap: 8px; border: 1px dashed #d4e2fd; border-radius: 8px; padding: 14px; }
  :where(.pb-css-alerts) .alerts-body .alert-preview-results .alert-empty-state h3 { margin: 0; font-size: 17px; }
  :where(.pb-css-alerts) .alerts-body .empty { color: var(--pb-muted); font-size: 14px; }
  :where(.pb-css-alerts) .alerts-body .alerts-table-wrap { overflow-x: auto; border: 1px solid var(--pb-line); border-radius: 8px; }
  :where(.pb-css-alerts) .alerts-body .alerts-table { width: 100%; border-collapse: collapse; background: #fff; }
  :where(.pb-css-alerts) .alerts-body .alerts-table th, :where(.pb-css-alerts) .alerts-body .alerts-table td { padding: 10px 12px; border-bottom: 1px solid var(--pb-line); color: var(--pb-ink); font-size: 14px; line-height: 1.45; text-align: left; vertical-align: top; }
  :where(.pb-css-alerts) .alerts-body .alerts-table thead th { color: var(--pb-muted); font-size: 12px; letter-spacing: .06em; text-transform: uppercase; }
  :where(.pb-css-alerts) .alerts-body .alerts-table tbody th { width: 150px; font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .alerts-table tr:last-child th, :where(.pb-css-alerts) .alerts-body .alerts-table tr:last-child td { border-bottom: 0; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-card { min-width: 0; border: 1px solid var(--pb-line); border-radius: 8px; padding: 14px; background: var(--pb-page); }
  :where(.pb-css-alerts) .alerts-body .existing-alert-card h3 { margin: 0; color: var(--pb-ink); font-size: 16px; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-card p { margin: 6px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 7px; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-meta span { border-radius: 999px; padding: 4px 8px; background: #fff; color: var(--pb-ink); font-size: 11px; font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .existing-alert-card > a { display: inline-flex; margin-top: 10px; color: var(--pb-blue); font-weight: 900; }
  :where(.pb-css-alerts) .alerts-body .status-message:empty { display: none; }
  :where(.pb-css-alerts) .alerts-body .alert-query-summary { display: grid; gap: 8px; min-width: 0; }
  :where(.pb-css-alerts) .alerts-body .alert-query-summary h3 { margin: 0; color: var(--pb-muted); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-alerts) .alerts-body .alerts-form .status-message { margin: 0; border: 0; padding: 0; background: none; box-shadow: none; }
  :where(.pb-css-alerts) .alerts-body .alerts-table tbody th { text-transform: none; letter-spacing: 0; }
  @media (max-width: 960px) {
    :where(.pb-css-alerts) .alerts-body .alerts-hero { grid-template-columns: 1fr; }
    :where(.pb-css-alerts) .alerts-body .alerts-choice-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  }
  @media (max-width: 620px) {
    :where(.pb-css-alerts) .alerts-body .alerts-form, :where(.pb-css-alerts) .alerts-body .alerts-filter-grid, :where(.pb-css-alerts) .alerts-body .existing-alert-grid { grid-template-columns: 1fr; }
    :where(.pb-css-alerts) .alerts-body .alerts-hero > div > p:not(.approved-kicker) { font-size: 15px; }
    :where(.pb-css-alerts) .alerts-body .alerts-promises { grid-template-columns: repeat(3, auto); gap: 6px 14px; }
    :where(.pb-css-alerts) .alerts-body .alerts-promises li { padding-left: 16px; font-size: 12px; }
    :where(.pb-css-alerts) .alerts-body .alerts-promises li::before { left: 0; top: 3px; width: 8px; height: 5px; }
    :where(.pb-css-alerts) .alerts-body .alert-tab-list .alert-tab { min-height: 42px; padding: 6px 8px; font-size: 13px; }
    :where(.pb-css-alerts) .alerts-body .alerts-panel, :where(.pb-css-alerts) .alerts-body .existing-alerts { padding: 14px; }
    :where(.pb-css-alerts) .alerts-body .alerts-panel h2 { font-size: 20px; }
    :where(.pb-css-alerts) .alerts-body .alerts-actions .approved-button, :where(.pb-css-alerts) .alerts-body .alerts-actions .button.primary { width: 100%; }
    :where(.pb-css-alerts) .alerts-body .alerts-table tbody th { width: auto; }
    :where(.pb-css-alerts) .alerts-body .alerts-choice-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    :where(.pb-css-alerts) .alerts-body .alerts-hero > div > p:not(.approved-kicker), :where(.pb-css-alerts) .alerts-body #alert-query-copy { display: none; }
  }

/* ---- board-preview ---- */

      :where(.pb-css-board-preview) .board-preview-page { background: #f4f7fb; color: #061626; }
      :where(.pb-css-board-preview) .board-preview-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(300px, .6fr); gap: 20px; padding: 34px clamp(18px, 4vw, 54px); background: #07111f; color: #fff; border-bottom: 4px solid var(--pb-blue); }
      :where(.pb-css-board-preview) .board-preview-hero h1 { margin: 8px 0 10px; font-size: var(--pb-h1); line-height: var(--pb-h1-line); letter-spacing: 0; max-width: 780px; }
      :where(.pb-css-board-preview) .board-preview-hero p { max-width: 760px; color: rgba(255,255,255,.78); }
      :where(.pb-css-board-preview) .board-preview-actions { align-self: stretch; display: grid; gap: 10px; padding: 16px; background: #ecfeff; color: #07111f; border: 1px solid #bfe9ee; }
      :where(.pb-css-board-preview) .board-preview-actions a, :where(.pb-css-board-preview) .board-preview-actions button { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 12px; border: 1px solid #cbd8ec; background: #fff; color: #07111f; font-weight: 800; text-decoration: none; cursor: pointer; }
      :where(.pb-css-board-preview) .board-preview-actions a.primary { background: var(--pb-blue); color: #fff; border-color: var(--pb-blue); }
      :where(.pb-css-board-preview) .board-preview-main { padding: 22px clamp(14px, 4vw, 54px) 42px; }
      :where(.pb-css-board-preview) .board-preview-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 16px; }
      :where(.pb-css-board-preview) .board-preview-summary div { background: #fff; border: 1px solid #d8e2f1; padding: 14px; min-width: 0; }
      :where(.pb-css-board-preview) .board-preview-summary span, :where(.pb-css-board-preview) .board-row-facts span, :where(.pb-css-board-preview) .board-row-kicker { display: block; color: #52647d; font-size: 12px; font-weight: 800; text-transform: uppercase; }
      :where(.pb-css-board-preview) .board-preview-summary strong { display: block; margin-top: 4px; font-size: 28px; color: #07111f; }
      :where(.pb-css-board-preview) .board-preview-controls { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin: 14px 0; padding: 12px; background: #fff; border: 1px solid #d8e2f1; }
      :where(.pb-css-board-preview) .board-preview-controls label { display: flex; align-items: center; gap: 8px; font-weight: 800; color: #07111f; }
      :where(.pb-css-board-preview) .board-preview-controls select { min-height: 42px; border: 1px solid #cbd8ec; background: #f8fbff; padding: 0 10px; font-weight: 800; }
      :where(.pb-css-board-preview) .board-filter-chips { display: flex; flex-wrap: wrap; gap: 8px; }
      :where(.pb-css-board-preview) .board-filter-chip { display: inline-flex; gap: 6px; align-items: center; border: 1px solid #cbd8ec; background: #fff; padding: 8px 10px; font-weight: 700; }
      :where(.pb-css-board-preview) .board-filter-chip strong { color: #52647d; text-transform: uppercase; font-size: 11px; }
      :where(.pb-css-board-preview) .board-filter-chip.is-muted { color: #66748a; }
      :where(.pb-css-board-preview) .board-preview-row { display: grid; grid-template-columns: 58px minmax(0, 1.15fr) minmax(220px, .55fr) 96px; gap: 0; margin-bottom: 12px; background: #fff; border: 1px solid #d8e2f1; box-shadow: 0 12px 24px rgba(15,33,71,.07); }
      :where(.pb-css-board-preview) .board-row-rank { display: grid; place-items: center; align-content: center; gap: 2px; background: #0f766e; color: #fff; font-weight: 900; }
      :where(.pb-css-board-preview) .board-row-rank span { font-size: 24px; }
      :where(.pb-css-board-preview) .board-row-rank small { color: #b8f4e9; text-transform: uppercase; font-weight: 900; }
      :where(.pb-css-board-preview) .board-row-main, :where(.pb-css-board-preview) .board-row-facts, :where(.pb-css-board-preview) .board-row-tools { padding: 14px; min-width: 0; }
      :where(.pb-css-board-preview) .board-row-main h3 { margin: 4px 0 8px; font-size: 22px; line-height: 1.08; letter-spacing: 0; }
      :where(.pb-css-board-preview) .board-row-main h3 a { color: #061626; text-decoration-thickness: 2px; }
      :where(.pb-css-board-preview) .board-row-main p { margin: 0 0 10px; color: #334155; }
      :where(.pb-css-board-preview) .board-row-meta { display: flex; flex-wrap: wrap; gap: 8px; }
      :where(.pb-css-board-preview) .board-row-meta span { background: #eef4ff; border: 1px solid #d8e2f1; padding: 6px 8px; font-weight: 800; color: #0f2d57; }
      :where(.pb-css-board-preview) .board-row-reason { padding-left: 10px; border-left: 3px solid #0f766e; }
      :where(.pb-css-board-preview) .board-preview-audit, :where(.pb-css-board-preview) .board-row-document { margin: 10px 0 0; padding: 10px; border: 1px solid #bfdbfe; background: #f0f7ff; color: #0f2d57; }
      :where(.pb-css-board-preview) .board-preview-audit strong { color: #07111f; }
      :where(.pb-css-board-preview) .board-row-document span { display: block; margin-bottom: 4px; color: #2563eb; font-size: 12px; font-weight: 900; text-transform: uppercase; }
      :where(.pb-css-board-preview) .board-row-document strong { display: block; color: var(--pb-ink); font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }
      :where(.pb-css-board-preview) .board-row-facts { display: grid; gap: 10px; background: #f8fbff; border-left: 1px solid #d8e2f1; border-right: 1px solid #d8e2f1; }
      :where(.pb-css-board-preview) .board-row-facts strong { display: block; color: #07111f; font-size: 16px; margin-top: 3px; overflow-wrap: anywhere; }
      :where(.pb-css-board-preview) .board-evidence { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 5px; }
      :where(.pb-css-board-preview) .board-evidence span { background: #fff; border: 1px solid #d8e2f1; color: #334155; padding: 5px 6px; text-transform: none; font-weight: 700; }
      :where(.pb-css-board-preview) .board-row-tools { display: grid; gap: 8px; align-content: center; background: #fff7ed; }
      :where(.pb-css-board-preview) .board-row-tools button { min-height: 36px; border: 1px solid #fed7aa; background: #fff; color: #713f12; font-weight: 800; cursor: pointer; }
      :where(.pb-css-board-preview) .board-empty { background: #fff; border: 1px dashed #cbd8ec; padding: 22px; }
      :where(.pb-css-board-preview) .board-memory-panel { display: grid; grid-template-columns: minmax(0, .8fr) minmax(280px, .7fr) minmax(300px, 1fr); gap: 12px; margin: 14px 0; padding: 14px; background: #07111f; color: #fff; border: 1px solid #19345f; }
      :where(.pb-css-board-preview) .board-memory-panel h2 { margin: 4px 0 8px; font-size: 22px; color: #fff; }
      :where(.pb-css-board-preview) .board-memory-panel p { margin: 0; color: rgba(255,255,255,.76); }
      :where(.pb-css-board-preview) .board-share-field { display: grid; gap: 8px; }
      :where(.pb-css-board-preview) .board-share-field label { color: #b8d5ff; font-weight: 900; font-size: 12px; text-transform: uppercase; }
      :where(.pb-css-board-preview) .board-share-field input { width: 100%; min-height: 42px; border: 1px solid #2c4b7a; background: #0d1d35; color: #fff; padding: 0 10px; font-weight: 700; min-width: 0; }
      :where(.pb-css-board-preview) .board-share-field button { min-height: 40px; border: 1px solid #82a8ec; background: var(--pb-blue); color: #fff; font-weight: 900; cursor: pointer; }
      :where(.pb-css-board-preview) .board-recent-list { display: grid; gap: 8px; align-content: start; }
      :where(.pb-css-board-preview) .board-recent-item { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 8px; align-items: center; padding: 9px; background: #0d1d35; border: 1px solid #2c4b7a; color: #fff; }
      :where(.pb-css-board-preview) .board-recent-item strong { display: block; color: #fff; overflow-wrap: anywhere; }
      :where(.pb-css-board-preview) .board-recent-item span { display: block; color: #b8d5ff; font-size: 12px; font-weight: 800; }
      :where(.pb-css-board-preview) .board-recent-item a { color: #fff; border: 1px solid #82a8ec; padding: 7px 8px; text-decoration: none; font-weight: 900; white-space: nowrap; }
      :where(.pb-css-board-preview) .board-next-panel { margin-top: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
      :where(.pb-css-board-preview) .board-next-panel section { background: #fff; border: 1px solid #d8e2f1; padding: 16px; }
      :where(.pb-css-board-preview) .board-next-panel h2 { margin: 0 0 8px; font-size: 20px; }
      :where(.pb-css-board-preview) .board-next-panel p { margin: 0; color: #52647d; }
      @media (max-width: 940px) {
        :where(.pb-css-board-preview) .board-preview-hero, :where(.pb-css-board-preview) .board-preview-row, :where(.pb-css-board-preview) .board-preview-summary, :where(.pb-css-board-preview) .board-memory-panel, :where(.pb-css-board-preview) .board-next-panel { grid-template-columns: minmax(0, 1fr); }
        :where(.pb-css-board-preview) .board-row-facts { border-left: 0; border-right: 0; border-top: 1px solid #d8e2f1; border-bottom: 1px solid #d8e2f1; }
        :where(.pb-css-board-preview) .board-row-tools { grid-template-columns: repeat(3, minmax(0, 1fr)); }
      }
      @media (max-width: 520px) {
        :where(.pb-css-board-preview) .board-preview-hero h1 { font-size: var(--pb-h1-sm); }
        :where(.pb-css-board-preview) .board-preview-main { padding-inline: 10px; }
        :where(.pb-css-board-preview) .board-row-tools { grid-template-columns: 1fr; }
      }
    
/* ---- appeals ---- */

  /* /appeals/ index on the approved surface: tokens from docs/design-tokens.md.
     Outcome colours encode the decision and are kept from the previous page. */
  :where(.pb-css-appeals) .appeals-body .visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
  :where(.pb-css-appeals) .appeals-body .approved-hero .appeals-hero-count { margin-top: 12px; color: #fff; font-size: 17px; }
  :where(.pb-css-appeals) .appeals-body .approved-hero .appeals-hero-count strong { font-size: 20px; }
  :where(.pb-css-appeals) .appeals-body .appeals-workspace { display: grid; grid-template-columns: 250px minmax(0, 1fr); grid-template-areas: "filters results"; gap: 18px; align-items: start; margin-top: 18px; }
  :where(.pb-css-appeals) .appeals-body .appeals-results { grid-area: results; min-width: 0; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-drawer { grid-area: filters; position: sticky; top: 12px; min-width: 0; border: 1px solid var(--pb-line); border-radius: 8px; background: #fff; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-drawer > summary { display: none; }
  :where(.pb-css-appeals) .appeals-body .appeals-filters { display: grid; gap: 14px; padding: 16px; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-heading { display: flex; justify-content: space-between; align-items: flex-end; padding-bottom: 12px; border-bottom: 1px solid var(--pb-line); }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-heading span { display: block; color: var(--pb-muted); font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-heading strong { display: block; margin-top: 2px; color: var(--pb-ink); font-size: 18px; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-heading a { color: var(--pb-blue); font-size: 13px; font-weight: 800; }
  :where(.pb-css-appeals) .appeals-body .appeals-filters > label, :where(.pb-css-appeals) .appeals-body .appeals-filters fieldset > label { display: grid; gap: 6px; color: var(--pb-ink); font-size: 13px; font-weight: 800; }
  :where(.pb-css-appeals) .appeals-body .appeals-filters input, :where(.pb-css-appeals) .appeals-body .appeals-filters select, :where(.pb-css-appeals) .appeals-body .appeals-sort select { width: 100%; min-width: 0; min-height: 42px; border: 1px solid #d4e2fd; border-radius: 7px; padding: 8px 9px; background: #fff; color: var(--pb-ink); font: inherit; font-size: 14px; font-weight: 400; }
  :where(.pb-css-appeals) .appeals-body .appeals-filters fieldset { display: grid; gap: 10px; margin: 0; border: 0; padding: 0; }
  :where(.pb-css-appeals) .appeals-body .appeals-filters legend { margin-bottom: 6px; color: var(--pb-ink); font-size: 13px; font-weight: 800; }
  :where(.pb-css-appeals) .appeals-body .appeals-scale-tabs { display: flex; gap: 4px; margin-bottom: 10px; border-bottom: 1px solid var(--pb-line); }
  :where(.pb-css-appeals) .appeals-body .appeals-scale-tabs a { display: flex; min-height: 42px; align-items: center; border-bottom: 3px solid transparent; padding: 0 12px; color: var(--pb-muted); font-size: 14px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-appeals) .appeals-body .appeals-scale-tabs a[aria-current="page"] { border-color: var(--pb-blue); color: var(--pb-ink); }
  :where(.pb-css-appeals) .appeals-body .appeals-results-bar { display: flex; flex-wrap: wrap; gap: 8px 10px; align-items: center; margin-bottom: 10px; border: 1px solid var(--pb-line); border-radius: 8px; padding: 8px 10px; background: #fff; }
  :where(.pb-css-appeals) .appeals-body .appeals-results-bar > strong { color: var(--pb-ink); font-size: 14px; white-space: nowrap; }
  :where(.pb-css-appeals) .appeals-body .appeals-active-filters { display: flex; flex: 1; flex-wrap: wrap; gap: 6px; align-items: center; }
  :where(.pb-css-appeals) .appeals-body .appeals-filter-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; border: 1px solid #d4e2fd; border-radius: 999px; padding: 5px 10px; background: var(--pb-page); color: var(--pb-ink); font-size: 12px; font-weight: 800; text-decoration: none; }
  :where(.pb-css-appeals) .appeals-body .appeals-clear { color: var(--pb-blue); font-size: 13px; font-weight: 800; white-space: nowrap; }
  :where(.pb-css-appeals) .appeals-body .appeals-sort { display: flex; gap: 6px; align-items: center; margin-left: auto; }
  :where(.pb-css-appeals) .appeals-body .appeals-sort label { color: var(--pb-muted); font-size: 12px; font-weight: 800; }
  :where(.pb-css-appeals) .appeals-body .appeals-sort select { width: 180px; min-height: 36px; font-size: 13px; }
  :where(.pb-css-appeals) .appeals-body .appeals-sort-submit { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  :where(.pb-css-appeals) .appeals-body .appeals-case-list { display: grid; gap: 10px; }
  :where(.pb-css-appeals) .appeals-body .appeals-case-row { display: grid; grid-template-columns: minmax(0, 1fr) 220px; border: 1px solid var(--pb-line); border-left: 4px solid var(--pb-blue); border-radius: 8px; background: #fff; overflow: hidden; }
  :where(.pb-css-appeals) .appeals-body .appeals-case-main { min-width: 0; padding: 16px 18px; }
  :where(.pb-css-appeals) .appeals-body .appeals-row-kicker { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; color: var(--pb-muted); font-size: 12px; font-weight: 700; }
  :where(.pb-css-appeals) .appeals-body .appeals-case-type { display: inline-flex; min-height: 26px; align-items: center; border-radius: 999px; padding: 3px 9px; background: var(--pb-page); color: var(--pb-ink); font-size: 11px; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
  :where(.pb-css-appeals) .appeals-body .appeals-case-main h3 { margin: 12px 0 4px; color: var(--pb-ink); font-size: 19px; line-height: 1.25; overflow-wrap: anywhere; }
  :where(.pb-css-appeals) .appeals-body .appeals-location { margin: 0; color: var(--pb-muted); font-size: 14px; font-weight: 700; }
  :where(.pb-css-appeals) .appeals-body .appeals-council-ref { margin: 8px 0 0; color: var(--pb-muted); font-size: 13px; }
  :where(.pb-css-appeals) .appeals-body .appeals-council-ref strong { color: var(--pb-ink); }
  :where(.pb-css-appeals) .appeals-body .appeals-description { margin: 10px 0 0; color: var(--pb-ink); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-appeals) .appeals-body .appeals-evidence-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
  :where(.pb-css-appeals) .appeals-body .appeals-evidence-tag { display: inline-flex; align-items: center; gap: 4px; border: 1px solid var(--pb-line); border-radius: 6px; padding: 4px 8px; background: var(--pb-page); color: var(--pb-ink); font-size: 12px; font-weight: 800; }
  :where(.pb-css-appeals) .appeals-body .appeals-evidence-tag small { font: inherit; font-weight: 400; color: var(--pb-muted); }
  :where(.pb-css-appeals) .appeals-body .appeals-case-side { display: flex; flex-direction: column; gap: 8px; min-width: 0; border-left: 1px solid var(--pb-line); padding: 14px; background: var(--pb-page); }
  :where(.pb-css-appeals) .appeals-body .appeals-outcome { display: inline-flex; width: fit-content; border-radius: 6px; padding: 5px 8px; background: var(--pb-line); color: var(--pb-ink); font-size: 12px; font-weight: 900; line-height: 1.3; }
  :where(.pb-css-appeals) .appeals-body .appeals-outcome-green { background: #e4f5eb; color: #17603c; }
  :where(.pb-css-appeals) .appeals-body .appeals-outcome-red { background: #fbe9e9; color: #8d2929; }
  :where(.pb-css-appeals) .appeals-body .appeals-outcome-amber { background: #fff2d8; color: #79530b; }
  :where(.pb-css-appeals) .appeals-body .appeals-outcome-violet { background: #eeeafd; color: #4b348e; }
  :where(.pb-css-appeals) .appeals-body .appeals-source-decision, :where(.pb-css-appeals) .appeals-body .appeals-duration { margin: 0; color: var(--pb-muted); font-size: 12px; line-height: 1.4; }
  :where(.pb-css-appeals) .appeals-body .appeals-source-decision span { display: block; color: var(--pb-muted); font-size: 10px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
  :where(.pb-css-appeals) .appeals-body .appeals-duration { color: var(--pb-ink); font-weight: 900; }
  :where(.pb-css-appeals) .appeals-body .appeals-match-state { margin: auto 0 0; border-radius: 6px; padding: 8px; background: #fff; color: var(--pb-muted); font-size: 12px; font-weight: 800; line-height: 1.35; }
  :where(.pb-css-appeals) .appeals-body .appeals-match-state.is-matched { color: var(--pb-blue); }
  :where(.pb-css-appeals) .appeals-body .appeals-primary-action { width: 100%; }
  :where(.pb-css-appeals) .appeals-body .appeals-secondary-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
  :where(.pb-css-appeals) .appeals-body .appeals-secondary-actions a { display: flex; min-height: 38px; align-items: center; justify-content: center; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-size: 12px; font-weight: 800; text-align: center; text-decoration: none; }
  :where(.pb-css-appeals) .appeals-body .appeals-empty { display: grid; justify-items: center; gap: 8px; border: 1px solid var(--pb-line); border-radius: 8px; padding: 30px; background: #fff; text-align: center; }
  :where(.pb-css-appeals) .appeals-body .appeals-empty h3 { margin: 0; color: var(--pb-ink); }
  :where(.pb-css-appeals) .appeals-body .appeals-empty p { margin: 0; color: var(--pb-muted); }
  :where(.pb-css-appeals) .appeals-body .appeals-pagination { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; justify-content: center; margin-top: 18px; }
  :where(.pb-css-appeals) .appeals-body .appeals-pagination a, :where(.pb-css-appeals) .appeals-body .appeals-pagination span { display: flex; min-width: 42px; min-height: 42px; align-items: center; justify-content: center; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font-size: 13px; font-weight: 900; text-decoration: none; }
  :where(.pb-css-appeals) .appeals-body .appeals-pagination a[aria-current="page"] { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
  :where(.pb-css-appeals) .appeals-body .appeals-pagination .appeals-page-direction { padding: 0 13px; }
  :where(.pb-css-appeals) .appeals-body .kpi-strip.appeals-kpis { grid-template-columns: repeat(5, minmax(0, 1fr)); margin-top: 22px; }
  :where(.pb-css-appeals) .appeals-body .appeals-kpis .metric-card strong { font-size: 22px; }
  :where(.pb-css-appeals) .appeals-body .appeals-kpis .metric-card p { margin: 6px 0 0; color: var(--pb-muted); font-size: 12px; line-height: 1.35; }
  :where(.pb-css-appeals) .appeals-body .appeals-provenance { margin: 18px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.55; }
  :where(.pb-css-appeals) .appeals-body .appeals-provenance a { color: var(--pb-blue); font-weight: 800; }
  @media (max-width: 960px) {
    :where(.pb-css-appeals) .appeals-body .appeals-workspace { grid-template-columns: 1fr; grid-template-areas: "results" "filters"; }
    :where(.pb-css-appeals) .appeals-body .appeals-filter-drawer { position: static; }
    :where(.pb-css-appeals) .appeals-body .appeals-filter-drawer > summary { display: flex; align-items: center; justify-content: space-between; min-height: 48px; padding: 0 14px; color: var(--pb-ink); font-weight: 900; cursor: pointer; }
    :where(.pb-css-appeals) .appeals-body .appeals-filter-drawer:not([open]) > .appeals-filters { display: none; }
    :where(.pb-css-appeals) .appeals-body .kpi-strip.appeals-kpis { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
    :where(.pb-css-appeals) .appeals-body .appeals-kpis .metric-card:last-child { grid-column: 1 / -1; }
  }
  @media (max-width: 768px) {
    :where(.pb-css-appeals) .appeals-body .appeals-case-row { grid-template-columns: 1fr; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-side { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 8px 10px; align-items: center; border-top: 1px solid var(--pb-line); border-left: 0; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-side > .appeals-outcome { grid-column: 1; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-side > .appeals-duration { grid-column: 2; text-align: right; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-side > .appeals-source-decision, :where(.pb-css-appeals) .appeals-body .appeals-case-side > .appeals-match-state, :where(.pb-css-appeals) .appeals-body .appeals-case-side > .appeals-primary-action { grid-column: 1 / -1; }
    :where(.pb-css-appeals) .appeals-body .appeals-source-decision span { display: inline; margin-right: 6px; }
    :where(.pb-css-appeals) .appeals-body .appeals-match-state { margin: 0; padding: 0; background: none; }
    :where(.pb-css-appeals) .appeals-body .appeals-secondary-actions { display: none; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-appeals) .appeals-body .appeals-hero h1 { font-size: var(--pb-h1-sm); }
    :where(.pb-css-appeals) .appeals-body .appeals-hero-copy { display: none; }
    :where(.pb-css-appeals) .appeals-body .appeals-hero-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
    :where(.pb-css-appeals) .appeals-body .appeals-hero-actions .approved-button { min-height: 38px; padding: 6px 4px; font-size: 13px; }
    :where(.pb-css-appeals) .appeals-body .appeals-workspace { margin-top: 14px; }
    :where(.pb-css-appeals) .appeals-body .appeals-scale-tabs a { flex: 1; justify-content: center; padding: 0 4px; font-size: 12px; text-align: center; }
    :where(.pb-css-appeals) .appeals-body .appeals-results-bar > strong { width: 100%; }
    :where(.pb-css-appeals) .appeals-body .appeals-sort { width: 100%; margin: 0; }
    :where(.pb-css-appeals) .appeals-body .appeals-sort select { flex: 1; width: auto; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-main { padding: 14px 12px; }
    :where(.pb-css-appeals) .appeals-body .appeals-row-kicker { font-size: 11px; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-main h3 { font-size: 17px; }
    :where(.pb-css-appeals) .appeals-body .appeals-case-side { padding: 12px; }
    :where(.pb-css-appeals) .appeals-body .kpi-strip.appeals-kpis .metric-card { padding: 12px; }
  }

/* ---- data-licences ---- */
:where(.pb-css-data-licences) .data-source-licences td a, :where(.pb-css-data-licences) .data-source-licences th{overflow-wrap:anywhere}:where(.pb-css-data-licences) .data-source-note{display:block;margin-top:4px;color:var(--pb-muted);font-size:13px}
/* ---- workspace-header ---- */

      :where(.pb-css-workspace-header) .opportunity-workspace-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 14px;
        align-items: start;
        max-width: var(--pb-container);
        margin: 0 auto 18px;
        padding: 14px;
        border: 1px solid #dbe5f4;
        border-radius: 8px;
        background: #fff;
        box-shadow: 0 10px 28px rgba(10,23,51,.06);
        min-width: 0;
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-copy {
        display: grid;
        gap: 7px;
        min-width: 0;
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-copy p, :where(.pb-css-workspace-header) .opportunity-workspace-copy h2 {
        margin: 0;
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-copy .eyebrow {
        color: var(--pb-blue);
        font-size: 12px;
        font-weight: 900;
        letter-spacing: .08em;
        text-transform: uppercase;
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-copy h2 {
        color: var(--pb-ink);
        font-size: 21px;
        line-height: 1.2;
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-summary {
        color: #425372;
        font-size: 14px;
        line-height: 1.45;
      }
      :where(.pb-css-workspace-header) .workspace-query-chips {
        display: flex;
        flex-wrap: wrap;
        gap: 7px;
        min-width: 0;
      }
      :where(.pb-css-workspace-header) .workspace-query-chip {
        display: inline-flex;
        align-items: center;
        min-height: 30px;
        max-width: 100%;
        padding: 5px 9px;
        border: 1px solid #d4e2fd;
        border-radius: 999px;
        background: #eef4ff;
        color: var(--pb-ink);
        font-size: 12px;
        font-weight: 900;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-workspace-header) .workspace-query-chip.is-muted {
        border-style: dashed;
        background: #fbfdff;
        color: var(--pb-muted);
      }
      :where(.pb-css-workspace-header) .opportunity-workspace-actions {
        display: grid;
        gap: 10px;
        justify-items: end;
        min-width: 260px;
      }
      :where(.pb-css-workspace-header) .opportunity-route-switch {
        display: inline-grid;
        grid-template-columns: repeat(3, minmax(78px, 1fr));
        min-height: 40px;
        border: 1px solid #d4e2fd;
        border-radius: 8px;
        overflow: hidden;
        background: #fff;
      }
      :where(.pb-css-workspace-header) .opportunity-route-switch a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px;
        color: var(--pb-blue);
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
        white-space: nowrap;
      }
      :where(.pb-css-workspace-header) .opportunity-route-switch a + a {
        border-left: 1px solid #d4e2fd;
      }
      :where(.pb-css-workspace-header) .opportunity-route-switch a[aria-current="page"] {
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-workspace-header) .opportunity-primary-actions {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        gap: 8px;
      }
      :where(.pb-css-workspace-header) .opportunity-primary-actions a {
        min-height: 38px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 12px;
        border: 1px solid #cfd9ea;
        border-radius: 7px;
        background: #fff;
        color: var(--pb-ink);
        font-size: 13px;
        font-weight: 900;
        text-decoration: none;
      }
      :where(.pb-css-workspace-header) .opportunity-primary-actions a.primary {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-workspace-header) .opportunity-primary-actions a[aria-current="page"] {
        box-shadow: inset 0 0 0 2px var(--pb-ink);
      }
      @media (max-width: 980px) {
        :where(.pb-css-workspace-header) .opportunity-workspace-header {
          grid-template-columns: 1fr;
          max-width: calc(100% - 48px);
        }
        :where(.pb-css-workspace-header) .opportunity-workspace-actions {
          justify-items: stretch;
          min-width: 0;
        }
        :where(.pb-css-workspace-header) .opportunity-route-switch {
          width: 100%;
        }
        :where(.pb-css-workspace-header) .opportunity-primary-actions {
          justify-content: flex-start;
        }
      }
      @media (max-width: 860px) {
        :where(.pb-css-workspace-header) .opportunity-workspace-header {
          max-width: calc(100% - 28px);
          padding: 12px;
        }
        :where(.pb-css-workspace-header) .opportunity-route-switch {
          grid-template-columns: repeat(3, minmax(0, 1fr));
        }
        :where(.pb-css-workspace-header) .opportunity-primary-actions {
          display: grid;
          grid-template-columns: 1fr;
        }
        :where(.pb-css-workspace-header) .opportunity-primary-actions a {
          width: 100%;
        }
      }
    
/* ---- entity-list ---- */

:where(.pb-css-entity-list) .entity-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--pb-line)}
:where(.pb-css-entity-list) .entity-list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 16px;align-items:baseline;padding:11px 2px;border-bottom:1px solid var(--pb-line)}
:where(.pb-css-entity-list) .entity-list .entity-place{display:block;color:var(--pb-ink);font-weight:800;text-decoration:none;overflow-wrap:anywhere}
:where(.pb-css-entity-list) .entity-list a.entity-place:hover, :where(.pb-css-entity-list) .entity-list a.entity-place:focus-visible{color:var(--pb-blue);text-decoration:underline}
:where(.pb-css-entity-list) .entity-list .entity-meta{display:block;margin-top:3px;color:var(--pb-muted);font-size:13px}
:where(.pb-css-entity-list) .entity-list .entity-year{color:var(--pb-ink);font-weight:800;font-variant-numeric:tabular-nums}
:where(.pb-css-entity-list) .entity-pages{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin-top:14px;color:var(--pb-muted);font-size:14px}
:where(.pb-css-entity-list) .entity-pages a{color:var(--pb-blue);font-weight:800;text-decoration:none}
:where(.pb-css-entity-list) .entity-pages a:hover, :where(.pb-css-entity-list) .entity-pages a:focus-visible{text-decoration:underline}
:where(.pb-css-entity-list) .entity-list-note{margin:12px 0 0;color:var(--pb-muted);font-size:13px;line-height:1.5}

/* ---- signal-family ---- */

      :where(.pb-css-signal-family) .signal-family-strip {
        display: grid;
        gap: 10px;
        max-width: var(--pb-container);
        margin: 18px auto;
        border: 1px solid #d9e4f2;
        border-radius: 8px;
        background: #fff;
        color: var(--pb-ink);
        overflow: hidden;
      }
      :where(.pb-css-signal-family) .signal-family-source {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 12px 14px;
        border-bottom: 1px solid var(--pb-line);
        background: #f6f9fe;
      }
      :where(.pb-css-signal-family) .signal-family-source strong {
        display: inline-flex;
        align-items: center;
        gap: 7px;
        font-size: 13px;
      }
      :where(.pb-css-signal-family) .signal-family-source strong::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 50%;
        background: #1f9d6b;
        box-shadow: 0 0 0 3px rgba(31, 157, 107, .12);
      }
      :where(.pb-css-signal-family) .signal-family-source p {
        margin: 0;
        color: #53647e;
        font-size: 13px;
        line-height: 1.45;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-signal-family) .signal-family-tabs, :where(.pb-css-signal-family) .signal-family-chips, :where(.pb-css-signal-family) .signal-family-actions {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        min-width: 0;
        padding: 0 14px;
      }
      :where(.pb-css-signal-family) .signal-family-tabs a, :where(.pb-css-signal-family) .signal-family-chips span, :where(.pb-css-signal-family) .signal-family-actions a {
        display: inline-flex;
        min-width: 0;
        min-height: 34px;
        align-items: center;
        justify-content: center;
        border-radius: 7px;
        padding: 7px 10px;
        font-size: 12px;
        font-weight: 900;
        text-decoration: none;
        overflow-wrap: anywhere;
      }
      :where(.pb-css-signal-family) .signal-family-tabs a {
        border: 1px solid #d4e2fd;
        background: #f8fbff;
        color: #1746a2;
      }
      :where(.pb-css-signal-family) .signal-family-tabs a[aria-current="page"] {
        border-color: var(--pb-blue);
        background: var(--pb-blue);
        color: #fff;
      }
      :where(.pb-css-signal-family) .signal-family-chips span {
        border: 1px solid #d9e4f2;
        background: #fff;
        color: #53647e;
      }
      :where(.pb-css-signal-family) .signal-family-actions {
        padding-bottom: 14px;
      }
      :where(.pb-css-signal-family) .signal-family-actions a {
        border: 1px solid #d4e2fd;
        background: #fff;
        color: #1746a2;
      }
      :where(.pb-css-signal-family) .signal-family-actions a:first-child {
        border-color: #123f86;
        background: #123f86;
        color: #fff;
      }
      @media (max-width: 760px) {
        :where(.pb-css-signal-family) .signal-family-strip {
          margin: 14px 10px;
        }
        :where(.pb-css-signal-family) .signal-family-source {
          align-items: flex-start;
          flex-direction: column;
        }
        :where(.pb-css-signal-family) .signal-family-tabs, :where(.pb-css-signal-family) .signal-family-actions {
          display: grid;
          grid-template-columns: repeat(2, minmax(0, 1fr));
        }
        :where(.pb-css-signal-family) .signal-family-chips {
          gap: 6px;
        }
        :where(.pb-css-signal-family) .signal-family-tabs a, :where(.pb-css-signal-family) .signal-family-chips span, :where(.pb-css-signal-family) .signal-family-actions a {
          width: 100%;
          white-space: normal;
        }
      }
      @media (max-width: 360px) {
        :where(.pb-css-signal-family) .signal-family-tabs, :where(.pb-css-signal-family) .signal-family-actions {
          grid-template-columns: 1fr;
        }
      }
    
/* ---- market ---- */

      /* Market data pages (/market-signals/, /housing-starts/, /planning-decision-times/,
         /market-sales/, /retrofit-activity/, /situations-vacant/, /insights/, /insights/counties/):
         templates/leads/market_page.html on approved-surface components; only these additions. */
      :where(.pb-css-market) .market-data .md-hero-note { margin: 10px 0 0; color: #fff; font-weight: 800; }
      :where(.pb-css-market) .market-data .md-body { margin-top: 18px; }
      :where(.pb-css-market) .market-data .md-kpis { margin-top: 0; }
      :where(.pb-css-market) .market-data .metric-card p { margin: 7px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.4; }
      :where(.pb-css-market) .market-data .md-note { display: grid; gap: 6px; padding: 14px 16px; border-left: 4px solid var(--pb-blue); }
      :where(.pb-css-market) .market-data .md-note strong { color: var(--pb-ink); }
      :where(.pb-css-market) .market-data .md-note p { margin: 0; color: #24385f; line-height: 1.5; }
      :where(.pb-css-market) .market-data .md-note.md-tone-cyan { border-left-color: #16a3c7; }
      :where(.pb-css-market) .market-data .md-note.md-tone-amber { border-left-color: #b7791f; }
      :where(.pb-css-market) .market-data .md-note.md-tone-slate { border-left-color: #64748b; }
      :where(.pb-css-market) .market-data .md-body > p { margin: 0; color: #24385f; line-height: 1.5; }
      :where(.pb-css-market) .market-data .md-body > p a, :where(.pb-css-market) .market-data .md-note a, :where(.pb-css-market) .market-data .md-table a, :where(.pb-css-market) .market-data .md-source-card a { color: var(--pb-blue); font-weight: 800; }
      :where(.pb-css-market) .market-data .md-source-card a { font-size: 14px; }
      :where(.pb-css-market) .market-data .md-table-wrap { overflow-x: auto; }
      :where(.pb-css-market) .market-data .md-table th.num, :where(.pb-css-market) .market-data .md-table td.num { text-align: right; font-variant-numeric: tabular-nums; }
      :where(.pb-css-market) .market-data .md-row-muted td { color: var(--pb-muted); }
      :where(.pb-css-market) .market-data .md-bars { display: grid; gap: 9px; }
      :where(.pb-css-market) .market-data .md-bar-row { display: grid; grid-template-columns: minmax(110px, 220px) minmax(0, 1fr) auto; gap: 12px; align-items: center; }
      :where(.pb-css-market) .market-data .md-bar-row strong { color: var(--pb-ink); font-size: 14px; overflow-wrap: anywhere; }
      :where(.pb-css-market) .market-data .md-bar-row > span:last-child { color: var(--pb-muted); font-size: 13px; font-variant-numeric: tabular-nums; }
      :where(.pb-css-market) .market-data .md-bar-track { height: 10px; overflow: hidden; border-radius: 999px; background: #eef3fb; }
      :where(.pb-css-market) .market-data .md-bar-fill { display: block; width: var(--value); height: 100%; border-radius: inherit; background: var(--pb-blue); }
      :where(.pb-css-market) .market-data .md-bar-fill.md-tone-cyan { background: #16a3c7; }
      :where(.pb-css-market) .market-data .md-bar-fill.md-tone-amber { background: #b7791f; }
      :where(.pb-css-market) .market-data .md-bar-fill.md-tone-slate { background: #64748b; }
      :where(.pb-css-market) .market-data .md-source-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
      :where(.pb-css-market) .market-data .md-source-card { display: grid; align-content: start; gap: 8px; }
      :where(.pb-css-market) .market-data .md-source-card strong { color: var(--pb-ink); font-size: 20px; line-height: 1.15; overflow-wrap: anywhere; }
      :where(.pb-css-market) .market-data .md-source-card p { margin: 0; color: var(--pb-muted); font-size: 14px; line-height: 1.45; }
      :where(.pb-css-market) .market-data .status-chip.md-tone-cyan { border-color: #bfe9f7; background: #e6f7ff; color: #03688f; }
      :where(.pb-css-market) .market-data .status-chip.md-tone-amber { border-color: #f6dcae; background: #fff7ed; color: #9a5f11; }
      :where(.pb-css-market) .market-data .status-chip.md-tone-slate { border-color: #d5dde8; background: #eef2f7; color: #46556e; }
      :where(.pb-css-market) .market-data .md-handoff { display: grid; gap: 14px; }
      :where(.pb-css-market) .market-data .md-handoff h2 { margin: 0; font-size: 20px; }
      :where(.pb-css-market) .market-data .md-handoff p { margin: 6px 0 0; line-height: 1.5; }
      :where(.pb-css-market) .market-data .md-empty { margin: 0; color: var(--pb-muted); }
      @media (max-width: 960px) {
        :where(.pb-css-market) .market-data .md-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      }
      @media (max-width: 560px) {
        :where(.pb-css-market) .market-data .md-source-grid { grid-template-columns: 1fr; }
        :where(.pb-css-market) .market-data .md-bar-row { grid-template-columns: minmax(0, 1fr) auto; }
        :where(.pb-css-market) .market-data .md-bar-track { grid-column: 1 / -1; grid-row: 2; }
        :where(.pb-css-market) .market-data .md-table td.num { text-align: left; }
        :where(.pb-css-market) .market-data .md-table td::before { overflow-wrap: normal; }
        :where(.pb-css-market) .market-data .md-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
        :where(.pb-css-market) .market-data .md-kpis .metric-card { padding: 12px; }
        :where(.pb-css-market) .market-data .md-kpis .metric-card strong { font-size: 22px; }
      }

/* ---- lead-detail ---- */
  /* Lead detail page (/leads/<county>/<ref>/, Release 4 R4-A). Approved-surface
     components and tokens only (docs/design-tokens.md). Phones read the DOM
     order: breadcrumb, H1, status line, archived note, what and where, key
     facts, timeline, what happens next, documents and evidence, site starts,
     related records, explore the area, alert prompt. Wide screens place the same blocks in two columns with
     grid placement only (no reordering), so the reading order never changes. */
  :where(.pb-css-lead-detail) .lead-page .lead-hero { grid-template-columns: minmax(0, 1fr); align-items: start; }
  :where(.pb-css-lead-detail) .lead-page .lead-hero h1 { max-width: 880px; }
  :where(.pb-css-lead-detail) .lead-page .lead-hero .lead-status {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    max-width: 100%;
    margin: 14px 0 0;
    padding: 7px 12px;
    border: 1px solid #d4e2fd;
    border-radius: var(--pb-radius);
    background: #eef4ff;
    color: #1d4fbf;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
  }
  :where(.pb-css-lead-detail) .lead-page .lead-hero .lead-status.is-good { border-color: #c4ebd2; background: #ecfaf1; color: #17733f; }
  :where(.pb-css-lead-detail) .lead-page .lead-hero .lead-status.is-bad { border-color: #efc9c0; background: #fbebe7; color: #93311f; }
  :where(.pb-css-lead-detail) .lead-page .lead-hero .lead-status.is-warn { border-color: #f2d6ae; background: #fff7ed; color: #83500f; }
  :where(.pb-css-lead-detail) .lead-archived {
    margin-top: 14px;
    padding: 16px 18px;
    border: 1px solid #f2d6ae;
    border-left: 4px solid #d99e0b;
    border-radius: var(--pb-radius);
    background: #fffaf2;
  }
  :where(.pb-css-lead-detail) .lead-archived h2 { margin: 0 0 6px; color: var(--pb-ink); font-size: 17px; line-height: 1.25; }
  :where(.pb-css-lead-detail) .lead-archived p { margin: 0; max-width: 78ch; color: #3e4c66; font-size: 15px; line-height: 1.5; }
  :where(.pb-css-lead-detail) .lead-archived .lead-archived-links { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 10px; font-weight: 800; }
  :where(.pb-css-lead-detail) .lead-page .lead-archived a, :where(.pb-css-lead-detail) .lead-page .lead-rows a, :where(.pb-css-lead-detail) .lead-page .lead-evidence-list a, :where(.pb-css-lead-detail) .lead-page .lead-how a { color: var(--pb-blue); text-decoration: none; }
  :where(.pb-css-lead-detail) .lead-page .lead-archived a:hover, :where(.pb-css-lead-detail) .lead-page .lead-rows a:hover, :where(.pb-css-lead-detail) .lead-page .lead-evidence-list a:hover { text-decoration: underline; }
  :where(.pb-css-lead-detail) .lead-layout { display: flex; flex-direction: column; gap: 14px; margin-top: 14px; }
  :where(.pb-css-lead-detail) .lead-layout > * { min-width: 0; }
  :where(.pb-css-lead-detail) .lead-layout .module-head { margin-bottom: 12px; }
  :where(.pb-css-lead-detail) .lead-layout .module-head h2 { font-size: 21px; }
  :where(.pb-css-lead-detail) .lead-description { margin: 0 0 14px; max-width: 78ch; color: #26375a; font-size: 16px; line-height: 1.55; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-rows { display: grid; gap: 0; margin: 0; border-top: 1px solid var(--pb-line); }
  :where(.pb-css-lead-detail) .lead-rows > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 4px 14px; padding: 10px 0; border-bottom: 1px solid var(--pb-line); }
  :where(.pb-css-lead-detail) .lead-rows dt { color: var(--pb-muted); font-size: 13px; font-weight: 800; line-height: 1.45; }
  :where(.pb-css-lead-detail) .lead-rows dd { margin: 0; min-width: 0; color: var(--pb-ink); font-size: 15px; line-height: 1.45; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-rows dd small { margin-left: 8px; font-size: 13px; font-weight: 800; }
  :where(.pb-css-lead-detail) .lead-page-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
  :where(.pb-css-lead-detail) .lead-page .lead-page-actions .approved-button { width: auto; color: var(--pb-blue); }
  :where(.pb-css-lead-detail) .lead-page .lead-page-actions .approved-button.primary { color: #fff; }
  :where(.pb-css-lead-detail) .lead-aside { display: grid; gap: 14px; min-width: 0; align-content: start; }
  :where(.pb-css-lead-detail) .lead-facts { padding: 16px 18px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: var(--pb-card); }
  :where(.pb-css-lead-detail) .lead-facts h2 { margin: 0 0 10px; color: var(--pb-ink); font-size: 17px; line-height: 1.25; }
  :where(.pb-css-lead-detail) .lead-facts dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0; }
  :where(.pb-css-lead-detail) .lead-fact { min-width: 0; padding: 10px 12px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: #f8fbff; }
  :where(.pb-css-lead-detail) .lead-fact dt { color: var(--pb-muted); font-size: 12px; font-weight: 900; letter-spacing: .02em; text-transform: uppercase; }
  :where(.pb-css-lead-detail) .lead-fact dd { margin: 4px 0 0; color: var(--pb-ink); font-size: 18px; font-weight: 800; line-height: 1.2; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-fact dd small { display: block; margin-top: 3px; color: var(--pb-muted); font-size: 12px; font-weight: 600; line-height: 1.35; }
  /* Timeline (two or more dated events) and "What happens next" (Fable,
     Release 4 integration): a plain list and a short outlook. */
  :where(.pb-css-lead-detail) .lead-timeline { padding: 16px 18px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: var(--pb-card); }
  :where(.pb-css-lead-detail) .lead-timeline h2 { margin: 0 0 10px; color: var(--pb-ink); font-size: 17px; line-height: 1.25; }
  :where(.pb-css-lead-detail) .lead-timeline ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-lead-detail) .lead-timeline li { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 10px; padding: 8px 0; border-top: 1px solid var(--pb-line); }
  :where(.pb-css-lead-detail) .lead-timeline li:first-child { border-top: 0; padding-top: 0; }
  :where(.pb-css-lead-detail) .lead-timeline time { color: var(--pb-muted); font-size: 14px; font-weight: 800; line-height: 1.4; }
  :where(.pb-css-lead-detail) .lead-timeline span { color: var(--pb-ink); font-size: 15px; font-weight: 700; line-height: 1.4; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-timeline small { display: block; color: var(--pb-muted); font-size: 13px; font-weight: 600; }
  :where(.pb-css-lead-detail) .lead-next-text { margin: 0; max-width: 78ch; color: #26375a; font-size: 16px; line-height: 1.55; }
  :where(.pb-css-lead-detail) .lead-next h3 { margin: 14px 0 8px; color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-lead-detail) .lead-next-packages { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-lead-detail) .lead-next-packages li { display: grid; gap: 2px; padding: 10px 12px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: #f8fbff; }
  :where(.pb-css-lead-detail) .lead-next-packages strong { color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-lead-detail) .lead-next-packages span { color: #3e4c66; font-size: 14px; line-height: 1.45; }
  :where(.pb-css-lead-detail) .lead-next-note { margin: 12px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-lead-detail) .lead-evidence-list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-lead-detail) .lead-evidence-list > li { display: grid; gap: 4px; min-width: 0; padding: 12px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: #f8fbff; }
  :where(.pb-css-lead-detail) .lead-evidence-list strong { color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-lead-detail) .lead-evidence-list span { color: #3e4c66; font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-evidence-list .lead-evidence-link { font-size: 14px; font-weight: 800; }
  :where(.pb-css-lead-detail) .lead-evidence-list dl { display: grid; gap: 6px; margin: 4px 0 0; }
  :where(.pb-css-lead-detail) .lead-evidence-list dl > div { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 10px; }
  :where(.pb-css-lead-detail) .lead-evidence-list dt { color: var(--pb-muted); font-size: 13px; font-weight: 800; }
  :where(.pb-css-lead-detail) .lead-evidence-list dd { margin: 0; color: var(--pb-ink); font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
  :where(.pb-css-lead-detail) .lead-how { margin-top: 14px; padding-top: 12px; border-top: 1px solid var(--pb-line); }
  :where(.pb-css-lead-detail) .lead-how h3 { margin: 0 0 4px; color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-lead-detail) .lead-how p { margin: 0; max-width: 78ch; color: var(--pb-muted); font-size: 14px; line-height: 1.5; }
  :where(.pb-css-lead-detail) .lead-starts-list { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
  :where(.pb-css-lead-detail) .lead-starts-list li { display: grid; gap: 3px; padding: 12px; border: 1px solid #c4ebd2; border-radius: var(--pb-radius); background: #f3fbf6; }
  :where(.pb-css-lead-detail) .lead-starts-list strong { color: var(--pb-ink); font-size: 15px; }
  :where(.pb-css-lead-detail) .lead-starts-list span, :where(.pb-css-lead-detail) .lead-starts-list em { color: #3e4c66; font-size: 14px; font-style: normal; line-height: 1.45; }
  :where(.pb-css-lead-detail) .lead-starts-note { margin: 10px 0 0; color: var(--pb-muted); font-size: 13px; line-height: 1.45; }
  :where(.pb-css-lead-detail) .lead-page .lead-explore .compact-list a { color: var(--pb-blue); text-decoration: none; }
  :where(.pb-css-lead-detail) .lead-alert-follow { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 12px 0 0; font-size: 14px; font-weight: 700; }
  :where(.pb-css-lead-detail) .lead-page .lead-alert-follow a { color: var(--pb-blue); text-decoration: none; }
  /* Signed-in contact tracker (the same markup and script as before R4-A). */
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-tracker { display: grid; gap: 10px; padding: 16px; border: 1px solid var(--pb-line); border-radius: var(--pb-radius); background: #fff; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-head { display: flex; justify-content: space-between; gap: 10px; margin: 0; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-head p { margin: 0 0 4px; color: var(--pb-blue); font-size: 12px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-head h2 { margin: 0; color: var(--pb-ink); font-size: 17px; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-pill { align-self: start; padding: 5px 8px; border-radius: 999px; background: #ecfaf1; color: #17733f; font-size: 12px; font-weight: 800; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-statuses { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-status-button, :where(.pb-css-lead-detail) .lead-tracker .detail-action { min-height: 40px; border: 1px solid #d4e2fd; border-radius: 7px; background: #fff; color: var(--pb-blue); font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-status-button.is-active { border-color: var(--pb-blue); background: #e9f0fe; color: var(--pb-blue-hover); }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-note-label { color: var(--pb-muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-note { width: 100%; min-height: 76px; border: 1px solid #dbe5f4; border-radius: 7px; padding: 8px; color: var(--pb-ink); font: inherit; font-size: 14px; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-footer { display: grid; gap: 7px; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-footer span { color: var(--pb-muted); font-size: 13px; line-height: 1.4; }
  :where(.pb-css-lead-detail) .lead-tracker .lead-contact-footer .is-error { color: #93311f; }
  /* Wide screens: left column what and where (row 1), what happens next
     (row 2), documents (row 3), site starts (row 4); the right column holds key
     facts, the timeline and, signed in, the contact tracker (one wrapper, rows
     1-4, so they stack without gaps); related records span both columns (row
     5); explore the area and the alert prompt share the last row. Blocks use margins rather than a row gap, so a
     block that is absent leaves no empty gap. */
  @media (min-width: 961px) {
    :where(.pb-css-lead-detail) .lead-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 0 18px; align-items: start; }
    :where(.pb-css-lead-detail) .lead-layout > * { margin-bottom: 14px; }
    :where(.pb-css-lead-detail) .lead-what { grid-column: 1; grid-row: 1; }
    :where(.pb-css-lead-detail) .lead-aside { grid-column: 2; grid-row: 1 / span 4; }
    :where(.pb-css-lead-detail) .lead-facts dl { grid-template-columns: minmax(0, 1fr); }
    :where(.pb-css-lead-detail) .lead-next { grid-column: 1; grid-row: 2; }
    :where(.pb-css-lead-detail) .lead-docs { grid-column: 1; grid-row: 3; }
    :where(.pb-css-lead-detail) .lead-starts { grid-column: 1; grid-row: 4; }
    :where(.pb-css-lead-detail) .lead-related { grid-column: 1 / -1; grid-row: 5; }
    :where(.pb-css-lead-detail) .lead-explore { grid-column: 1; grid-row: 6; }
    :where(.pb-css-lead-detail) .lead-alert { grid-column: 2; grid-row: 6; }
  }
  @media (max-width: 560px) {
    :where(.pb-css-lead-detail) .lead-page .lead-hero { padding: 18px 14px; }
    :where(.pb-css-lead-detail) .lead-page .lead-hero .approved-kicker { margin-bottom: 6px; }
    :where(.pb-css-lead-detail) .lead-page .lead-hero .lead-status { margin-top: 12px; font-size: 14px; }
    :where(.pb-css-lead-detail) .lead-layout .organisation-panel, :where(.pb-css-lead-detail) .lead-facts, :where(.pb-css-lead-detail) .lead-timeline { padding: 14px 12px; }
    :where(.pb-css-lead-detail) .lead-timeline li { grid-template-columns: 92px minmax(0, 1fr); }
    :where(.pb-css-lead-detail) .lead-layout .module-head h2 { font-size: 19px; }
    :where(.pb-css-lead-detail) .lead-rows > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
    :where(.pb-css-lead-detail) .lead-evidence-list dl > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
    :where(.pb-css-lead-detail) .lead-description { font-size: 15px; }
    :where(.pb-css-lead-detail) .lead-fact dd { font-size: 16px; }
    :where(.pb-css-lead-detail) .lead-page .lead-page-actions .approved-button { flex: 1 1 auto; }
  }
  @media (min-width: 961px) {
    :where(.pb-css-lead-detail) .lead-explore .compact-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }

/* ---- related-leads ---- */
      /* Related planning records on the lead page (R4-A): one compact row per
         record, no placeholders, no internal evidence states. Tokens only. */
      :where(.pb-css-related-leads) .related-leads-section {
        --related-blue:var(--pb-blue,#2f6fed);
        --related-blue-dark:var(--pb-blue-hover,#275fd6);
        --related-ink:var(--pb-ink,#0f2147);
        --related-muted:var(--pb-muted,#5b6b86);
        --related-dim:var(--pb-dim,#8593ac);
        --related-line:var(--pb-line,#e6ecf5);
        padding:0!important;
        overflow:hidden;
      }
      :where(.pb-css-related-leads) .related-leads-heading {
        display:flex;
        align-items:flex-start;
        justify-content:space-between;
        gap:20px;
        padding:18px;
      }
      :where(.pb-css-related-leads) .related-leads-heading > div { min-width:0; }
      :where(.pb-css-related-leads) .related-leads-heading .related-kicker {
        margin:0 0 5px;
        color:var(--related-blue);
        font-size:12px;
        font-weight:900;
        letter-spacing:.08em;
        text-transform:uppercase;
      }
      :where(.pb-css-related-leads) .related-leads-heading h2 {
        margin:0;
        color:var(--related-ink);
        font-size:21px;
        line-height:1.2;
      }
      :where(.pb-css-related-leads) .related-leads-heading > div > p:not(.related-kicker) {
        max-width:74ch;
        margin:7px 0 0;
        color:var(--related-muted);
        font-size:14px;
        line-height:1.5;
      }
      :where(.pb-css-related-leads) .related-leads-count {
        flex:none;
        margin:2px 0 0;
        color:var(--related-muted);
        font-size:13px;
        font-weight:800;
        line-height:1.4;
        white-space:nowrap;
      }
      :where(.pb-css-related-leads) .related-lead-list {
        margin:0;
        padding:0 18px;
        border-top:1px solid var(--related-line);
        list-style:none;
      }
      :where(.pb-css-related-leads) .related-lead-row {
        position:relative;
        display:grid;
        grid-template-columns:118px minmax(0,1fr) 150px 76px;
        grid-template-areas:"stage title scale action";
        gap:16px;
        align-items:center;
        min-width:0;
        padding:12px 4px;
        border-bottom:1px solid var(--related-line);
        transition:background-color .16s ease;
      }
      :where(.pb-css-related-leads) .related-lead-row:last-child { border-bottom:0; }
      :where(.pb-css-related-leads) .related-lead-row:hover, :where(.pb-css-related-leads) .related-lead-row:focus-within { background:#f8fbff; }
      :where(.pb-css-related-leads) .related-lead-stage-cell {
        grid-area:stage;
        display:grid;
        justify-items:start;
        gap:5px;
        min-width:0;
      }
      :where(.pb-css-related-leads) .related-lead-stage {
        display:inline-flex;
        max-width:100%;
        align-items:center;
        min-height:24px;
        padding:4px 8px;
        border:1px solid #d4e2fd;
        border-radius:999px;
        background:#eef4ff;
        color:#1d4fbf;
        font-size:12px;
        font-weight:800;
        line-height:1.2;
        white-space:nowrap;
      }
      :where(.pb-css-related-leads) .related-lead-stage.is-commencement { border-color:#b9dcd8; background:#e3f2f0; color:#0b6e64; }
      :where(.pb-css-related-leads) .related-lead-stage.is-appeal { border-color:#d6d0f0; background:#edeafb; color:#5646b5; }
      :where(.pb-css-related-leads) .related-lead-stage.is-refused { border-color:#e8c9c1; background:#fbebe7; color:#93311f; }
      :where(.pb-css-related-leads) .related-lead-stage.is-further-information { border-color:#f0dfb0; background:#fff9ec; color:#7a5a10; }
      :where(.pb-css-related-leads) .related-lead-stage-cell time {
        color:var(--related-muted);
        font-size:12px;
        font-variant-numeric:tabular-nums;
        line-height:1.35;
        white-space:nowrap;
      }
      :where(.pb-css-related-leads) .related-lead-title-cell {
        grid-area:title;
        display:grid;
        gap:3px;
        min-width:0;
      }
      :where(.pb-css-related-leads) .related-lead-title-cell h3 {
        min-width:0;
        margin:0;
        color:var(--related-ink);
        font-size:15px;
        font-weight:700;
        line-height:1.35;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
      }
      :where(.pb-css-related-leads) .related-lead-title-cell h3 a {
        display:block;
        min-width:0;
        color:inherit;
        text-decoration:none;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
      }
      :where(.pb-css-related-leads) .related-lead-title-cell h3 a:hover { color:var(--related-blue); }
      /* One link per row (O9): the title link covers the row. */
      :where(.pb-css-related-leads) .related-lead-title-cell h3 a::after { content:""; position:absolute; inset:0; }
      :where(.pb-css-related-leads) .related-lead-meta {
        display:flex;
        align-items:center;
        gap:8px;
        min-width:0;
        color:var(--related-muted);
        font-size:13px;
        line-height:1.45;
      }
      :where(.pb-css-related-leads) .related-lead-meta-text {
        min-width:0;
        overflow:hidden;
        text-overflow:ellipsis;
        white-space:nowrap;
      }
      :where(.pb-css-related-leads) .related-lead-reference {
        flex:none;
        max-width:220px;
        padding:1px 6px;
        border:1px solid #d4e2fd;
        border-radius:5px;
        background:#f3f7ff;
        color:#1d4fbf;
        font-size:12px;
        font-weight:700;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
      }
      :where(.pb-css-related-leads) .related-lead-scale-cell {
        grid-area:scale;
        display:grid;
        justify-items:start;
        min-width:0;
      }
      :where(.pb-css-related-leads) .related-lead-scale-cell > strong {
        display:block;
        max-width:100%;
        color:var(--related-ink);
        font-size:15px;
        font-weight:800;
        font-variant-numeric:tabular-nums;
        line-height:1.2;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
      }
      :where(.pb-css-related-leads) .related-lead-scale-basis {
        display:block;
        max-width:100%;
        margin-top:2px;
        color:var(--related-muted);
        font-size:12px;
        line-height:1.35;
        white-space:nowrap;
        overflow:hidden;
        text-overflow:ellipsis;
      }
      :where(.pb-css-related-leads) .related-lead-action-cell {
        grid-area:action;
        display:flex;
        justify-content:flex-end;
      }
      :where(.pb-css-related-leads) .related-lead-action-cell .related-lead-open {
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-width:58px;
        min-height:40px;
        padding:8px 12px;
        border:1px solid #d4e2fd;
        border-radius:7px;
        background:#fff;
        color:var(--related-blue);
        font-size:14px;
        font-weight:900;
        line-height:1.2;
        text-decoration:none;
      }
      :where(.pb-css-related-leads) .related-lead-row:hover .related-lead-open { border-color:var(--related-blue); background:#f3f7ff; }
      :where(.pb-css-related-leads) .related-lead-title-cell a:focus-visible {
        outline:2px solid var(--related-blue);
        outline-offset:2px;
      }
      :where(.pb-css-related-leads) .related-leads-footer {
        display:flex;
        align-items:center;
        justify-content:flex-end;
        gap:16px;
        width:auto;
        margin:0;
        padding:12px 18px 14px;
        border-top:1px solid var(--related-line);
      }
      :where(.pb-css-related-leads) .related-leads-see-all {
        flex:none;
        color:var(--related-blue);
        font-size:14px;
        font-weight:800;
        text-decoration:none;
      }
      :where(.pb-css-related-leads) .related-leads-see-all:hover { color:var(--related-blue-dark); text-decoration:underline; }
      :where(.pb-css-related-leads) .related-visually-hidden {
        position:absolute!important;
        width:1px!important;
        height:1px!important;
        padding:0!important;
        margin:-1px!important;
        overflow:hidden!important;
        clip:rect(0,0,0,0)!important;
        white-space:nowrap!important;
        border:0!important;
      }
      @media (max-width:899px) {
        :where(.pb-css-related-leads) .related-lead-row {
          grid-template-columns:104px minmax(0,1fr) 120px 68px;
          gap:10px;
        }
        :where(.pb-css-related-leads) .related-lead-reference { max-width:170px; }
      }
      @media (max-width:620px) {
        :where(.pb-css-related-leads) .related-leads-heading {
          display:grid;
          gap:8px;
          padding:14px 12px;
        }
        :where(.pb-css-related-leads) .related-leads-heading h2 { font-size:19px; }
        :where(.pb-css-related-leads) .related-leads-count { margin:0; }
        :where(.pb-css-related-leads) .related-lead-list { padding:0 12px; }
        :where(.pb-css-related-leads) .related-lead-row {
          grid-template-columns:minmax(0,1fr) auto;
          grid-template-areas:
            "stage action"
            "title title"
            "scale scale";
          gap:6px 8px;
          padding:12px 0;
        }
        :where(.pb-css-related-leads) .related-lead-stage-cell {
          display:flex;
          align-items:center;
          gap:8px;
          overflow:hidden;
        }
        :where(.pb-css-related-leads) .related-lead-stage { flex:none; }
        :where(.pb-css-related-leads) .related-lead-stage-cell time { min-width:0; overflow:hidden; text-overflow:ellipsis; }
        :where(.pb-css-related-leads) .related-lead-title-cell h3, :where(.pb-css-related-leads) .related-lead-title-cell h3 a { white-space:normal; }
        :where(.pb-css-related-leads) .related-lead-meta { flex-wrap:wrap; }
        :where(.pb-css-related-leads) .related-lead-meta-text { white-space:normal; }
        :where(.pb-css-related-leads) .related-lead-reference { max-width:60vw; }
        :where(.pb-css-related-leads) .related-lead-scale-cell {
          grid-template-columns:minmax(0,auto) minmax(0,1fr);
          align-items:baseline;
          gap:8px;
        }
        :where(.pb-css-related-leads) .related-lead-scale-cell:empty { display:none; }
        :where(.pb-css-related-leads) .related-lead-scale-cell > strong { font-size:14px; }
        :where(.pb-css-related-leads) .related-lead-scale-basis { margin:0; }
        :where(.pb-css-related-leads) .related-lead-action-cell .related-lead-open { min-height:36px; padding:6px 10px; }
        :where(.pb-css-related-leads) .related-leads-footer { justify-content:flex-start; padding:12px; }
      }

/* ---- opportunity-intelligence ---- */

      :where(.pb-css-opportunity-intelligence) .opportunity-intelligence { display:grid; gap:16px; min-width:0; overflow:hidden; border:1px solid #ccd9eb; border-radius:10px; background:#fff; box-shadow:0 12px 28px rgba(15,33,71,.06); }
      :where(.pb-css-opportunity-intelligence) .oi-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:18px 18px 0; }
      :where(.pb-css-opportunity-intelligence) .oi-head p, :where(.pb-css-opportunity-intelligence) .oi-section-label { margin:0 0 4px; color:var(--pb-blue); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
      :where(.pb-css-opportunity-intelligence) .oi-head h2 { margin:0; color:var(--pb-ink); font-size:22px; line-height:1.2; letter-spacing:-.015em; }
      :where(.pb-css-opportunity-intelligence) .oi-head > span { flex:0 0 auto; padding:6px 9px; border:1px solid #c9ddff; border-radius:999px; background:#edf4ff; color:#1746a2; font-size:10px; font-weight:800; }
      :where(.pb-css-opportunity-intelligence) .oi-boundary { margin:0; padding:0 18px; color:var(--pb-muted); font-size:12px; line-height:1.5; }
      :where(.pb-css-opportunity-intelligence) .oi-signal-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--pb-line); border-bottom:1px solid var(--pb-line); }
      :where(.pb-css-opportunity-intelligence) .oi-signal { min-width:0; padding:15px 16px; border-right:1px solid var(--pb-line); background:#f9fbfe; }
      :where(.pb-css-opportunity-intelligence) .oi-signal:last-child { border-right:0; }
      :where(.pb-css-opportunity-intelligence) .oi-signal > span { display:block; color:var(--pb-muted); font-size:9px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
      :where(.pb-css-opportunity-intelligence) .oi-signal strong { display:block; margin:6px 0; color:var(--pb-ink); font-size:15px; line-height:1.3; overflow-wrap:anywhere; }
      :where(.pb-css-opportunity-intelligence) .oi-signal p { margin:0; color:#33476d; font-size:11px; line-height:1.45; }
      :where(.pb-css-opportunity-intelligence) .oi-signal small { display:block; margin-top:8px; color:#70809c; font-size:9px; line-height:1.4; }
      :where(.pb-css-opportunity-intelligence) .oi-source-action { display:inline-flex; margin-top:8px; color:#1746a2; font-size:10px; font-weight:800; text-decoration:none; }
      :where(.pb-css-opportunity-intelligence) .oi-detail-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:12px; padding:0 18px; }
      :where(.pb-css-opportunity-intelligence) .oi-detail-card { min-width:0; padding:14px; border:1px solid #e1e8f2; border-radius:8px; background:#fff; }
      :where(.pb-css-opportunity-intelligence) .oi-detail-card h3 { margin:0 0 7px; color:var(--pb-ink); font-size:16px; line-height:1.3; }
      :where(.pb-css-opportunity-intelligence) .oi-detail-card > p { margin:0; color:#33476d; font-size:12px; line-height:1.5; }
      :where(.pb-css-opportunity-intelligence) .oi-meta { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
      :where(.pb-css-opportunity-intelligence) .oi-meta span { padding:5px 7px; border-radius:999px; background:#eef3fa; color:#50617d; font-size:9px; font-weight:700; }
      :where(.pb-css-opportunity-intelligence) .oi-firms { display:grid; gap:9px; margin:0; }
      :where(.pb-css-opportunity-intelligence) .oi-firm { display:grid; gap:2px; padding-bottom:8px; border-bottom:1px solid #edf1f7; }
      :where(.pb-css-opportunity-intelligence) .oi-firm:last-child { padding-bottom:0; border-bottom:0; }
      :where(.pb-css-opportunity-intelligence) .oi-firm dt { color:var(--pb-ink); font-size:12px; font-weight:800; overflow-wrap:anywhere; }
      :where(.pb-css-opportunity-intelligence) .oi-firm dd { margin:0; color:var(--pb-muted); font-size:10px; line-height:1.4; }
      :where(.pb-css-opportunity-intelligence) .oi-package-section { display:grid; gap:10px; padding:0 18px; }
      :where(.pb-css-opportunity-intelligence) .oi-package-head { display:flex; align-items:end; justify-content:space-between; gap:12px; }
      :where(.pb-css-opportunity-intelligence) .oi-package-head h3 { margin:0; color:var(--pb-ink); font-size:17px; }
      :where(.pb-css-opportunity-intelligence) .oi-package-head span { color:var(--pb-muted); font-size:10px; }
      :where(.pb-css-opportunity-intelligence) .oi-package-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
      :where(.pb-css-opportunity-intelligence) .oi-package { min-width:0; padding:12px; border:1px solid #e1e8f2; border-radius:8px; background:#fbfdff; }
      :where(.pb-css-opportunity-intelligence) .oi-package > span { color:var(--pb-blue); font-size:9px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
      :where(.pb-css-opportunity-intelligence) .oi-package h4 { margin:5px 0; color:var(--pb-ink); font-size:14px; line-height:1.3; }
      :where(.pb-css-opportunity-intelligence) .oi-package p { margin:0; color:#33476d; font-size:11px; line-height:1.45; }
      :where(.pb-css-opportunity-intelligence) .oi-package footer { display:flex; flex-wrap:wrap; gap:5px 10px; width:auto; margin:9px 0 0; padding-top:8px; border-top:1px solid #e8edf5; color:#667792; font-size:9px; }
      :where(.pb-css-opportunity-intelligence) .oi-empty { margin:0; padding:12px; border:1px dashed #cad5e5; border-radius:8px; background:#f8fafc; color:var(--pb-muted); font-size:11px; line-height:1.5; }
      :where(.pb-css-opportunity-intelligence) .oi-drawing-list { display:grid; gap:5px; margin:8px 0 0; padding-left:16px; }
      :where(.pb-css-opportunity-intelligence) .oi-drawing-list li { color:var(--pb-muted); font-size:9px; line-height:1.35; }
      :where(.pb-css-opportunity-intelligence) .oi-drawing-list a { color:#1746a2; font-weight:700; text-decoration:none; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance { margin-top:0; border-top:1px solid var(--pb-line); background:#f8fafc; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 18px; color:var(--pb-ink); font-size:11px; font-weight:800; cursor:pointer; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance summary span { color:var(--pb-muted); font-size:9px; font-weight:700; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-body { display:grid; gap:10px; padding:0 18px 16px; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; margin:0; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-facts div { min-width:0; padding:8px; border:1px solid #e1e8f2; border-radius:6px; background:#fff; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-facts dt { color:#70809c; font-size:8px; font-weight:800; text-transform:uppercase; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-facts dd { margin:3px 0 0; color:var(--pb-ink); font-size:10px; font-weight:700; overflow-wrap:anywhere; }
      :where(.pb-css-opportunity-intelligence) .oi-provenance-body > p { margin:0; color:var(--pb-muted); font-size:10px; line-height:1.5; }
      :where(.pb-css-opportunity-intelligence) .oi-source-list { display:flex; flex-wrap:wrap; gap:6px; margin:0; padding:0; list-style:none; }
      :where(.pb-css-opportunity-intelligence) .oi-source-list a { display:inline-flex; padding:5px 7px; border:1px solid #d4e2fd; border-radius:6px; color:#1746a2; font-size:9px; font-weight:800; text-decoration:none; }
      @media(max-width:900px) {
        :where(.pb-css-opportunity-intelligence) .oi-signal-grid, :where(.pb-css-opportunity-intelligence) .oi-provenance-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
        :where(.pb-css-opportunity-intelligence) .oi-signal:nth-child(2) { border-right:0; }
        :where(.pb-css-opportunity-intelligence) .oi-signal:nth-child(-n+2) { border-bottom:1px solid var(--pb-line); }
      }
      @media(max-width:620px) {
        :where(.pb-css-opportunity-intelligence) .oi-head { display:grid; }
        :where(.pb-css-opportunity-intelligence) .oi-head > span { justify-self:start; }
        :where(.pb-css-opportunity-intelligence) .oi-signal-grid, :where(.pb-css-opportunity-intelligence) .oi-detail-grid, :where(.pb-css-opportunity-intelligence) .oi-package-list, :where(.pb-css-opportunity-intelligence) .oi-provenance-facts { grid-template-columns:1fr; }
        :where(.pb-css-opportunity-intelligence) .oi-signal { border-right:0; border-bottom:1px solid var(--pb-line); }
        :where(.pb-css-opportunity-intelligence) .oi-signal:last-child { border-bottom:0; }
        :where(.pb-css-opportunity-intelligence) .oi-package-head { align-items:start; flex-direction:column; }
      }
    
/* ---- tenders ---- */
/* /tenders/ and /tenders/awarded/ (templates/leads/procurement_index.html). */
/* leads/procurement_index.html */
body:where(.pb-css-tenders) .account-page{width:100%;max-width:none}:where(.pb-css-tenders) .pr-page{--pr-ink:var(--pb-ink);--pr-navy:var(--pb-navy);--pr-blue:var(--pb-blue);--pr-green:#16786d;--pr-green-soft:#e9f5f2;--pr-amber:#9a5a00;--pr-amber-soft:#fff6e7;--pr-muted:var(--pb-muted);--pr-line:#dce4ef;--pr-soft:#f6f8fc;width:100%;max-width:var(--pb-container);margin:0 auto;padding:26px var(--pb-gutter) 64px;color:var(--pr-ink)}
:where(.pb-css-tenders) .pr-page *{min-width:0}:where(.pb-css-tenders) .pr-page a{text-decoration:none}:where(.pb-css-tenders) .pr-page a:hover{text-decoration:none}:where(.pb-css-tenders) .pr-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;color:var(--pr-muted);font-size:12px}
:where(.pb-css-tenders) .pr-siblings{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:20px}:where(.pb-css-tenders) .pr-siblings a{display:inline-flex;align-items:center;min-height:36px;border:1px solid var(--pr-line);border-radius:7px;padding:7px 10px;background:#fff;color:var(--pr-muted);font-size:12px;font-weight:800}:where(.pb-css-tenders) .pr-siblings a[aria-current=page]{border-color:#b9cdf6;background:#eef4ff;color:var(--pr-blue)}
:where(.pb-css-tenders) .pr-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end}:where(.pb-css-tenders) .pr-kicker{margin:0 0 7px;color:var(--pr-blue);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}:where(.pb-css-tenders) .pr-head h1{max-width:880px;margin:0;color:var(--pr-navy);font-weight:800}:where(.pb-css-tenders) .pr-intro{max-width:870px;margin:15px 0 0;color:var(--pr-muted);font-size:16px;line-height:1.58}
:where(.pb-css-tenders) .pr-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}:where(.pb-css-tenders) .pr-action, :where(.pb-css-tenders) .pr-save button {display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #c8d5ea;border-radius:7px;padding:9px 13px;background:#fff;color:var(--pr-ink);font:inherit;font-size:13px;font-weight:850;cursor:pointer}:where(.pb-css-tenders) .pr-save button {border-color:var(--pr-blue);background:var(--pr-blue);color:#fff}:where(.pb-css-tenders) .pr-action:hover{border-color:var(--pr-blue);color:var(--pr-blue)}:where(.pb-css-tenders) .pr-save{margin:0}
:where(.pb-css-tenders) .pr-segment{display:inline-flex;margin-top:24px;border:1px solid #c8d5ea;border-radius:9px;background:#fff;overflow:hidden}:where(.pb-css-tenders) .pr-segment a{display:flex;align-items:center;justify-content:center;min-height:44px;border-right:1px solid var(--pr-line);padding:8px 18px;color:var(--pr-muted);font-size:13px;font-weight:900}:where(.pb-css-tenders) .pr-segment a:last-child{border-right:0}:where(.pb-css-tenders) .pr-segment a[aria-current=page]{background:var(--pr-navy);color:#fff}
:where(.pb-css-tenders) .pr-band{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:22px 0 0;border:1px solid var(--pr-line);border-radius:10px;background:#fff;box-shadow:0 10px 25px rgba(15,33,71,.045);overflow:hidden}:where(.pb-css-tenders) .pr-metric{padding:17px 18px;border-right:1px solid var(--pr-line)}:where(.pb-css-tenders) .pr-metric:last-child{border-right:0}:where(.pb-css-tenders) .pr-metric strong{display:block;color:var(--pr-navy);font-size:22px;letter-spacing:-.02em}:where(.pb-css-tenders) .pr-metric span{display:block;margin-top:4px;font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-tenders) .pr-metric small{display:block;margin-top:5px;color:var(--pr-muted);font-size:11px;line-height:1.35}
:where(.pb-css-tenders) .pr-search{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:center;margin-top:20px;padding:14px 0;border-top:1px solid var(--pr-line);border-bottom:1px solid var(--pr-line)}:where(.pb-css-tenders) .pr-search label{position:relative}:where(.pb-css-tenders) .pr-search input{width:100%;height:46px;border:1px solid #c8d5ea;border-radius:8px;padding:0 14px;background:#fff;color:var(--pr-ink);font:inherit}:where(.pb-css-tenders) .pr-search button{min-height:44px;border:1px solid var(--pr-blue);border-radius:7px;padding:8px 16px;background:var(--pr-blue);color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
:where(.pb-css-tenders) .pr-workspace{display:grid;grid-template-columns:256px minmax(0,1fr);gap:22px;margin-top:22px;align-items:start}:where(.pb-css-tenders) .pr-filter-shell{position:sticky;top:18px;border:1px solid var(--pr-line);border-radius:10px;background:#fff;box-shadow:0 8px 22px rgba(15,33,71,.035);overflow:hidden}:where(.pb-css-tenders) .pr-filter-shell>summary{display:none}:where(.pb-css-tenders) .pr-filters{display:grid;gap:16px;padding:17px}:where(.pb-css-tenders) .pr-filter-head{display:flex;justify-content:space-between;align-items:center}:where(.pb-css-tenders) .pr-filter-head h2{margin:0;font-size:15px}:where(.pb-css-tenders) .pr-filter-head a{font-size:12px;font-weight:800}:where(.pb-css-tenders) .pr-field{display:grid;gap:6px}:where(.pb-css-tenders) .pr-field>label, :where(.pb-css-tenders) .pr-field legend{padding:0;color:var(--pr-navy);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-tenders) .pr-field input, :where(.pb-css-tenders) .pr-field select{width:100%;min-height:42px;border:1px solid #cbd6e5;border-radius:7px;padding:8px 9px;background:#fff;color:var(--pr-ink);font:inherit;font-size:13px}:where(.pb-css-tenders) .pr-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px}:where(.pb-css-tenders) .pr-filter-submit{min-height:44px;border:1px solid var(--pr-blue);border-radius:7px;padding:9px 12px;background:var(--pr-blue);color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}
:where(.pb-css-tenders) .pr-result-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}:where(.pb-css-tenders) .pr-result-count{margin:0;color:var(--pr-navy);font-size:14px;font-weight:900}:where(.pb-css-tenders) .pr-result-count span{color:var(--pr-muted);font-weight:650}:where(.pb-css-tenders) .pr-sort{display:flex;align-items:center;gap:7px;color:var(--pr-muted);font-size:10px;font-weight:900;text-transform:uppercase}:where(.pb-css-tenders) .pr-sort select{height:40px;border:1px solid #cbd6e5;border-radius:7px;padding:0 30px 0 9px;background:#fff;color:var(--pr-ink);font:inherit;font-size:12px;font-weight:750;text-transform:none}:where(.pb-css-tenders) .pr-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}:where(.pb-css-tenders) .pr-chip, :where(.pb-css-tenders) .pr-clear{display:inline-flex;align-items:center;min-height:32px;border:1px solid #c7d4e9;border-radius:999px;padding:4px 9px;background:#fff;color:var(--pr-ink);font-size:11px;font-weight:750}:where(.pb-css-tenders) .pr-chip b{margin-left:6px;color:var(--pr-blue);font-size:15px}:where(.pb-css-tenders) .pr-clear{border-color:transparent;background:transparent;color:var(--pr-blue)}
:where(.pb-css-tenders) .pr-list{display:grid;gap:12px}:where(.pb-css-tenders) .pr-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 242px;border:1px solid var(--pr-line);border-radius:10px;background:#fff;box-shadow:0 7px 20px rgba(15,33,71,.035);overflow:hidden}:where(.pb-css-tenders) .pr-row:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--pr-green)}:where(.pb-css-tenders) .pr-row.is-award:before{background:#d18418}:where(.pb-css-tenders) .pr-main{padding:18px 20px 18px 24px}:where(.pb-css-tenders) .pr-aside{display:grid;align-content:start;gap:13px;border-left:1px solid var(--pr-line);padding:17px;background:var(--pr-soft)}:where(.pb-css-tenders) .pr-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:start}:where(.pb-css-tenders) .pr-tags{display:flex;flex-wrap:wrap;gap:5px}:where(.pb-css-tenders) .pr-tag{display:inline-flex;align-items:center;min-height:25px;border:1px solid #c7ded8;border-radius:999px;padding:3px 8px;background:var(--pr-green-soft);color:#12685f;font-size:10px;font-weight:900;letter-spacing:.035em;text-transform:uppercase}:where(.pb-css-tenders) .pr-row.is-award .pr-tag:first-child{border-color:#efd2a6;background:var(--pr-amber-soft);color:var(--pr-amber)}:where(.pb-css-tenders) .pr-date{color:var(--pr-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:750}:where(.pb-css-tenders) .pr-main h2{margin:11px 0 0;color:var(--pr-navy);font-size:21px;letter-spacing:-.015em;line-height:1.26}:where(.pb-css-tenders) .pr-main h2 a{color:var(--pr-navy)}:where(.pb-css-tenders) .pr-buyer{margin:8px 0 0;color:var(--pr-muted);font-size:13px;line-height:1.45}:where(.pb-css-tenders) .pr-winner{margin:15px 0 0;border-left:4px solid #d18418;padding:9px 12px;background:#fff8ec;color:var(--pr-navy)}:where(.pb-css-tenders) .pr-winner span{display:block;color:var(--pr-amber);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}:where(.pb-css-tenders) .pr-winner strong{display:block;margin-top:4px;font-size:17px;line-height:1.35}:where(.pb-css-tenders) .pr-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:15px 0 0}:where(.pb-css-tenders) .pr-facts div{border:1px solid #e4e9f1;border-radius:7px;padding:9px;background:#fbfcfe}:where(.pb-css-tenders) .pr-facts dt{color:var(--pr-muted);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-tenders) .pr-facts dd{margin:4px 0 0;color:var(--pr-navy);font-size:12px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}:where(.pb-css-tenders) .pr-cpv, :where(.pb-css-tenders) .pr-why{margin:12px 0 0;color:var(--pr-muted);font-size:12px;line-height:1.5}:where(.pb-css-tenders) .pr-cpv strong, :where(.pb-css-tenders) .pr-why strong{color:var(--pr-navy)}:where(.pb-css-tenders) .pr-why{border-radius:7px;padding:10px 11px;background:#f2f6fc}:where(.pb-css-tenders) .pr-lots{margin-top:12px;border:1px solid var(--pr-line);border-radius:7px;padding:0 10px;background:#fff}:where(.pb-css-tenders) .pr-lots summary{display:flex;align-items:center;min-height:42px;color:var(--pr-blue);font-size:12px;font-weight:850;cursor:pointer}:where(.pb-css-tenders) .pr-lots ul{margin:0 0 10px;padding-left:20px;color:var(--pr-muted);font-size:12px;line-height:1.5}
:where(.pb-css-tenders) .pr-aside dl{display:grid;gap:11px;margin:0}:where(.pb-css-tenders) .pr-aside dl div{display:grid;gap:3px}:where(.pb-css-tenders) .pr-aside dt{color:var(--pr-muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-tenders) .pr-aside dd{margin:0;color:var(--pr-navy);font-size:12px;font-weight:800;line-height:1.4;overflow-wrap:anywhere}:where(.pb-css-tenders) .pr-actions{display:grid;gap:7px}:where(.pb-css-tenders) .pr-actions a, :where(.pb-css-tenders) .pr-actions button{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #c5d2e6;border-radius:7px;padding:8px 10px;background:#fff;color:var(--pr-ink);font:inherit;font-size:12px;font-weight:850;cursor:pointer}:where(.pb-css-tenders) .pr-actions a:first-child{border-color:var(--pr-blue);background:var(--pr-blue);color:#fff}:where(.pb-css-tenders) .pr-evidence{margin:0;color:var(--pr-muted);font-size:10px;line-height:1.45}:where(.pb-css-tenders) .pr-empty{border:1px solid var(--pr-line);border-radius:10px;padding:26px;background:#fff}:where(.pb-css-tenders) .pr-empty h2{margin:0;color:var(--pr-navy);font-size:20px}:where(.pb-css-tenders) .pr-empty p{margin:8px 0 0;color:var(--pr-muted)}
:where(.pb-css-tenders) .pr-pagination{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:16px}:where(.pb-css-tenders) .pr-pagination a, :where(.pb-css-tenders) .pr-pagination span{display:flex;align-items:center;justify-content:center;min-height:42px;border:1px solid var(--pr-line);border-radius:7px;padding:8px 12px;background:#fff;color:var(--pr-ink);font-size:12px;font-weight:850}:where(.pb-css-tenders) .pr-pagination span{border:0;background:transparent;color:var(--pr-muted)}
@media(max-width:1000px){:where(.pb-css-tenders) .pr-head{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-head-actions{justify-content:flex-start}:where(.pb-css-tenders) .pr-band{grid-template-columns:repeat(2,minmax(0,1fr))}:where(.pb-css-tenders) .pr-metric{border-bottom:1px solid var(--pr-line)}:where(.pb-css-tenders) .pr-workspace{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-filter-shell{position:static}:where(.pb-css-tenders) .pr-filter-shell>summary{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:10px 14px;font-size:13px;font-weight:900;cursor:pointer}:where(.pb-css-tenders) .pr-filter-shell:not([open]) .pr-filters{display:none}}
@media(max-width:700px){:where(.pb-css-tenders) .pr-page{padding-top:18px;padding-bottom:48px}:where(.pb-css-tenders) .pr-search{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-segment{display:grid;grid-template-columns:1fr 1fr;width:100%}:where(.pb-css-tenders) .pr-band{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-metric{border-right:0}:where(.pb-css-tenders) .pr-row{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-aside{border-top:1px solid var(--pr-line);border-left:0}:where(.pb-css-tenders) .pr-facts{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-pair{grid-template-columns:1fr}:where(.pb-css-tenders) .pr-pagination{align-items:stretch}:where(.pb-css-tenders) .pr-pagination a{flex:1}:where(.pb-css-tenders) .pr-pagination span{display:none}}
@media(max-width:560px){:where(.pb-css-tenders) .pr-page{padding-left:var(--pb-gutter-sm);padding-right:var(--pb-gutter-sm)}}
@media(max-width:390px){:where(.pb-css-tenders) .pr-head-actions{display:grid;grid-template-columns:1fr}:where(.pb-css-tenders) .pr-action, :where(.pb-css-tenders) .pr-save button {width:100%;min-height:44px}:where(.pb-css-tenders) .pr-segment a{padding:8px 6px}:where(.pb-css-tenders) .pr-main{padding:16px 14px 16px 20px}:where(.pb-css-tenders) .pr-aside{padding:14px}:where(.pb-css-tenders) .pr-top{display:grid}:where(.pb-css-tenders) .pr-actions a, :where(.pb-css-tenders) .pr-actions button, :where(.pb-css-tenders) .pr-search button, :where(.pb-css-tenders) .pr-filter-submit{min-height:44px}}

/* ---- refusal-check ---- */
/* /refusal-check/ (templates/leads/nearby_refusal_check.html). */
/* leads/nearby_refusal_check.html */
/* One container and gutter on every page (docs/design-tokens.md). */
:where(.pb-css-refusal-check) .account-page.nearby-report-shell{width:100%;max-width:var(--pb-container);padding:0 var(--pb-gutter)}@media(max-width:560px){:where(.pb-css-refusal-check) .account-page.nearby-report-shell{padding:0 var(--pb-gutter-sm)}}:where(.pb-css-refusal-check) .nearby-page .nearby-map-placeholder{height:140px}
:where(.pb-css-refusal-check) .nearby-page{width:100%;margin:0 auto}:where(.pb-css-refusal-check) .nearby-hero{padding:30px;border-radius:14px;background:var(--pb-navy);color:#fff}:where(.pb-css-refusal-check) .nearby-hero h1{margin:5px 0 10px}:where(.pb-css-refusal-check) .nearby-hero p{max-width:720px;color:#d5def1;line-height:1.6}:where(.pb-css-refusal-check) .nearby-kicker{color:#7dd8c5;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}:where(.pb-css-refusal-check) .nearby-warning{border-left:4px solid #d99025;background:#fff8e8;padding:13px 15px;line-height:1.55;color:#644316}:where(.pb-css-refusal-check) .nearby-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);gap:18px;margin-top:18px}:where(.pb-css-refusal-check) .nearby-panel{border:1px solid #dfe7f2;border-radius:12px;padding:20px;background:#fff;box-shadow:0 12px 30px #0f214710}:where(.pb-css-refusal-check) .nearby-panel h2{margin:0 0 8px}:where(.pb-css-refusal-check) .nearby-map{height:390px;border:1px solid #cedae8;border-radius:9px;background:linear-gradient(135deg,#e9f2ef,#dce9f1);margin:12px 0;z-index:1}:where(.pb-css-refusal-check) .nearby-map-placeholder{display:grid;place-items:center;text-align:center;padding:25px;color:#536579}:where(.pb-css-refusal-check) .nearby-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}:where(.pb-css-refusal-check) .nearby-field{display:grid;gap:5px}:where(.pb-css-refusal-check) .nearby-field label, :where(.pb-css-refusal-check) .nearby-field legend{font-size:12px;font-weight:800;color:#34465f}:where(.pb-css-refusal-check) .nearby-field input, :where(.pb-css-refusal-check) .nearby-field select{width:100%;min-height:44px;border:1px solid #cbd7e7;border-radius:7px;padding:9px 10px;font:inherit}:where(.pb-css-refusal-check) .nearby-radii{display:flex;gap:7px;flex-wrap:wrap;border:0;padding:0;margin:4px 0 0}:where(.pb-css-refusal-check) .nearby-radii label{display:flex;align-items:center;gap:5px;border:1px solid #cad7e7;border-radius:999px;padding:8px 11px}:where(.pb-css-refusal-check) .nearby-confirm{display:flex;align-items:flex-start;gap:9px;margin:15px 0;line-height:1.45}:where(.pb-css-refusal-check) .nearby-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}:where(.pb-css-refusal-check) .nearby-button{border:0;border-radius:7px;padding:11px 15px;background:#176f63;color:#fff;font:inherit;font-weight:800;cursor:pointer}:where(.pb-css-refusal-check) .nearby-button[disabled]{opacity:.55;cursor:wait}:where(.pb-css-refusal-check) .nearby-status{min-height:22px;color:#4d6078}:where(.pb-css-refusal-check) .nearby-meta{font-size:13px;color:#596a7f;line-height:1.6}:where(.pb-css-refusal-check) .nearby-table{width:100%;border-collapse:collapse;font-size:12px}:where(.pb-css-refusal-check) .nearby-table th, :where(.pb-css-refusal-check) .nearby-table td{text-align:left;border-bottom:1px solid #e6ecf3;padding:7px 5px}:where(.pb-css-refusal-check) .nearby-table th{color:#4b5e75}:where(.pb-css-refusal-check) .nearby-page [hidden]{display:none!important}@media(max-width:780px){:where(.pb-css-refusal-check) .nearby-hero{padding:22px}:where(.pb-css-refusal-check) .nearby-grid{grid-template-columns:1fr}:where(.pb-css-refusal-check) .nearby-fields{grid-template-columns:1fr}:where(.pb-css-refusal-check) .nearby-map{height:310px}}

/* ---- commencements ---- */
/* /commencements/ (templates/accounts/commencements.html). */
/* accounts/commencements.html */
body:where(.pb-css-commencements) .account-page{width:100%;max-width:none}:where(.pb-css-commencements) .cm-page{--cm-ink:var(--pb-ink);--cm-navy:var(--pb-navy);--cm-blue:var(--pb-blue);--cm-teal:#16786d;--cm-teal-soft:#e9f5f2;--cm-muted:var(--pb-muted);--cm-line:#dce4ef;--cm-soft:#f6f8fc;max-width:var(--pb-container);margin:0 auto;padding:0 var(--pb-gutter) 8px;color:var(--cm-ink)}
:where(.pb-css-commencements) .cm-page *{min-width:0}:where(.pb-css-commencements) .cm-page a{text-decoration:none}:where(.pb-css-commencements) .cm-page a:hover{text-decoration:none}
:where(.pb-css-commencements) .cm-breadcrumbs{display:flex;gap:8px;margin:0 0 12px;color:var(--cm-muted);font-size:12px}:where(.pb-css-commencements) .cm-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;margin:0 0 18px;color:var(--cm-muted);font-size:12px;font-weight:700}
:where(.pb-css-commencements) .cm-index-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end}
:where(.pb-css-commencements) .cm-kicker{margin:0 0 7px;color:var(--cm-blue);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
:where(.pb-css-commencements) .cm-index-head h1{max-width:780px;margin:0;color:var(--cm-navy);font-weight:800}
:where(.pb-css-commencements) .cm-intro{max-width:790px;margin:15px 0 0;color:var(--cm-muted);font-size:16px;line-height:1.58}
:where(.pb-css-commencements) .cm-head-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
:where(.pb-css-commencements) .cm-action, :where(.pb-css-commencements) .cm-action-primary{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #c8d5ea;border-radius:7px;padding:9px 13px;background:#fff;color:var(--cm-ink);font-size:13px;font-weight:850}
:where(.pb-css-commencements) .cm-action:hover{border-color:var(--cm-blue);color:var(--cm-blue)}:where(.pb-css-commencements) .cm-action-primary{border-color:var(--cm-blue);background:var(--cm-blue);color:#fff}:where(.pb-css-commencements) .cm-action-primary:hover{background:var(--pb-blue-hover);color:#fff}
:where(.pb-css-commencements) .cm-index-band{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:28px 0 0;border:1px solid var(--cm-line);border-radius:10px;background:#fff;box-shadow:0 10px 25px rgba(15,33,71,.045);overflow:hidden}
:where(.pb-css-commencements) .cm-metric{padding:17px 18px;border-right:1px solid var(--cm-line)}:where(.pb-css-commencements) .cm-metric:last-child{border-right:0}:where(.pb-css-commencements) .cm-metric strong{display:block;color:var(--cm-navy);font-size:23px;letter-spacing:-.02em}:where(.pb-css-commencements) .cm-metric span{display:block;margin-top:4px;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-commencements) .cm-metric small{display:block;margin-top:5px;color:var(--cm-muted);font-size:11px;line-height:1.35}
:where(.pb-css-commencements) .cm-discovery-presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}:where(.pb-css-commencements) .cm-preset{display:grid;gap:4px;border:1px solid var(--cm-line);border-radius:9px;padding:13px 14px;background:#fff;color:var(--cm-ink)}:where(.pb-css-commencements) .cm-preset:hover{border-color:var(--cm-blue);box-shadow:0 8px 22px rgba(15,33,71,.06)}:where(.pb-css-commencements) .cm-preset strong{color:var(--cm-navy);font-size:13px}:where(.pb-css-commencements) .cm-preset span{color:var(--cm-muted);font-size:11px;line-height:1.4}
:where(.pb-css-commencements) .cm-form{margin-top:20px}:where(.pb-css-commencements) .cm-command{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--cm-line);border-bottom:1px solid var(--cm-line)}
:where(.pb-css-commencements) .cm-search{position:relative}:where(.pb-css-commencements) .cm-search input{width:100%;height:46px;border:1px solid #c8d5ea;border-radius:8px;padding:0 42px 0 14px;background:#fff;color:var(--cm-ink);font:inherit}:where(.pb-css-commencements) .cm-search input:focus, :where(.pb-css-commencements) .cm-filter-panel select:focus, :where(.pb-css-commencements) .cm-filter-panel input:focus, :where(.pb-css-commencements) .cm-sort select:focus{outline:3px solid rgba(47,111,237,.18);border-color:var(--cm-blue)}:where(.pb-css-commencements) .cm-search-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--cm-muted);font-size:18px;pointer-events:none}
:where(.pb-css-commencements) .cm-command-switches{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}:where(.pb-css-commencements) .cm-segment, :where(.pb-css-commencements) .cm-windows{display:flex;border:1px solid #c8d5ea;border-radius:8px;background:#fff;overflow:hidden}:where(.pb-css-commencements) .cm-segment a, :where(.pb-css-commencements) .cm-windows a{display:flex;align-items:center;gap:6px;min-height:42px;border-right:1px solid #dce4ef;padding:6px 11px;color:var(--cm-muted);font-size:12px;font-weight:800}:where(.pb-css-commencements) .cm-segment a:last-child, :where(.pb-css-commencements) .cm-windows a:last-child{border-right:0}:where(.pb-css-commencements) .cm-segment a.is-active, :where(.pb-css-commencements) .cm-windows a.is-active{background:var(--cm-blue);color:#fff}:where(.pb-css-commencements) .cm-segment small, :where(.pb-css-commencements) .cm-windows small{font-size:10px;font-weight:700;opacity:.9}
:where(.pb-css-commencements) .cm-workspace{display:grid;grid-template-columns:256px minmax(0,1fr);gap:22px;margin-top:22px;align-items:start}
:where(.pb-css-commencements) .cm-filter-shell{position:sticky;top:18px;border:1px solid var(--cm-line);border-radius:10px;background:#fff;box-shadow:0 8px 22px rgba(15,33,71,.035);overflow:hidden}:where(.pb-css-commencements) .cm-filter-summary{display:none}:where(.pb-css-commencements) .cm-filter-panel{display:grid;gap:17px;padding:17px}:where(.pb-css-commencements) .cm-filter-heading{display:flex;justify-content:space-between;align-items:center}:where(.pb-css-commencements) .cm-filter-heading h2{margin:0;font-size:15px}:where(.pb-css-commencements) .cm-filter-heading a{color:var(--cm-blue);font-size:12px;font-weight:800}
:where(.pb-css-commencements) .cm-field{display:grid;gap:7px}:where(.pb-css-commencements) .cm-field>label, :where(.pb-css-commencements) .cm-field legend{padding:0;color:var(--cm-navy);font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-commencements) .cm-field select, :where(.pb-css-commencements) .cm-field input[type=date]{width:100%;min-height:41px;border:1px solid #cbd6e5;border-radius:7px;padding:8px 9px;background:#fff;color:var(--cm-ink);font:inherit;font-size:13px}
:where(.pb-css-commencements) .cm-fieldset{display:grid;gap:8px;margin:0;border:0;padding:0}:where(.pb-css-commencements) .cm-check{display:flex;gap:8px;align-items:flex-start;color:var(--cm-muted);font-size:12px;line-height:1.35}:where(.pb-css-commencements) .cm-check input{width:16px;height:16px;margin:0;accent-color:var(--cm-blue);flex:0 0 auto}
:where(.pb-css-commencements) .cm-date-pair{display:grid;grid-template-columns:1fr 1fr;gap:7px}:where(.pb-css-commencements) .cm-date-pair span{display:grid;gap:4px;color:var(--cm-muted);font-size:10px}
:where(.pb-css-commencements) .cm-filter-submit{min-height:43px;border:1px solid var(--cm-blue);border-radius:7px;padding:9px 12px;background:var(--cm-blue);color:#fff;font:inherit;font-size:13px;font-weight:900;cursor:pointer}:where(.pb-css-commencements) .cm-filter-submit:hover{background:var(--pb-blue-hover)}
:where(.pb-css-commencements) .cm-results{min-width:0}:where(.pb-css-commencements) .cm-result-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}:where(.pb-css-commencements) .cm-result-count{margin:0;color:var(--cm-navy);font-size:14px;font-weight:900}:where(.pb-css-commencements) .cm-result-count span{color:var(--cm-muted);font-weight:650}:where(.pb-css-commencements) .cm-sort{display:flex;align-items:center;gap:7px;color:var(--cm-muted);font-size:11px;font-weight:900;text-transform:uppercase}:where(.pb-css-commencements) .cm-sort select{height:39px;border:1px solid #cbd6e5;border-radius:7px;padding:0 30px 0 9px;background:#fff;color:var(--cm-ink);font:inherit;font-size:12px;font-weight:750;text-transform:none}
:where(.pb-css-commencements) .cm-active-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}:where(.pb-css-commencements) .cm-active-chip, :where(.pb-css-commencements) .cm-clear{display:inline-flex;align-items:center;min-height:30px;border:1px solid #c7d4e9;border-radius:999px;padding:4px 9px;background:#fff;color:var(--cm-ink);font-size:11px;font-weight:750}:where(.pb-css-commencements) .cm-active-chip span{margin-left:6px;color:var(--cm-blue);font-size:15px;line-height:1}:where(.pb-css-commencements) .cm-clear{border-color:transparent;background:transparent;color:var(--cm-blue)}
:where(.pb-css-commencements) .cm-projects{display:grid;gap:12px}:where(.pb-css-commencements) .cm-project-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 230px;border:1px solid var(--cm-line);border-radius:10px;background:#fff;box-shadow:0 7px 20px rgba(15,33,71,.035);overflow:hidden}:where(.pb-css-commencements) .cm-project-row:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--cm-teal)}:where(.pb-css-commencements) .cm-project-row.is-expanded{border-bottom:0;border-radius:10px 10px 0 0}:where(.pb-css-commencements) .cm-project-main{padding:17px 19px 17px 23px}:where(.pb-css-commencements) .cm-project-aside{display:grid;align-content:start;gap:14px;border-left:1px solid var(--cm-line);padding:17px;background:var(--cm-soft)}
:where(.pb-css-commencements) .cm-row-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;align-items:start}:where(.pb-css-commencements) .cm-types{display:flex;flex-wrap:wrap;gap:5px}:where(.pb-css-commencements) .cm-type{display:inline-flex;align-items:center;min-height:25px;border:1px solid #c7ded8;border-radius:999px;padding:3px 8px;background:var(--cm-teal-soft);color:#12685f;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}:where(.pb-css-commencements) .cm-date{color:var(--cm-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;font-weight:750}:where(.pb-css-commencements) .cm-builder-hero{margin:10px 0 0;color:var(--cm-teal);font-size:13px;font-weight:900}
:where(.pb-css-commencements) .cm-notice-line, :where(.pb-css-commencements) .cm-notice-toggle{display:inline-flex;align-items:center;min-height:29px;margin-top:10px;border:0;border-radius:5px;padding:5px 8px;background:#edf2f8;color:var(--cm-ink);font:inherit;font-size:11px;font-weight:850}:where(.pb-css-commencements) .cm-notice-toggle{cursor:pointer}:where(.pb-css-commencements) .cm-notice-toggle:after{content:"+";margin-left:8px;color:var(--cm-blue);font-size:15px}:where(.pb-css-commencements) .cm-notice-toggle[aria-expanded=true]:after{content:"−"}
:where(.pb-css-commencements) .cm-project-main h2{margin:11px 0 0;font-size:20px;letter-spacing:-.015em;line-height:1.25}:where(.pb-css-commencements) .cm-project-main h2 a{color:var(--cm-navy)}:where(.pb-css-commencements) .cm-project-main h2 a:hover{color:var(--cm-blue)}
:where(.pb-css-commencements) .cm-meta{margin:6px 0 0;color:var(--cm-muted);font-size:12px;line-height:1.45}:where(.pb-css-commencements) .cm-quote{display:-webkit-box;margin:12px 0 0;color:#3f506c;font-size:13px;font-style:italic;line-height:1.55;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}
:where(.pb-css-commencements) .cm-aside-label{margin:0;color:var(--cm-muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-commencements) .cm-scale{margin:4px 0 0;color:var(--cm-navy);font-size:17px;font-weight:900}:where(.pb-css-commencements) .cm-scale-basis{margin:4px 0 0;color:var(--cm-muted);font-size:11px;font-weight:750}:where(.pb-css-commencements) .cm-caveat{margin:3px 0 0;color:var(--cm-muted);font-size:10.5px;line-height:1.35}
:where(.pb-css-commencements) .cm-conflict{display:inline-flex;margin-top:7px;border:1px solid #d6a04b;border-radius:999px;padding:3px 7px;background:#fff7e8;color:#744d10;font-size:10px;font-weight:850}
:where(.pb-css-commencements) .cm-evidence{display:grid;gap:7px}:where(.pb-css-commencements) .cm-evidence-state{display:flex;gap:7px;align-items:center;color:#334867;font-size:11px;font-weight:800}:where(.pb-css-commencements) .cm-evidence-state:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--cm-blue);flex:0 0 auto}:where(.pb-css-commencements) .cm-evidence-state.is-missing{border:1px dashed #aab7ca;border-radius:5px;padding:5px 7px;color:var(--cm-muted)}:where(.pb-css-commencements) .cm-evidence-state.is-missing:before{background:#9aa8bb}:where(.pb-css-commencements) .cm-builder-name{margin:0 0 0 15px;color:var(--cm-muted);font-size:10.5px;line-height:1.35}
:where(.pb-css-commencements) .cm-row-actions{display:flex;flex-wrap:wrap;gap:6px}:where(.pb-css-commencements) .cm-row-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #c8d5ea;border-radius:6px;padding:9px 11px;background:#fff;color:var(--cm-ink);font-size:11px;font-weight:850}:where(.pb-css-commencements) .cm-row-action.is-primary{border-color:var(--cm-blue);background:var(--cm-blue);color:#fff}
:where(.pb-css-commencements) .cm-notice-set{display:none;margin-top:-12px;border:1px solid var(--cm-line);border-top:0;border-left:6px solid var(--cm-teal);border-radius:0 0 10px 10px;background:#fbfcfe;overflow:hidden}:where(.pb-css-commencements) .cm-notice-set.is-open{display:block}:where(.pb-css-commencements) .cm-expanded-head, :where(.pb-css-commencements) .cm-expanded-row{display:grid;grid-template-columns:170px minmax(220px,1fr) 145px 105px;gap:12px}:where(.pb-css-commencements) .cm-expanded-head{padding:9px 15px;background:#eef3f8;color:var(--cm-muted);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-commencements) .cm-expanded-row{padding:12px 15px;border-top:1px solid var(--cm-line);color:#344763;font-size:11px;line-height:1.4}:where(.pb-css-commencements) .cm-expanded-row a{color:var(--cm-navy);font-weight:900}:where(.pb-css-commencements) .cm-expanded-row small{display:block;margin-top:2px;color:var(--cm-muted);font-size:10px}:where(.pb-css-commencements) .cm-expanded-method{margin:0;padding:10px 15px;border-top:1px solid var(--cm-line);color:var(--cm-muted);font-size:10.5px;line-height:1.4}
:where(.pb-css-commencements) .cm-table-wrap{max-width:100%;border:1px solid var(--cm-line);border-radius:10px;background:#fff;overflow-x:auto;box-shadow:0 7px 20px rgba(15,33,71,.035)}:where(.pb-css-commencements) .cm-notice-table{width:100%;min-width:850px;border-collapse:collapse}:where(.pb-css-commencements) .cm-notice-table th{padding:10px 12px;background:#eef3f8;color:var(--cm-muted);font-size:9px;letter-spacing:.07em;text-align:left;text-transform:uppercase}:where(.pb-css-commencements) .cm-notice-table td{padding:13px 12px;border-top:1px solid var(--cm-line);color:#344763;font-size:11px;line-height:1.45;vertical-align:top}:where(.pb-css-commencements) .cm-notice-table tbody tr:hover{background:#fbfcff}:where(.pb-css-commencements) .cm-notice-table a{color:var(--cm-navy);font-weight:900}:where(.pb-css-commencements) .cm-notice-table strong{display:block;color:var(--cm-navy);font-size:12px}:where(.pb-css-commencements) .cm-table-secondary{display:block;margin-top:4px;color:var(--cm-muted);font-size:10px}
:where(.pb-css-commencements) .cm-empty{border:1px dashed #aab7ca;border-radius:10px;padding:44px 20px;background:#fff;text-align:center}:where(.pb-css-commencements) .cm-empty h2{margin:0}:where(.pb-css-commencements) .cm-empty p{max-width:550px;margin:10px auto 16px;color:var(--cm-muted)}:where(.pb-css-commencements) .cm-empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
:where(.pb-css-commencements) .cm-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:22px}:where(.pb-css-commencements) .cm-pages a, :where(.pb-css-commencements) .cm-pages strong{display:grid;place-items:center;min-width:37px;height:37px;border:1px solid #c8d5ea;border-radius:7px;background:#fff;color:var(--cm-ink);font-size:12px;text-decoration:none}:where(.pb-css-commencements) .cm-pages strong{border-color:var(--cm-blue);background:var(--cm-blue);color:#fff}
:where(.pb-css-commencements) .cm-method{margin:24px 0 0;border-top:1px solid var(--cm-line);padding:16px 0 0;color:var(--cm-muted);font-size:11px;line-height:1.55}:where(.pb-css-commencements) .cm-method strong{color:var(--cm-ink)}
:where(.pb-css-commencements) .cm-conversion{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;margin-top:18px;border:1px solid #c7d9f7;border-radius:10px;padding:17px 18px;background:#f1f6ff}:where(.pb-css-commencements) .cm-conversion h2{margin:0;color:var(--cm-navy);font-size:17px}:where(.pb-css-commencements) .cm-conversion p{margin:5px 0 0;color:var(--cm-muted);font-size:12px;line-height:1.5}:where(.pb-css-commencements) .cm-conversion-actions{display:flex;flex-wrap:wrap;gap:7px}
:where(.pb-css-commencements) .cm-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;border:0!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
@media(max-width:1050px){:where(.pb-css-commencements) .cm-index-band{grid-template-columns:repeat(3,1fr)}:where(.pb-css-commencements) .cm-metric:nth-child(3){border-right:0}:where(.pb-css-commencements) .cm-metric:nth-child(-n+3){border-bottom:1px solid var(--cm-line)}:where(.pb-css-commencements) .cm-workspace{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-filter-shell{position:static}:where(.pb-css-commencements) .cm-filter-summary{display:flex;justify-content:space-between;padding:14px 17px;color:var(--cm-navy);font-size:13px;font-weight:900;cursor:pointer}:where(.pb-css-commencements) .cm-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--cm-line)}:where(.pb-css-commencements) .cm-filter-heading, :where(.pb-css-commencements) .cm-filter-submit{grid-column:1/-1}}
@media(max-width:780px){:where(.pb-css-commencements) .cm-index-head{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-head-actions{justify-content:flex-start}:where(.pb-css-commencements) .cm-command{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-command-switches{justify-content:flex-start}:where(.pb-css-commencements) .cm-windows{width:100%}:where(.pb-css-commencements) .cm-windows a{flex:1;justify-content:center;padding:6px}:where(.pb-css-commencements) .cm-windows small{display:none}:where(.pb-css-commencements) .cm-project-row{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-project-aside{border-top:1px solid var(--cm-line);border-left:0;padding-left:23px}:where(.pb-css-commencements) .cm-expanded-head{display:none}:where(.pb-css-commencements) .cm-expanded-row{grid-template-columns:1fr 1fr;gap:8px}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(2){grid-column:1/-1;grid-row:1}:where(.pb-css-commencements) .cm-expanded-row>span:before{display:block;margin-bottom:2px;color:var(--cm-muted);font-size:8px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(1):before{content:"Notice identity"}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(2):before{content:"Works stated"}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(3):before{content:"Scale"}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(4):before{content:"Commenced"}:where(.pb-css-commencements) .cm-conversion{grid-template-columns:1fr}}
@media(max-width:560px){:where(.pb-css-commencements) .cm-page{margin-top:-8px;padding:0 var(--pb-gutter-sm) 12px}:where(.pb-css-commencements) .cm-status{display:grid}:where(.pb-css-commencements) .cm-index-band{grid-template-columns:repeat(2,1fr)}:where(.pb-css-commencements) .cm-metric, :where(.pb-css-commencements) .cm-metric:nth-child(3){border-right:1px solid var(--cm-line);border-bottom:1px solid var(--cm-line)}:where(.pb-css-commencements) .cm-metric:nth-child(even){border-right:0}:where(.pb-css-commencements) .cm-metric:last-child{grid-column:1/-1;border:0}:where(.pb-css-commencements) .cm-discovery-presets{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-command-switches{display:grid}:where(.pb-css-commencements) .cm-segment{width:100%}:where(.pb-css-commencements) .cm-segment a{flex:1;justify-content:center}:where(.pb-css-commencements) .cm-filter-panel{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-filter-heading, :where(.pb-css-commencements) .cm-filter-submit{grid-column:auto}:where(.pb-css-commencements) .cm-result-bar{align-items:flex-start}:where(.pb-css-commencements) .cm-sort{width:100%;justify-content:space-between}:where(.pb-css-commencements) .cm-sort select{flex:1}:where(.pb-css-commencements) .cm-project-main{padding-right:15px}:where(.pb-css-commencements) .cm-row-top{display:grid}:where(.pb-css-commencements) .cm-expanded-row{grid-template-columns:1fr}:where(.pb-css-commencements) .cm-expanded-row>span:nth-child(2){grid-column:auto;grid-row:auto}:where(.pb-css-commencements) .cm-head-actions .cm-action, :where(.pb-css-commencements) .cm-head-actions .cm-action-primary{flex:1 1 130px}:where(.pb-css-commencements) .cm-conversion-actions .cm-action, :where(.pb-css-commencements) .cm-conversion-actions .cm-action-primary{flex:1 1 145px}}
/* R3-B answer-first layout (appended so it wins over the rules above). */
:where(.pb-css-commencements) .cm-index-head{display:block}:where(.pb-css-commencements) .cm-count-line{margin:12px 0 0;color:var(--cm-muted);font-size:15px;line-height:1.45}:where(.pb-css-commencements) .cm-count-line strong{color:var(--cm-navy);font-weight:900}:where(.pb-css-commencements) .cm-count-line time{color:var(--cm-ink);font-weight:800;white-space:nowrap}
:where(.pb-css-commencements) .cm-form{margin-top:20px}:where(.pb-css-commencements) .cm-workspace{margin-top:0}:where(.pb-css-commencements) .cm-filter-shell{position:static}:where(.pb-css-commencements) .cm-filter-summary{display:flex;justify-content:space-between;gap:10px;padding:14px 17px;color:var(--cm-navy);font-size:13px;font-weight:900;cursor:pointer;list-style:none}:where(.pb-css-commencements) .cm-filter-summary::-webkit-details-marker{display:none}:where(.pb-css-commencements) .cm-filter-summary span:last-child{color:var(--cm-blue)}:where(.pb-css-commencements) .cm-filter-shell[open] .cm-filter-summary{border-bottom:1px solid var(--cm-line)}
:where(.pb-css-commencements) .cm-command{display:grid;grid-template-columns:1fr;gap:10px;padding:0;border:0}:where(.pb-css-commencements) .cm-command-switches{display:grid;gap:8px;justify-content:stretch}:where(.pb-css-commencements) .cm-segment a{flex:1;justify-content:center}:where(.pb-css-commencements) .cm-windows{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}:where(.pb-css-commencements) .cm-windows a{justify-content:center;border-bottom:1px solid #dce4ef}:where(.pb-css-commencements) .cm-windows small{display:none}
:where(.pb-css-commencements) .cm-head-actions{justify-content:flex-start;margin-top:22px}:where(.pb-css-commencements) .cm-rest .cm-index-band{margin-top:22px}:where(.pb-css-commencements) .cm-about{margin-top:22px}:where(.pb-css-commencements) .cm-about .cm-intro{margin:0}:where(.pb-css-commencements) .cm-about .cm-status{margin:10px 0 0}
@media(min-width:781px){:where(.pb-css-commencements) .cm-page{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:28px;grid-template-areas:"crumbs crumbs" "head actions" "main main" "rest rest"}:where(.pb-css-commencements) .cm-breadcrumbs{grid-area:crumbs}:where(.pb-css-commencements) .cm-index-head{grid-area:head}:where(.pb-css-commencements) .cm-head-actions{grid-area:actions;align-self:end;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:340px;margin-top:0}:where(.pb-css-commencements) .cm-form{grid-area:main}:where(.pb-css-commencements) .cm-rest{grid-area:rest}}
@media(min-width:1051px){:where(.pb-css-commencements) .cm-workspace{grid-template-areas:"filters results"}:where(.pb-css-commencements) .cm-results{grid-area:results}:where(.pb-css-commencements) .cm-filter-shell{grid-area:filters}:where(.pb-css-commencements) .cm-filter-panel{padding-top:14px}}
@media(max-width:1050px){:where(.pb-css-commencements) .cm-command{grid-column:1/-1}}
@media(max-width:560px){:where(.pb-css-commencements) .cm-count-line{font-size:14px}:where(.pb-css-commencements) .cm-form{margin-top:14px}}

/* ---- commencement-drawings ---- */
/* /commencements/drawings/ (templates/accounts/commencement_drawings_index.html). */
/* accounts/commencement_drawings_index.html */
body:where(.pb-css-commencement-drawings) .account-page{width:100%;max-width:none}
:where(.pb-css-commencement-drawings) .dx-page{--dx-ink:#102343;--dx-navy:#071a38;--dx-blue:#315fda;--dx-teal:#14766c;--dx-muted:#5e6f89;--dx-line:#dbe3ee;--dx-soft:#f5f7fb;max-width:1320px;margin:0 auto;padding:28px 24px 70px;color:var(--dx-ink)}
:where(.pb-css-commencement-drawings) .dx-page *{min-width:0}:where(.pb-css-commencement-drawings) .dx-page a{text-decoration:none}
:where(.pb-css-commencement-drawings) .dx-breadcrumb{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px;color:var(--dx-muted);font-size:12px;font-weight:750}:where(.pb-css-commencement-drawings) .dx-breadcrumb a{color:var(--dx-blue)}
:where(.pb-css-commencement-drawings) .dx-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end}:where(.pb-css-commencement-drawings) .dx-kicker{margin:0 0 8px;color:var(--dx-blue);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
:where(.pb-css-commencement-drawings) .dx-head h1{max-width:850px;margin:0;color:var(--dx-navy);font-weight:850}
:where(.pb-css-commencement-drawings) .dx-intro{max-width:860px;margin:17px 0 0;color:var(--dx-muted);font-size:16px;line-height:1.6}:where(.pb-css-commencement-drawings) .dx-head-note{max-width:280px;border-left:3px solid var(--dx-teal);padding:4px 0 4px 15px;color:var(--dx-muted);font-size:12px;line-height:1.55}
:where(.pb-css-commencement-drawings) .dx-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:30px 0 0;border:1px solid var(--dx-line);border-radius:11px;background:#fff;box-shadow:0 10px 28px rgba(16,35,67,.05);overflow:hidden}:where(.pb-css-commencement-drawings) .dx-metric{display:grid;gap:3px;border-right:1px solid var(--dx-line);padding:18px}:where(.pb-css-commencement-drawings) .dx-metric:last-child{border-right:0}:where(.pb-css-commencement-drawings) .dx-metric strong{color:var(--dx-navy);font-size:26px}:where(.pb-css-commencement-drawings) .dx-metric span{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}:where(.pb-css-commencement-drawings) .dx-metric small{color:var(--dx-muted);font-size:10px}
:where(.pb-css-commencement-drawings) .dx-method{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;margin-top:18px;border:1px solid #cfe2dd;border-radius:9px;padding:13px 15px;background:#f1f8f6;color:#355e59;font-size:11px;line-height:1.55}:where(.pb-css-commencement-drawings) .dx-method strong{color:#144f48}:where(.pb-css-commencement-drawings) .dx-method span:last-child{white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:800}
:where(.pb-css-commencement-drawings) .dx-form{display:grid;grid-template-columns:minmax(240px,1fr) repeat(3,minmax(150px,220px)) auto;gap:9px;margin-top:24px}:where(.pb-css-commencement-drawings) .dx-field{display:grid;gap:5px}:where(.pb-css-commencement-drawings) .dx-field label{color:var(--dx-muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-commencement-drawings) .dx-field input, :where(.pb-css-commencement-drawings) .dx-field select{width:100%;height:43px;border:1px solid #c8d4e4;border-radius:7px;padding:0 11px;background:#fff;color:var(--dx-ink);font:inherit;font-size:12px}:where(.pb-css-commencement-drawings) .dx-submit{align-self:end;height:43px;border:1px solid var(--dx-blue);border-radius:7px;padding:0 17px;background:var(--dx-blue);color:#fff;font:inherit;font-size:12px;font-weight:900;cursor:pointer}
:where(.pb-css-commencement-drawings) .dx-results-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center;margin:25px 0 12px}:where(.pb-css-commencement-drawings) .dx-results-head p{margin:0;color:var(--dx-navy);font-size:14px;font-weight:900}:where(.pb-css-commencement-drawings) .dx-results-head span{color:var(--dx-muted);font-weight:650}:where(.pb-css-commencement-drawings) .dx-results-head a{color:var(--dx-blue);font-size:12px;font-weight:850}
:where(.pb-css-commencement-drawings) .dx-projects{display:grid;gap:14px}:where(.pb-css-commencement-drawings) .dx-project{border:1px solid var(--dx-line);border-radius:11px;background:#fff;box-shadow:0 8px 24px rgba(16,35,67,.04);overflow:hidden}:where(.pb-css-commencement-drawings) .dx-project.is-limited{border-left:5px solid #aa7633}:where(.pb-css-commencement-drawings) .dx-project:not(.is-limited){border-left:5px solid var(--dx-teal)}
:where(.pb-css-commencement-drawings) .dx-project-head{display:grid;grid-template-columns:minmax(0,1fr) 265px;gap:20px;padding:20px 21px}:where(.pb-css-commencement-drawings) .dx-rank{display:flex;flex-wrap:wrap;gap:7px;align-items:center;color:var(--dx-muted);font-size:10px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}:where(.pb-css-commencement-drawings) .dx-state{display:inline-flex;align-items:center;min-height:25px;border:1px solid #bcdad3;border-radius:999px;padding:3px 8px;background:#edf8f5;color:#17655d;letter-spacing:0;text-transform:none}:where(.pb-css-commencement-drawings) .is-limited .dx-state{border-color:#e0c69f;background:#fff7e9;color:#81551b}
:where(.pb-css-commencement-drawings) .dx-project h2{margin:10px 0 0;font-size:22px;line-height:1.25}:where(.pb-css-commencement-drawings) .dx-project h2 a{color:var(--dx-navy)}:where(.pb-css-commencement-drawings) .dx-project h2 a:hover{color:var(--dx-blue)}:where(.pb-css-commencement-drawings) .dx-meta{margin:7px 0 0;color:var(--dx-muted);font-size:12px;line-height:1.5}:where(.pb-css-commencement-drawings) .dx-ref{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;color:#344b70;font-weight:800}
:where(.pb-css-commencement-drawings) .dx-project-aside{display:grid;align-content:start;gap:10px;border-left:1px solid var(--dx-line);padding-left:20px}:where(.pb-css-commencement-drawings) .dx-scale{margin:0;color:var(--dx-navy);font-size:16px;font-weight:900}:where(.pb-css-commencement-drawings) .dx-caveat{margin:0;color:var(--dx-muted);font-size:10px;line-height:1.4}:where(.pb-css-commencement-drawings) .dx-checked{margin:0;color:var(--dx-muted);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}
:where(.pb-css-commencement-drawings) .dx-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}:where(.pb-css-commencement-drawings) .dx-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;border:1px solid #c8d4e5;border-radius:6px;padding:6px 9px;background:#fff;color:var(--dx-ink);font-size:11px;font-weight:850}:where(.pb-css-commencement-drawings) .dx-action:hover{border-color:var(--dx-blue);color:var(--dx-blue)}:where(.pb-css-commencement-drawings) .dx-action.is-primary{border-color:var(--dx-blue);background:var(--dx-blue);color:#fff}
:where(.pb-css-commencement-drawings) .dx-category-shell{border-top:1px solid var(--dx-line);background:var(--dx-soft)}:where(.pb-css-commencement-drawings) .dx-category-shell>summary{display:flex;justify-content:space-between;gap:10px;padding:13px 20px;color:var(--dx-navy);font-size:12px;font-weight:900;cursor:pointer;list-style:none}:where(.pb-css-commencement-drawings) .dx-category-shell>summary::-webkit-details-marker{display:none}:where(.pb-css-commencement-drawings) .dx-category-shell>summary:after{content:"+";color:var(--dx-blue);font-size:17px;line-height:1}:where(.pb-css-commencement-drawings) .dx-category-shell[open]>summary:after{content:"−"}:where(.pb-css-commencement-drawings) .dx-category-shell>summary span{color:var(--dx-muted);font-weight:650}
:where(.pb-css-commencement-drawings) .dx-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border-top:1px solid var(--dx-line);background:var(--dx-line)}:where(.pb-css-commencement-drawings) .dx-category{display:grid;align-content:start;gap:8px;padding:15px;background:#fff}:where(.pb-css-commencement-drawings) .dx-category-title{display:flex;justify-content:space-between;gap:8px;align-items:start}:where(.pb-css-commencement-drawings) .dx-category h3{margin:0;color:var(--dx-navy);font-size:13px}:where(.pb-css-commencement-drawings) .dx-category-badge{flex:0 0 auto;border-radius:999px;padding:3px 6px;background:#e9f3ff;color:#2853aa;font-size:9px;font-weight:900}:where(.pb-css-commencement-drawings) .dx-category-badge.is-indexed{background:#f0f2f6;color:#5a6980}:where(.pb-css-commencement-drawings) .dx-category ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}:where(.pb-css-commencement-drawings) .dx-category li{color:#4f607a;font-size:10.5px;line-height:1.4}:where(.pb-css-commencement-drawings) .dx-category li a{color:#173e91;font-weight:850}:where(.pb-css-commencement-drawings) .dx-category li span{display:block;color:var(--dx-muted);font-size:9px}:where(.pb-css-commencement-drawings) .dx-category-empty{grid-column:1/-1;margin:0;padding:20px;background:#fff;color:var(--dx-muted);font-size:12px}
:where(.pb-css-commencement-drawings) .dx-mappings{border-top:1px solid var(--dx-line);padding:17px 20px;background:#eef7f5}:where(.pb-css-commencement-drawings) .dx-mappings h3{margin:0;color:#124f48;font-size:13px}:where(.pb-css-commencement-drawings) .dx-mapping-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin-top:10px}:where(.pb-css-commencement-drawings) .dx-mapping{border:1px solid #c9ddd8;border-radius:7px;padding:9px;background:#fff}:where(.pb-css-commencement-drawings) .dx-mapping strong, :where(.pb-css-commencement-drawings) .dx-mapping span{display:block}:where(.pb-css-commencement-drawings) .dx-mapping strong{color:var(--dx-navy);font-size:11px}:where(.pb-css-commencement-drawings) .dx-mapping span{margin-top:3px;color:var(--dx-muted);font-size:9px}:where(.pb-css-commencement-drawings) .dx-mapping a{display:inline-block;margin-top:6px;color:var(--dx-blue);font-size:9px;font-weight:900}
:where(.pb-css-commencement-drawings) .dx-empty{border:1px dashed #aab6c8;border-radius:10px;padding:50px 20px;background:#fff;text-align:center}:where(.pb-css-commencement-drawings) .dx-empty h2{margin:0}:where(.pb-css-commencement-drawings) .dx-empty p{color:var(--dx-muted)}:where(.pb-css-commencement-drawings) .dx-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:24px}:where(.pb-css-commencement-drawings) .dx-pages a, :where(.pb-css-commencement-drawings) .dx-pages strong{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid #c8d4e5;border-radius:7px;background:#fff;color:var(--dx-ink);font-size:12px}:where(.pb-css-commencement-drawings) .dx-pages strong{border-color:var(--dx-blue);background:var(--dx-blue);color:#fff}
:where(.pb-css-commencement-drawings) .dx-boundary{margin:25px 0 0;border-top:1px solid var(--dx-line);padding-top:16px;color:var(--dx-muted);font-size:11px;line-height:1.6}:where(.pb-css-commencement-drawings) .dx-boundary strong{color:var(--dx-ink)}
@media(max-width:1080px){:where(.pb-css-commencement-drawings) .dx-metrics{grid-template-columns:repeat(3,1fr)}:where(.pb-css-commencement-drawings) .dx-metric:nth-child(3){border-right:0}:where(.pb-css-commencement-drawings) .dx-form{grid-template-columns:repeat(2,minmax(0,1fr))}:where(.pb-css-commencement-drawings) .dx-submit{width:100%}:where(.pb-css-commencement-drawings) .dx-categories{grid-template-columns:repeat(2,1fr)}:where(.pb-css-commencement-drawings) .dx-mapping-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){:where(.pb-css-commencement-drawings) .dx-page{padding:21px 16px 55px}:where(.pb-css-commencement-drawings) .dx-head{grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-head-note{max-width:none}:where(.pb-css-commencement-drawings) .dx-metrics{grid-template-columns:repeat(2,1fr)}:where(.pb-css-commencement-drawings) .dx-metric{border-bottom:1px solid var(--dx-line)}:where(.pb-css-commencement-drawings) .dx-metric:nth-child(even){border-right:0}:where(.pb-css-commencement-drawings) .dx-metric:last-child{grid-column:1/-1;border:0}:where(.pb-css-commencement-drawings) .dx-method{grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-method span:last-child{white-space:normal}:where(.pb-css-commencement-drawings) .dx-form{grid-template-columns:1fr 1fr}:where(.pb-css-commencement-drawings) .dx-field:first-child, :where(.pb-css-commencement-drawings) .dx-submit{grid-column:1/-1}:where(.pb-css-commencement-drawings) .dx-project-head{grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-project-aside{border-top:1px solid var(--dx-line);border-left:0;padding-top:15px;padding-left:0}:where(.pb-css-commencement-drawings) .dx-categories{grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-mapping-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){:where(.pb-css-commencement-drawings) .dx-form{grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-field:first-child, :where(.pb-css-commencement-drawings) .dx-submit{grid-column:auto}:where(.pb-css-commencement-drawings) .dx-actions{display:grid;grid-template-columns:1fr}:where(.pb-css-commencement-drawings) .dx-action{width:100%}:where(.pb-css-commencement-drawings) .dx-mapping-grid{grid-template-columns:1fr}}

/* ---- major-dossiers ---- */
/* /commencements/major-dossiers/ (templates/accounts/major_dossiers.html). */
/* accounts/major_dossiers.html */
:where(.pb-css-major-dossiers) .account-page.major-dossiers-page-shell { width: 100%; }
:where(.pb-css-major-dossiers) .mds {
  --mds-navy: #102341;
  --mds-blue: #245cc5;
  --mds-teal: #0c7b6c;
  --mds-muted: #596a82;
  --mds-line: #d9e1ec;
  --mds-soft: #f3f6fa;
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 28px 0 64px;
  color: var(--ink);
}
:where(.pb-css-major-dossiers) .mds * { min-width: 0; }
:where(.pb-css-major-dossiers) .mds-breadcrumbs {
  display: flex;
  gap: 8px;
  margin: 0 0 18px;
  color: var(--mds-muted);
  font-size: 13px;
}
:where(.pb-css-major-dossiers) .mds-breadcrumbs a { color: var(--mds-blue); font-weight: 750; }
:where(.pb-css-major-dossiers) .mds-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr);
  gap: 32px;
  align-items: end;
  padding: 38px;
  border-radius: 16px;
  background: linear-gradient(130deg, #0d1d38, #16335f);
  color: #fff;
  box-shadow: 0 20px 54px rgba(12, 31, 64, .16);
  overflow: hidden;
}
:where(.pb-css-major-dossiers) .mds-kicker {
  margin: 0 0 10px;
  color: #8bd8cb;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}
:where(.pb-css-major-dossiers) .mds-hero h1 {
  max-width: 760px;
  margin: 0;
}
:where(.pb-css-major-dossiers) .mds-intro {
  max-width: 760px;
  margin: 20px 0 0;
  color: #d7e2f2;
  font-size: 16px;
  line-height: 1.6;
}
:where(.pb-css-major-dossiers) .mds-hero-note {
  border-left: 2px solid #45b9a8;
  padding-left: 18px;
  color: #c8d7ea;
  font-size: 13px;
  line-height: 1.55;
}
:where(.pb-css-major-dossiers) .mds-hero-note strong { display: block; color: #fff; font-size: 15px; }
:where(.pb-css-major-dossiers) .mds-metrics {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  margin: 18px 0 0;
  border: 1px solid var(--mds-line);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}
:where(.pb-css-major-dossiers) .mds-metric {
  min-height: 108px;
  border-right: 1px solid var(--mds-line);
  padding: 21px 18px;
}
:where(.pb-css-major-dossiers) .mds-metric:last-child { border: 0; }
:where(.pb-css-major-dossiers) .mds-metric strong {
  display: block;
  color: var(--mds-navy);
  font-size: 27px;
  letter-spacing: -.03em;
}
:where(.pb-css-major-dossiers) .mds-metric span {
  display: block;
  margin-top: 4px;
  color: var(--mds-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
}
:where(.pb-css-major-dossiers) .mds-section { margin-top: 42px; }
:where(.pb-css-major-dossiers) .mds-section-head {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: end;
  margin-bottom: 16px;
}
:where(.pb-css-major-dossiers) .mds-section-head h2 {
  margin: 0;
  color: var(--mds-navy);
  font-size: 28px;
  letter-spacing: -.025em;
}
:where(.pb-css-major-dossiers) .mds-section-head p {
  max-width: 610px;
  margin: 0;
  color: var(--mds-muted);
  font-size: 13px;
  line-height: 1.5;
}
:where(.pb-css-major-dossiers) .mds-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
:where(.pb-css-major-dossiers) .mds-card {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 16px;
  border: 1px solid var(--mds-line);
  border-radius: 12px;
  padding: 20px;
  background: #fff;
  box-shadow: 0 8px 24px rgba(17, 36, 70, .045);
}
:where(.pb-css-major-dossiers) .mds-rank {
  display: grid;
  place-items: center;
  width: 58px;
  height: 46px;
  border-radius: 9px;
  background: #e5f4f0;
  color: var(--mds-teal);
  font-size: 14px;
  font-weight: 950;
}
:where(.pb-css-major-dossiers) .mds-card-top {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}
:where(.pb-css-major-dossiers) .mds-region, :where(.pb-css-major-dossiers) .mds-state {
  display: inline-flex;
  border-radius: 999px;
  padding: 4px 8px;
  background: #edf2f8;
  color: #435570;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
:where(.pb-css-major-dossiers) .mds-state { background: #e5f4f0; color: #12685f; }
:where(.pb-css-major-dossiers) .mds-card h3 { margin: 10px 0 4px; font-size: 19px; line-height: 1.25; }
:where(.pb-css-major-dossiers) .mds-card h3 a { color: var(--mds-navy); }
:where(.pb-css-major-dossiers) .mds-authority { margin: 0; color: var(--mds-muted); font-size: 12px; }
:where(.pb-css-major-dossiers) .mds-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 14px 0 0;
}
:where(.pb-css-major-dossiers) .mds-facts span {
  border: 1px solid #d9e1ec;
  border-radius: 6px;
  padding: 5px 7px;
  color: #3d4f69;
  font-size: 10px;
  font-weight: 800;
}
:where(.pb-css-major-dossiers) .mds-cues { margin: 13px 0 0; padding-left: 17px; color: #52647d; font-size: 11px; line-height: 1.5; }
:where(.pb-css-major-dossiers) .mds-reason { margin: 12px 0 0; color: var(--mds-muted); font-size: 11px; line-height: 1.5; }
:where(.pb-css-major-dossiers) .mds-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
:where(.pb-css-major-dossiers) .mds-actions a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  border: 1px solid #b8c8de;
  border-radius: 7px;
  padding: 8px 11px;
  color: var(--mds-blue);
  font-size: 11px;
  font-weight: 900;
  text-decoration: none;
}
:where(.pb-css-major-dossiers) .mds-actions a:first-child { border-color: var(--mds-blue); background: var(--mds-blue); color: #fff; }
:where(.pb-css-major-dossiers) .mds-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-top: 18px;
  color: var(--mds-muted);
  font-size: 12px;
  font-weight: 800;
}
:where(.pb-css-major-dossiers) .mds-pagination-links { display: flex; gap: 8px; }
:where(.pb-css-major-dossiers) .mds-pagination a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  border: 1px solid #b8c8de;
  border-radius: 7px;
  padding: 8px 12px;
  color: var(--mds-blue);
  text-decoration: none;
}
:where(.pb-css-major-dossiers) .mds-limited {
  border: 1px solid var(--mds-line);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}
:where(.pb-css-major-dossiers) .mds-limited-row {
  display: grid;
  grid-template-columns: 90px minmax(220px, 1.5fr) minmax(150px, 1fr) 210px;
  gap: 16px;
  align-items: center;
  border-top: 1px solid var(--mds-line);
  padding: 14px 18px;
}
:where(.pb-css-major-dossiers) .mds-limited-row:first-child { border: 0; }
:where(.pb-css-major-dossiers) .mds-limited-row h3 { margin: 0; font-size: 14px; line-height: 1.3; }
:where(.pb-css-major-dossiers) .mds-limited-row h3 a { color: var(--mds-navy); }
:where(.pb-css-major-dossiers) .mds-limited-row p { margin: 3px 0 0; color: var(--mds-muted); font-size: 10px; }
:where(.pb-css-major-dossiers) .mds-limited-counts { color: #40516a; font-size: 11px; font-weight: 800; }
:where(.pb-css-major-dossiers) .mds-method {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 42px;
  border-top: 1px solid var(--mds-line);
  padding-top: 24px;
}
:where(.pb-css-major-dossiers) .mds-method h2 { margin: 0 0 8px; color: var(--mds-navy); font-size: 17px; }
:where(.pb-css-major-dossiers) .mds-method p { margin: 0; color: var(--mds-muted); font-size: 12px; line-height: 1.6; }
@media (max-width: 980px) {
  :where(.pb-css-major-dossiers) .mds-hero { grid-template-columns: 1fr; }
  :where(.pb-css-major-dossiers) .mds-metrics { grid-template-columns: repeat(3, 1fr); }
  :where(.pb-css-major-dossiers) .mds-metric:nth-child(3) { border-right: 0; }
  :where(.pb-css-major-dossiers) .mds-metric:nth-child(-n+3) { border-bottom: 1px solid var(--mds-line); }
  :where(.pb-css-major-dossiers) .mds-limited-row { grid-template-columns: 80px minmax(0, 1fr) 180px; }
  :where(.pb-css-major-dossiers) .mds-limited-row > div:nth-child(3) { display: none; }
}
@media (max-width: 720px) {
  :where(.pb-css-major-dossiers) .mds { width: min(calc(100% - 28px), 1180px); padding-top: 18px; }
  :where(.pb-css-major-dossiers) .mds-hero { padding: 26px 22px; }
  :where(.pb-css-major-dossiers) .mds-grid, :where(.pb-css-major-dossiers) .mds-method { grid-template-columns: 1fr; }
  :where(.pb-css-major-dossiers) .mds-section-head { display: grid; }
  :where(.pb-css-major-dossiers) .mds-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-major-dossiers) .mds-metric, :where(.pb-css-major-dossiers) .mds-metric:nth-child(3) {
    border-right: 1px solid var(--mds-line);
    border-bottom: 1px solid var(--mds-line);
  }
  :where(.pb-css-major-dossiers) .mds-metric:nth-child(even) { border-right: 0; }
  :where(.pb-css-major-dossiers) .mds-metric:nth-last-child(-n+2) { border-bottom: 0; }
  :where(.pb-css-major-dossiers) .mds-limited-row { grid-template-columns: 64px minmax(0, 1fr); gap: 10px; }
  :where(.pb-css-major-dossiers) .mds-limited-row > div:last-child { grid-column: 2; }
}
@media (max-width: 480px) {
  :where(.pb-css-major-dossiers) .mds-card { grid-template-columns: 1fr; }
  :where(.pb-css-major-dossiers) .mds-rank { width: auto; height: 32px; justify-self: start; padding: 0 10px; }
}

/* ---- outreach-packs ---- */
/* /commencements/outreach-packs/ (templates/accounts/outreach_pack_index.html). */
/* accounts/outreach_pack_index.html */
:where(.pb-css-outreach-packs) .account-page.outreach-index-shell { width: 100%; }
:where(.pb-css-outreach-packs) .opi {
  width: min(1160px, calc(100% - 40px));
  margin: 0 auto;
  padding: 36px 0 72px;
  color: var(--ink);
}
:where(.pb-css-outreach-packs) .opi * { min-width: 0; }
:where(.pb-css-outreach-packs) .opi-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .42fr);
  gap: 34px;
  align-items: end;
  padding: 34px;
  border-radius: 16px;
  background: linear-gradient(130deg, #0f2548, #173c68);
  color: #fff;
  box-shadow: 0 22px 52px rgba(15, 37, 72, .16);
}
:where(.pb-css-outreach-packs) .opi-kicker {
  margin: 0 0 9px;
  color: #8bd4c7;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
:where(.pb-css-outreach-packs) .opi-hero h1 {
  margin: 0;
  color: #fff;
}
:where(.pb-css-outreach-packs) .opi-hero p {
  margin: 14px 0 0;
  max-width: 720px;
  color: rgba(255,255,255,.76);
  font-size: 16px;
  line-height: 1.65;
}
:where(.pb-css-outreach-packs) .opi-method {
  padding: 18px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  background: rgba(255,255,255,.07);
  font-size: 13px;
  line-height: 1.55;
}
:where(.pb-css-outreach-packs) .opi-method strong {
  display: block;
  margin-bottom: 5px;
  color: #fff;
}
:where(.pb-css-outreach-packs) .opi-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  margin: 34px 0 16px;
}
:where(.pb-css-outreach-packs) .opi-heading h2 { margin: 0; font-size: 25px; }
:where(.pb-css-outreach-packs) .opi-heading p { margin: 0; color: var(--muted); font-size: 13px; }
:where(.pb-css-outreach-packs) .opi-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
:where(.pb-css-outreach-packs) .opi-card {
  display: grid;
  gap: 15px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: var(--panel);
  box-shadow: 0 12px 30px rgba(15, 33, 71, .055);
}
:where(.pb-css-outreach-packs) .opi-card-top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 13px;
  align-items: start;
}
:where(.pb-css-outreach-packs) .opi-rank {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 9px;
  background: #e9f6f3;
  color: #276e64;
  font-size: 14px;
  font-weight: 850;
}
:where(.pb-css-outreach-packs) .opi-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: 19px;
  line-height: 1.28;
  overflow-wrap: anywhere;
}
:where(.pb-css-outreach-packs) .opi-authority {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 13px;
}
:where(.pb-css-outreach-packs) .opi-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  overflow: hidden;
}
:where(.pb-css-outreach-packs) .opi-metrics div { padding: 11px; border-right: 1px solid var(--line); }
:where(.pb-css-outreach-packs) .opi-metrics div:last-child { border-right: 0; }
:where(.pb-css-outreach-packs) .opi-metrics dt {
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-outreach-packs) .opi-metrics dd { margin: 5px 0 0; font-size: 15px; font-weight: 800; }
:where(.pb-css-outreach-packs) .opi-refs {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}
:where(.pb-css-outreach-packs) .opi-actions { display: flex; flex-wrap: wrap; gap: 8px; }
:where(.pb-css-outreach-packs) .opi-actions a {
  padding: 9px 12px;
  border: 1px solid #2b6079;
  border-radius: 7px;
  color: #2b6079;
  font-size: 12px;
  font-weight: 780;
  text-decoration: none;
}
:where(.pb-css-outreach-packs) .opi-actions a:first-child { background: #17365f; color: #fff; }
:where(.pb-css-outreach-packs) .opi-boundary {
  margin: 28px 0 0;
  padding: 17px 20px;
  border-left: 3px solid #3e8e83;
  background: #eef6f5;
  color: #40546a;
  font-size: 13px;
  line-height: 1.6;
}
@media (max-width: 800px) {
  :where(.pb-css-outreach-packs) .opi-hero { grid-template-columns: 1fr; }
  :where(.pb-css-outreach-packs) .opi-grid { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
  :where(.pb-css-outreach-packs) .opi { width: min(100% - 28px, 1160px); padding-top: 18px; }
  :where(.pb-css-outreach-packs) .opi-hero { padding: 24px 20px; }
  :where(.pb-css-outreach-packs) .opi-heading { align-items: start; flex-direction: column; gap: 6px; }
  :where(.pb-css-outreach-packs) .opi-card { padding: 18px; }
  :where(.pb-css-outreach-packs) .opi-metrics { grid-template-columns: 1fr; }
  :where(.pb-css-outreach-packs) .opi-metrics div { border-right: 0; border-bottom: 1px solid var(--line); }
  :where(.pb-css-outreach-packs) .opi-metrics div:last-child { border-bottom: 0; }
}

/* ---- outreach-story ---- */
/* Outreach project stories (templates/accounts/outreach_project_story.html). */
/* accounts/outreach_project_story.html */
:where(.pb-css-outreach-story) .account-page.outreach-story-shell { width: 100%; }
:where(.pb-css-outreach-story) .ops {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: 26px 0 70px;
  color: var(--ink);
}
:where(.pb-css-outreach-story) .ops * { min-width: 0; }
:where(.pb-css-outreach-story) .ops-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 12px;
}
:where(.pb-css-outreach-story) .ops-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 142px;
  gap: 28px;
  align-items: center;
  padding: 32px;
  border-radius: 15px;
  background: linear-gradient(130deg, #102750, #16446b);
  color: #fff;
  box-shadow: 0 20px 50px rgba(12, 33, 65, .16);
}
:where(.pb-css-outreach-story) .ops-kicker {
  margin: 0 0 9px;
  color: #89d4c7;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
:where(.pb-css-outreach-story) .ops-hero h1 {
  max-width: 820px;
  margin: 0;
  color: #fff;
  overflow-wrap: anywhere;
}
:where(.pb-css-outreach-story) .ops-location {
  margin: 12px 0 0;
  color: rgba(255,255,255,.83);
  font-size: 16px;
  font-weight: 680;
}
:where(.pb-css-outreach-story) .ops-qr {
  padding: 11px;
  border-radius: 10px;
  background: #fff;
  text-align: center;
}
:where(.pb-css-outreach-story) .ops-qr img { display: block; width: 120px; height: 120px; }
:where(.pb-css-outreach-story) .ops-qr small { display: block; margin-top: 6px; color: #40546a; font-size: 9px; }
:where(.pb-css-outreach-story) .ops-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0 22px;
}
:where(.pb-css-outreach-story) .ops-actions a, :where(.pb-css-outreach-story) .ops-actions button {
  padding: 10px 14px;
  border: 1px solid #2c6079;
  border-radius: 7px;
  background: #fff;
  color: #28586e;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 780;
  text-decoration: none;
}
:where(.pb-css-outreach-story) .ops-actions a:first-child { background: #17365f; color: #fff; }
:where(.pb-css-outreach-story) .ops-copy-status { align-self: center; color: var(--muted); font-size: 12px; }
:where(.pb-css-outreach-story) .ops-metrics {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 0 0 18px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  overflow: hidden;
  box-shadow: 0 10px 28px rgba(15, 33, 71, .045);
}
:where(.pb-css-outreach-story) .ops-metrics div { padding: 15px; border-right: 1px solid var(--line); }
:where(.pb-css-outreach-story) .ops-metrics div:last-child { border-right: 0; }
:where(.pb-css-outreach-story) .ops-metrics dt {
  color: var(--muted);
  font-size: 9px;
  font-weight: 820;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-outreach-story) .ops-metrics dd {
  margin: 6px 0 0;
  font-size: 14px;
  font-weight: 780;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
:where(.pb-css-outreach-story) .ops-boundary {
  margin: 0 0 18px;
  padding: 17px 20px;
  border: 1px solid #bddad5;
  border-radius: 10px;
  background: #eef7f5;
  color: #35536b;
  font-size: 13px;
  line-height: 1.62;
}
:where(.pb-css-outreach-story) .ops-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(290px, .72fr);
  gap: 18px;
  align-items: start;
}
:where(.pb-css-outreach-story) .ops-stack { display: grid; gap: 18px; }
:where(.pb-css-outreach-story) .ops-panel {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 10px 28px rgba(15, 33, 71, .04);
}
:where(.pb-css-outreach-story) .ops-panel h2 {
  margin: 5px 0 14px;
  color: var(--ink);
  font-size: 21px;
  line-height: 1.2;
}
:where(.pb-css-outreach-story) .ops-panel h3 { margin: 0 0 8px; color: var(--ink); font-size: 15px; }
:where(.pb-css-outreach-story) .ops-panel p { color: var(--muted); line-height: 1.58; }
:where(.pb-css-outreach-story) .ops-drawing-section + .ops-drawing-section {
  margin-top: 17px;
  padding-top: 17px;
  border-top: 1px solid var(--line);
}
:where(.pb-css-outreach-story) .ops-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-outreach-story) .ops-list li {
  padding: 11px 12px;
  border-radius: 8px;
  background: #f6f8fb;
}
:where(.pb-css-outreach-story) .ops-list a {
  color: #245d75;
  font-weight: 740;
  overflow-wrap: anywhere;
}
:where(.pb-css-outreach-story) .ops-list small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.4;
}
:where(.pb-css-outreach-story) .ops-timeline {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-outreach-story) .ops-timeline li {
  padding: 13px;
  border-left: 3px solid #7ebdb3;
  background: #f7fafb;
}
:where(.pb-css-outreach-story) .ops-timeline strong { display: block; color: var(--ink); overflow-wrap: anywhere; }
:where(.pb-css-outreach-story) .ops-timeline span { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; }
:where(.pb-css-outreach-story) .ops-timeline p { margin: 7px 0 0; font-size: 12px; }
:where(.pb-css-outreach-story) .ops-role {
  padding: 11px 0;
  border-bottom: 1px solid var(--line);
}
:where(.pb-css-outreach-story) .ops-role:last-of-type { border-bottom: 0; }
:where(.pb-css-outreach-story) .ops-role strong, :where(.pb-css-outreach-story) .ops-role span { display: block; }
:where(.pb-css-outreach-story) .ops-role span { margin-top: 3px; color: var(--muted); font-size: 11px; }
:where(.pb-css-outreach-story) .ops-empty { margin: 0; color: var(--muted); font-size: 13px; }
:where(.pb-css-outreach-story) .ops-audit {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #40546a;
  font-size: 12px;
}
:where(.pb-css-outreach-story) .ops-audit li::before { content: "✓"; margin-right: 7px; color: #2e806f; font-weight: 900; }
:where(.pb-css-outreach-story) .ops-footnote { margin: 18px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
@media (max-width: 840px) {
  :where(.pb-css-outreach-story) .ops-layout { grid-template-columns: 1fr; }
  :where(.pb-css-outreach-story) .ops-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-outreach-story) .ops-metrics div { border-bottom: 1px solid var(--line); }
}
@media (max-width: 560px) {
  :where(.pb-css-outreach-story) .ops { width: min(100% - 28px, 1120px); padding-top: 18px; }
  :where(.pb-css-outreach-story) .ops-hero { grid-template-columns: 1fr; padding: 23px 19px; }
  :where(.pb-css-outreach-story) .ops-qr { width: 142px; }
  :where(.pb-css-outreach-story) .ops-metrics { grid-template-columns: 1fr; }
  :where(.pb-css-outreach-story) .ops-metrics div { border-right: 0; }
  :where(.pb-css-outreach-story) .ops-panel { padding: 18px; }
}
@media print {
  :where(.pb-css-outreach-story) .site-header, :where(.pb-css-outreach-story) .site-footer, :where(.pb-css-outreach-story) .ops-breadcrumbs, :where(.pb-css-outreach-story) .ops-actions { display: none !important; }
  :where(.pb-css-outreach-story) .ops { width: 100%; padding: 0; }
  :where(.pb-css-outreach-story) .ops-hero { box-shadow: none; print-color-adjust: exact; }
  :where(.pb-css-outreach-story) .ops-layout { grid-template-columns: 1fr; }
  :where(.pb-css-outreach-story) .ops-panel { break-inside: avoid; box-shadow: none; }
  :where(.pb-css-outreach-story) a { color: inherit; text-decoration: none; }
}

/* ---- commencement-project ---- */
/* Commencement project and notice pages (templates/accounts/commencement_project_*.html,
   commencement_notice_detail.html). */
/* accounts/commencement_project_canonical.html */
:where(.pb-css-commencement-project) .account-page.canonical-project-page-shell { width: 100%; }
:where(.pb-css-commencement-project) .cp {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: 0 0 64px;
  color: var(--ink);
}
:where(.pb-css-commencement-project) .cp * { min-width: 0; }
:where(.pb-css-commencement-project) .cp-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  margin: 0 0 16px;
  color: var(--muted);
  font-size: 13px;
}
:where(.pb-css-commencement-project) .cp-hero {
  position: relative;
  overflow: hidden;
  padding: 34px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 16px;
  background:
    radial-gradient(circle at 92% 8%, rgba(69,190,174,.19), transparent 30%),
    linear-gradient(135deg, #091731, #122b52);
  color: #fff;
  box-shadow: 0 20px 50px rgba(10,23,51,.14);
}
:where(.pb-css-commencement-project) .cp-kicker {
  margin: 0;
  color: #81d5c6;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .12em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cp-hero h1 {
  max-width: 800px;
  margin: 8px 0 0;
  color: #fff;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cp-locality {
  margin: 9px 0 0;
  color: rgba(255,255,255,.88);
  font-size: 17px;
  font-weight: 700;
}
:where(.pb-css-commencement-project) .cp-hero-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  margin-top: 22px;
}
:where(.pb-css-commencement-project) .cp-hero-copy {
  max-width: 700px;
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 14px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}
:where(.pb-css-commencement-project) .cp-related-action {
  display: grid;
  gap: 5px;
  max-width: 255px;
}
:where(.pb-css-commencement-project) .cp-related-action small {
  color: rgba(255,255,255,.72);
  font-size: 11px;
  line-height: 1.35;
}
:where(.pb-css-commencement-project) .cp-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 8px;
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
}
:where(.pb-css-commencement-project) .cp-button:hover { color: #fff; }
:where(.pb-css-commencement-project) .cp-button-primary {
  border-color: #6ed2c2;
  background: #53b9aa;
  color: #071d2b;
}
:where(.pb-css-commencement-project) .cp-button-primary:hover { color: #071d2b; }
:where(.pb-css-commencement-project) .cp-facts {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 16px 0 0;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(15,33,71,.05);
  overflow: hidden;
}
:where(.pb-css-commencement-project) .cp-facts > div {
  padding: 15px 16px;
  border-right: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cp-facts > div:last-child { border-right: 0; }
:where(.pb-css-commencement-project) .cp-facts dt {
  margin: 0 0 6px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .075em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cp-facts dd {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cp-identity-boundary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  margin: 14px 0 0;
  padding: 13px 15px;
  border: 1px solid #b8d9d3;
  border-radius: 10px;
  background: #eef8f6;
  color: #315568;
  font-size: 13px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cp-identity-boundary strong { color: #0a6259; }
:where(.pb-css-commencement-project) .cp-section {
  margin-top: 20px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15,33,71,.045);
}
:where(.pb-css-commencement-project) .cp-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
  margin-bottom: 16px;
}
:where(.pb-css-commencement-project) .cp-section h2 {
  margin: 6px 0 0;
  color: var(--ink);
  font-size: 24px;
  line-height: 1.15;
}
:where(.pb-css-commencement-project) .cp-section-intro {
  max-width: 650px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cp-planning-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
:where(.pb-css-commencement-project) .cp-planning-grid > div {
  padding: 13px;
  border: 1px solid #e2e9f3;
  border-radius: 9px;
  background: #f8fafd;
}
:where(.pb-css-commencement-project) .cp-planning-grid .cp-wide { grid-column: span 2; }
:where(.pb-css-commencement-project) .cp-planning-grid dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .065em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cp-planning-grid dd {
  margin: 6px 0 0;
  font-size: 14px;
  font-weight: 760;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cp-boundary {
  margin: 14px 0 0;
  padding-left: 12px;
  border-left: 3px solid #53b9aa;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cp-notices {
  display: grid;
  gap: 0;
  border-top: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cp-notice {
  display: grid;
  grid-template-columns: 155px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cp-notice-date {
  display: grid;
  gap: 4px;
}
:where(.pb-css-commencement-project) .cp-notice-date time {
  color: var(--muted);
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cp-notice-date a, :where(.pb-css-commencement-project) .cp-notice-date strong {
  font-size: 13px;
  font-weight: 850;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cp-notice h3 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
  line-height: 1.35;
}
:where(.pb-css-commencement-project) .cp-notice-meta {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cp-notice details { margin-top: 9px; }
:where(.pb-css-commencement-project) .cp-notice summary {
  width: fit-content;
  cursor: pointer;
  color: #285f78;
  font-size: 12px;
  font-weight: 800;
}
:where(.pb-css-commencement-project) .cp-notice-description {
  margin: 9px 0 0;
  color: #42536d;
  font-size: 13px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cp-raw-evidence {
  margin: 9px 0 0;
  padding: 9px 10px;
  border-radius: 7px;
  background: #fff5df;
  color: #705019;
  font-size: 12px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cp-notice-actions {
  display: flex;
  flex-direction: column;
  gap: 5px;
  text-align: right;
  font-size: 12px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cp-completions {
  display: grid;
  gap: 7px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cp-completions li {
  display: grid;
  grid-template-columns: minmax(180px, .8fr) minmax(0, 1fr);
  gap: 8px 14px;
  padding: 10px 12px;
  border-left: 3px solid #5c86c8;
  border-radius: 0 7px 7px 0;
  background: #f2f6fc;
  font-size: 12px;
  line-height: 1.4;
}
:where(.pb-css-commencement-project) .cp-completions strong { overflow-wrap: anywhere; }
:where(.pb-css-commencement-project) .cp-completions span { color: var(--muted); }
:where(.pb-css-commencement-project) .cp-documents {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cp-documents li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 20px;
  align-items: center;
  padding: 14px;
  border: 1px solid #e2e9f3;
  border-radius: 9px;
  background: #f8fafd;
}
:where(.pb-css-commencement-project) .cp-documents h3 { margin: 0; font-size: 15px; }
:where(.pb-css-commencement-project) .cp-documents p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cp-document-action {
  padding: 9px 11px;
  border: 1px solid #285f78;
  border-radius: 7px;
  color: #285f78;
  font-size: 12px;
  font-weight: 800;
  text-align: center;
}
:where(.pb-css-commencement-project) .cp-two-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
:where(.pb-css-commencement-project) .cp-organisation-list, :where(.pb-css-commencement-project) .cp-limitations {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cp-organisation-list li, :where(.pb-css-commencement-project) .cp-limitations li {
  padding: 11px 12px;
  border: 1px solid #e2e9f3;
  border-radius: 8px;
  background: #f8fafd;
}
:where(.pb-css-commencement-project) .cp-organisation-list strong, :where(.pb-css-commencement-project) .cp-limitations strong { display: block; font-size: 13px; }
:where(.pb-css-commencement-project) .cp-organisation-list span, :where(.pb-css-commencement-project) .cp-limitations span {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cp-dossier-state {
  margin-top: 14px;
  padding: 13px 14px;
  border: 1px dashed #9baac0;
  border-radius: 9px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cp-dossier-state strong { color: var(--ink); }
@media (max-width: 900px) {
  :where(.pb-css-commencement-project) .cp-hero-row { grid-template-columns: 1fr; gap: 15px; }
  :where(.pb-css-commencement-project) .cp-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-commencement-project) .cp-facts > div { border-bottom: 1px solid var(--line); }
  :where(.pb-css-commencement-project) .cp-facts > div:nth-child(even) { border-right: 0; }
  :where(.pb-css-commencement-project) .cp-facts > div:last-child { grid-column: 1 / -1; border-bottom: 0; }
  :where(.pb-css-commencement-project) .cp-planning-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-commencement-project) .cp-notice { grid-template-columns: 140px minmax(0, 1fr); }
  :where(.pb-css-commencement-project) .cp-notice-actions { grid-column: 2; flex-direction: row; text-align: left; }
}
@media (max-width: 620px) {
  :where(.pb-css-commencement-project) .cp { width: min(100% - 28px, 1120px); padding-bottom: 42px; }
  :where(.pb-css-commencement-project) .cp-breadcrumbs { margin-bottom: 12px; }
  :where(.pb-css-commencement-project) .cp-hero { padding: 23px 18px; }
  
  :where(.pb-css-commencement-project) .cp-actions { display: grid; grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cp-related-action { max-width: none; }
  :where(.pb-css-commencement-project) .cp-button { width: 100%; }
  :where(.pb-css-commencement-project) .cp-facts > div { padding: 12px; }
  :where(.pb-css-commencement-project) .cp-facts dd { font-size: 13px; }
  :where(.pb-css-commencement-project) .cp-identity-boundary { grid-template-columns: 1fr; gap: 4px; }
  :where(.pb-css-commencement-project) .cp-section { margin-top: 14px; padding: 18px; }
  :where(.pb-css-commencement-project) .cp-section-heading { display: grid; gap: 8px; }
  :where(.pb-css-commencement-project) .cp-section h2 { font-size: 21px; }
  :where(.pb-css-commencement-project) .cp-planning-grid { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cp-planning-grid .cp-wide { grid-column: auto; }
  :where(.pb-css-commencement-project) .cp-notice { grid-template-columns: 1fr; gap: 9px; padding: 15px 0; }
  :where(.pb-css-commencement-project) .cp-notice-date { grid-template-columns: auto minmax(0, 1fr); align-items: baseline; }
  :where(.pb-css-commencement-project) .cp-notice-actions { grid-column: auto; flex-direction: row; text-align: left; }
  :where(.pb-css-commencement-project) .cp-completions li { grid-template-columns: 1fr; gap: 4px; }
  :where(.pb-css-commencement-project) .cp-documents li { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cp-document-action { width: 100%; }
  :where(.pb-css-commencement-project) .cp-two-column { grid-template-columns: 1fr; gap: 14px; }
  :where(.pb-css-commencement-project) .cp-raw-evidence, :where(.pb-css-commencement-project) .cp-notice-description, :where(.pb-css-commencement-project) .cp-documents p { overflow-wrap: anywhere; }
}

/* accounts/commencement_project_detail.html */
:where(.pb-css-commencement-project) .account-page.commencement-group-page-shell {
  width: 100%;
}
:where(.pb-css-commencement-project) .cgr {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: 28px 0 64px;
  color: var(--ink);
}
:where(.pb-css-commencement-project) .cgr * { min-width: 0; }
:where(.pb-css-commencement-project) .cgr-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 13px;
}
:where(.pb-css-commencement-project) .cgr-header {
  display: grid;
  gap: 14px;
  padding: 30px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: linear-gradient(130deg, var(--navy) 0%, #132a52 100%);
  color: #fff;
  box-shadow: 0 18px 46px rgba(10,23,51,.12);
}
:where(.pb-css-commencement-project) .cgr-eyebrow, :where(.pb-css-commencement-project) .cgr-section-kicker {
  margin: 0;
  color: #89d4c7;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-header h1 {
  max-width: 820px;
  margin: 0;
  color: #fff;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-location {
  margin: 0;
  color: rgba(255,255,255,.9);
  font-size: 17px;
  font-weight: 650;
}
:where(.pb-css-commencement-project) .cgr-status {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: 13px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cgr-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 16px 0 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 12px 32px rgba(15,33,71,.05);
  overflow: hidden;
}
:where(.pb-css-commencement-project) .cgr-summary > div {
  padding: 16px;
  border-right: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-summary > div:last-child { border-right: 0; }
:where(.pb-css-commencement-project) .cgr-summary dt {
  margin: 0 0 7px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-summary dd {
  margin: 0;
  color: var(--ink);
  font-size: 15px;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-summary small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.4;
}
:where(.pb-css-commencement-project) .cgr-story {
  margin: 16px 0;
  padding: 20px 22px;
  border: 1px solid #b8d7d2;
  border-radius: 12px;
  background: #eef7f5;
}
:where(.pb-css-commencement-project) .cgr-story h2 {
  margin: 6px 0 14px;
  color: var(--ink);
  font-size: 22px;
}
:where(.pb-css-commencement-project) .cgr-story dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
}
:where(.pb-css-commencement-project) .cgr-story dl > div {
  min-width: 0;
  padding: 12px;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
}
:where(.pb-css-commencement-project) .cgr-story dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-story dd {
  margin: 6px 0 0;
  color: var(--ink);
  font-weight: 760;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-story > p:last-child {
  margin: 14px 0 0;
  color: var(--muted);
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cgr-lifecycle-events {
  display: grid;
  gap: 10px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-lifecycle-actions {
  display: grid;
  gap: 8px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-lifecycle-actions li {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
}
:where(.pb-css-commencement-project) .cgr-lifecycle-actions a { font-weight: 760; }
:where(.pb-css-commencement-project) .cgr-lifecycle-actions span, :where(.pb-css-commencement-project) .cgr-lifecycle-chain p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-lifecycle-chain {
  margin-top: 12px;
  padding: 12px;
  border-left: 3px solid #3e8e83;
  background: rgba(255,255,255,.58);
}
:where(.pb-css-commencement-project) .cgr-lifecycle-chain p { margin: 0 0 6px; }
:where(.pb-css-commencement-project) .cgr-lifecycle-chain p:last-child { margin-bottom: 0; }
:where(.pb-css-commencement-project) .cgr-lifecycle-events li {
  display: grid;
  gap: 4px;
  padding: 12px;
  border-radius: 8px;
  background: rgba(255,255,255,.72);
}
:where(.pb-css-commencement-project) .cgr-lifecycle-events span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-information {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .85fr);
  gap: 18px;
  align-items: start;
}
:where(.pb-css-commencement-project) .cgr-stack { display: grid; gap: 18px; }
:where(.pb-css-commencement-project) .cgr-panel {
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15,33,71,.045);
}
:where(.pb-css-commencement-project) .cgr-panel h2, :where(.pb-css-commencement-project) .cgr-timeline h2 {
  margin: 6px 0 12px;
  color: var(--ink);
  font-size: 21px;
  line-height: 1.2;
}
:where(.pb-css-commencement-project) .cgr-panel p {
  margin: 0 0 12px;
  color: var(--muted);
  line-height: 1.6;
}
:where(.pb-css-commencement-project) .cgr-panel p:last-child { margin-bottom: 0; }
:where(.pb-css-commencement-project) .cgr-location-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}
:where(.pb-css-commencement-project) .cgr-location-facts div {
  padding: 12px;
  border-radius: 8px;
  background: #f6f8fc;
}
:where(.pb-css-commencement-project) .cgr-location-facts dt {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-location-facts dd {
  margin: 5px 0 0;
  font-weight: 700;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-location-facts dd small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-location-detail {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-location-detail h3, :where(.pb-css-commencement-project) .cgr-boundary-provenance h3 {
  margin: 0 0 10px;
  color: var(--ink);
  font-size: 14px;
}
:where(.pb-css-commencement-project) .cgr-access-roads {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-access-roads li {
  display: grid;
  gap: 3px;
  padding: 11px 12px;
  border-radius: 8px;
  background: #f6f8fc;
}
:where(.pb-css-commencement-project) .cgr-access-roads span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-addresses {
  display: grid;
  gap: 7px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-addresses li {
  padding-left: 16px;
  color: var(--muted);
  line-height: 1.5;
  position: relative;
}
:where(.pb-css-commencement-project) .cgr-addresses strong, :where(.pb-css-commencement-project) .cgr-addresses small {
  display: block;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-addresses small {
  margin-top: 2px;
  font-size: 11px;
}
:where(.pb-css-commencement-project) .cgr-location-conflict {
  margin-top: 18px;
  padding: 14px;
  border: 1px solid #e1c777;
  border-radius: 9px;
  background: #fff8df;
  color: #5c4912;
}
:where(.pb-css-commencement-project) .cgr-location-conflict > strong {
  display: block;
  margin-bottom: 7px;
}
:where(.pb-css-commencement-project) .cgr-location-conflict > ul {
  margin: 0;
  padding-left: 19px;
}
:where(.pb-css-commencement-project) .cgr-location-conflict li {
  margin: 5px 0;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-location-conflict p {
  margin: 12px 0 5px;
  color: #5c4912;
  font-size: 12px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-coordinate-evidence {
  padding: 0 !important;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-coordinate-evidence li {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-coordinate-evidence a { font-weight: 750; }
:where(.pb-css-commencement-project) .cgr-addresses li::before {
  position: absolute;
  left: 0;
  content: "—";
  color: #3e8e83;
}
:where(.pb-css-commencement-project) .cgr-map-shell {
  margin-top: 18px;
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;
  background: #e8edf3;
}
:where(.pb-css-commencement-project) .cgr-map {
  width: 100%;
  height: 270px;
  background: #e8edf3;
}
:where(.pb-css-commencement-project) .cgr-map-fallback {
  display: grid;
  min-height: 100px;
  place-items: center;
  padding: 18px;
  color: var(--muted);
  text-align: center;
}
:where(.pb-css-commencement-project) .cgr-map-shell[data-ready="true"] .cgr-map-fallback { display: none; }
:where(.pb-css-commencement-project) .cgr-map-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin: 0;
  padding: 10px 14px;
  border-top: 1px solid var(--line);
  background: #f6f8fc;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-map-legend li {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 700;
}
:where(.pb-css-commencement-project) .cgr-map-legend li > span {
  width: 13px;
  height: 13px;
  border: 2px solid #0a6259;
  border-radius: 3px;
  background: rgba(65,168,155,.18);
}
:where(.pb-css-commencement-project) .cgr-map-legend-point > span {
  border-radius: 50% !important;
  background: #41a89b !important;
}
:where(.pb-css-commencement-project) .cgr-map-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  background: #fff;
}
:where(.pb-css-commencement-project) .cgr-map-actions span {
  color: var(--muted);
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-map-actions > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
:where(.pb-css-commencement-project) .cgr-map-actions a { font-weight: 750; }
:where(.pb-css-commencement-project) .cgr-boundary-provenance {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-boundary-provenance p {
  margin-bottom: 7px;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-boundary-provenance > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
:where(.pb-css-commencement-project) .cgr-boundary-provenance a {
  font-size: 12px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-reference-list, :where(.pb-css-commencement-project) .cgr-org-list {
  display: grid;
  gap: 8px;
  margin: 14px 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-reference-list li, :where(.pb-css-commencement-project) .cgr-org-list li {
  padding: 11px 12px;
  border-radius: 8px;
  background: #f6f8fc;
}
:where(.pb-css-commencement-project) .cgr-reference-list span, :where(.pb-css-commencement-project) .cgr-org-list span {
  display: block;
  margin-bottom: 3px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-reference-list strong, :where(.pb-css-commencement-project) .cgr-org-list strong {
  display: block;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-reference-list small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  line-height: 1.4;
}
:where(.pb-css-commencement-project) .cgr-org-coverage {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 14px 0 18px;
}
:where(.pb-css-commencement-project) .cgr-org-coverage div {
  padding: 10px;
  border-radius: 8px;
  background: #eef5f4;
}
:where(.pb-css-commencement-project) .cgr-org-coverage dt {
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-org-coverage dd {
  margin: 4px 0 0;
  color: var(--ink);
  font-size: 16px;
  font-weight: 800;
}
:where(.pb-css-commencement-project) .cgr-org-role + .cgr-org-role { margin-top: 16px; }
:where(.pb-css-commencement-project) .cgr-org-role-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}
:where(.pb-css-commencement-project) .cgr-org-role-heading h3, :where(.pb-css-commencement-project) .cgr-org-conflicts h3 {
  margin: 0;
  color: var(--ink);
  font-size: 14px;
}
:where(.pb-css-commencement-project) .cgr-org-role-heading > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-org-list a {
  color: #155e55;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
:where(.pb-css-commencement-project) .cgr-org-list small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.4;
}
:where(.pb-css-commencement-project) .cgr-org-conflicts {
  margin-top: 17px;
  padding: 13px;
  border-left: 3px solid #c6862b;
  background: #fff8ec;
}
:where(.pb-css-commencement-project) .cgr-org-conflicts > p {
  margin-top: 7px;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-org-chronology {
  margin-top: 17px;
  border-top: 1px solid var(--line);
  padding-top: 13px;
}
:where(.pb-css-commencement-project) .cgr-org-chronology summary {
  color: #155e55;
  cursor: pointer;
  font-size: 12px;
  font-weight: 800;
}
:where(.pb-css-commencement-project) .cgr-org-chronology > ol {
  display: grid;
  gap: 10px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-org-chronology > ol > li {
  padding: 11px;
  border-radius: 8px;
  background: #f6f8fc;
}
:where(.pb-css-commencement-project) .cgr-org-chronology > ol > li > div, :where(.pb-css-commencement-project) .cgr-org-chronology > ol > li > ul {
  display: grid;
  gap: 3px;
}
:where(.pb-css-commencement-project) .cgr-org-chronology > ol > li > div span, :where(.pb-css-commencement-project) .cgr-org-chronology small {
  color: var(--muted);
  font-size: 11px;
}
:where(.pb-css-commencement-project) .cgr-org-chronology ul {
  margin: 8px 0;
  padding: 0;
  list-style: none;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-org-chronology ul span {
  color: var(--muted);
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-org-chronology > ol > li > a {
  display: inline-block;
  margin-top: 6px;
  color: #155e55;
  font-size: 11px;
  font-weight: 800;
}
:where(.pb-css-commencement-project) .cgr-org-boundary {
  margin-top: 16px !important;
  padding-top: 13px;
  border-top: 1px solid var(--line);
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-reference-list p {
  margin: 8px 0 0;
  color: #35506e;
  font-size: 13px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cgr-chain-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 11px;
}
:where(.pb-css-commencement-project) .cgr-chain-actions a, :where(.pb-css-commencement-project) .cgr-chain-routes a {
  color: #155e55;
  font-size: 12px;
  font-weight: 800;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-chain-routes {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-chain-routes > span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-basis-note {
  padding-top: 13px;
  border-top: 1px solid var(--line);
  font-size: 13px;
}
:where(.pb-css-commencement-project) .cgr-documents {
  margin-top: 22px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
  box-shadow: 0 12px 28px rgba(15,33,71,.045);
}
:where(.pb-css-commencement-project) .cgr-documents h2 {
  margin: 6px 0 10px;
  color: var(--ink);
  font-size: 23px;
  line-height: 1.2;
}
:where(.pb-css-commencement-project) .cgr-documents > p {
  max-width: 82ch;
  margin: 0 0 10px;
  color: var(--muted);
  line-height: 1.6;
}
:where(.pb-css-commencement-project) .cgr-documents > .cgr-section-kicker {
  color: #3e8e83;
}
:where(.pb-css-commencement-project) .cgr-document-status {
  color: var(--ink) !important;
  font-weight: 700;
}
:where(.pb-css-commencement-project) .cgr-document-helper {
  color: #35506e !important;
}
:where(.pb-css-commencement-project) .cgr-document-list {
  display: grid;
  margin: 18px 0 0;
  padding: 0;
  border-top: 1px solid var(--line);
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-document-list li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, auto);
  gap: 20px;
  align-items: center;
  padding: 15px 0;
  border-bottom: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-document-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}
:where(.pb-css-commencement-project) .cgr-document-copy strong, :where(.pb-css-commencement-project) .cgr-document-copy span, :where(.pb-css-commencement-project) .cgr-document-copy small {
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-document-copy > span:not(.cgr-document-category), :where(.pb-css-commencement-project) .cgr-document-copy small {
  color: var(--muted);
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-document-category {
  color: #3e8e83;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-document-action {
  justify-self: end;
  padding: 9px 12px;
  border: 1px solid #aecdc8;
  border-radius: 7px;
  color: #155e55;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
}
:where(.pb-css-commencement-project) .cgr-document-action:hover {
  border-color: #3e8e83;
  background: #eef7f5;
}
:where(.pb-css-commencement-project) .cgr-document-action:focus-visible, :where(.pb-css-commencement-project) .cgr-copy-reference:focus-visible, :where(.pb-css-commencement-project) .cgr-authority-search a:focus-visible {
  outline: 3px solid #f4b942;
  outline-offset: 3px;
}
:where(.pb-css-commencement-project) .cgr-external-copy {
  font-size: 11px;
  font-weight: 650;
}
:where(.pb-css-commencement-project) .cgr-document-references {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}
:where(.pb-css-commencement-project) .cgr-document-references > div {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f6f8fc;
}
:where(.pb-css-commencement-project) .cgr-document-references span {
  display: grid;
  gap: 2px;
  min-width: 0;
}
:where(.pb-css-commencement-project) .cgr-document-references small {
  color: var(--muted);
}
:where(.pb-css-commencement-project) .cgr-document-references strong {
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-copy-reference {
  flex: 0 0 auto;
  padding: 7px 10px;
  border: 1px solid #c7d2df;
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-authority-search {
  margin-top: 13px !important;
  font-size: 13px;
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-document-warning {
  margin-top: 14px !important;
  padding: 10px 12px;
  border-left: 3px solid #c6862b;
  background: #fff8ec;
  color: #6b4a1d !important;
  font-size: 13px;
}
:where(.pb-css-commencement-project) .cgr-document-limitations {
  margin-top: 14px;
  padding: 11px 12px;
  border: 1px solid #d7e0e8;
  border-radius: 8px;
  background: #f8fafc;
  color: #334155;
  font-size: 12px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cgr-document-limitations strong {
  display: block;
  color: var(--ink);
}
:where(.pb-css-commencement-project) .cgr-document-limitations ul {
  margin: 6px 0 7px;
  padding-left: 18px;
}
:where(.pb-css-commencement-project) .cgr-document-limitations a {
  color: var(--blue);
  font-weight: 750;
}
:where(.pb-css-commencement-project) .cgr-document-boundary {
  margin-top: 16px !important;
  padding-top: 13px;
  border-top: 1px solid var(--line);
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-copy-status {
  min-height: 1px;
  margin: 0 !important;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-timeline {
  margin-top: 22px;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--panel);
}
:where(.pb-css-commencement-project) .cgr-grouping {
  max-width: 850px;
  margin: 0 0 18px;
  color: var(--muted);
  line-height: 1.6;
}
:where(.pb-css-commencement-project) .cgr-notices {
  display: grid;
  margin-top: 8px;
  border-top: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-notice {
  display: grid;
  grid-template-columns: minmax(180px, .65fr) minmax(0, 1.8fr) minmax(150px, .65fr);
  gap: 22px;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
:where(.pb-css-commencement-project) .cgr-notice:last-child { border-bottom: 0; }
:where(.pb-css-commencement-project) .cgr-notice-ref {
  display: grid;
  align-content: start;
  gap: 7px;
}
:where(.pb-css-commencement-project) .cgr-notice-ref a {
  width: fit-content;
  font-weight: 800;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-notice-ref time, :where(.pb-css-commencement-project) .cgr-notice-source {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-notice-body p {
  max-width: 72ch;
  margin: 0;
  color: var(--ink);
  line-height: 1.62;
  overflow-wrap: break-word;
}
:where(.pb-css-commencement-project) .cgr-notice-scale {
  display: grid;
  gap: 3px;
  margin-top: 12px;
  padding: 10px 12px;
  border-left: 3px solid #3e8e83;
  background: #eef5f4;
  color: #35506e;
}
:where(.pb-css-commencement-project) .cgr-notice-scale span {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-notice-scale strong { font-size: 16px; }
:where(.pb-css-commencement-project) .cgr-notice-scale small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 600;
}
:where(.pb-css-commencement-project) .cgr-notice-context, :where(.pb-css-commencement-project) .cgr-notice-conflict {
  margin-top: 8px !important;
  color: var(--muted) !important;
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-notice-conflict {
  padding: 9px 11px;
  border-radius: 7px;
  background: #fff3dc;
  color: #6b4c16 !important;
  font-weight: 650;
}
:where(.pb-css-commencement-project) .cgr-source-variants {
  margin-top: 13px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
  color: var(--ink);
  font-size: 12px;
}
:where(.pb-css-commencement-project) .cgr-source-variants ul {
  display: grid;
  gap: 8px;
  margin: 8px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-source-variants li {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border-radius: 7px;
  background: #f5f7f9;
}
:where(.pb-css-commencement-project) .cgr-source-variants small {
  color: var(--muted);
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-source-variant-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 3px;
}
:where(.pb-css-commencement-project) .cgr-notice-evidence {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 11px;
}
:where(.pb-css-commencement-project) .cgr-notice-evidence span {
  max-width: 100%;
  padding: 5px 8px;
  border-radius: 6px;
  background: #eef3f7;
  color: #42546c;
  font-size: 11px;
  overflow-wrap: anywhere;
}
:where(.pb-css-commencement-project) .cgr-notice-actions {
  display: grid;
  align-content: start;
  gap: 9px;
  font-size: 13px;
}
:where(.pb-css-commencement-project) .cgr-method {
  margin: 18px 0 0;
  padding: 15px 18px;
  border-left: 3px solid #3e8e83;
  background: #eef5f4;
  color: #40546a;
  line-height: 1.6;
}
:where(.pb-css-commencement-project) .cgr-dossier {
  display: grid;
  gap: 20px;
  margin: 22px 0;
  border: 1px solid #cbd8e8;
  border-radius: 14px;
  padding: 26px;
  background: linear-gradient(145deg, #f7fafc, #eef4f8);
  box-shadow: 0 12px 34px rgba(15, 37, 73, .06);
}
:where(.pb-css-commencement-project) .cgr-dossier-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: end;
}
:where(.pb-css-commencement-project) .cgr-dossier-heading h2 {
  margin: 7px 0 0;
  color: var(--navy);
  font-size: 24px;
  letter-spacing: -.02em;
}
:where(.pb-css-commencement-project) .cgr-dossier-heading > a {
  color: #1d58bd;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}
:where(.pb-css-commencement-project) .cgr-dossier-status {
  display: grid;
  gap: 4px;
  border-left: 3px solid #248c7f;
  padding: 10px 14px;
  background: #e7f4f1;
  color: #40546a;
  font-size: 12px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cgr-dossier-status strong { color: #155f57; }
:where(.pb-css-commencement-project) .cgr-dossier-scope {
  display: grid;
  grid-template-columns: minmax(200px, .8fr) minmax(0, 1.5fr);
  gap: 20px;
  border-top: 1px solid #d6e0e9;
  border-bottom: 1px solid #d6e0e9;
  padding: 16px 0;
  color: #43546b;
  font-size: 12px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cgr-dossier-scope p { margin: 0; }
:where(.pb-css-commencement-project) .cgr-dossier-scope strong {
  display: block;
  margin-bottom: 4px;
  color: var(--navy);
  font-size: 10px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-dossier-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  margin: 0;
  border: 1px solid #d5dfeb;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
}
:where(.pb-css-commencement-project) .cgr-dossier-facts > div {
  border-right: 1px solid #d5dfeb;
  padding: 15px;
}
:where(.pb-css-commencement-project) .cgr-dossier-facts > div:last-child { border: 0; }
:where(.pb-css-commencement-project) .cgr-dossier-facts dt {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-dossier-facts dd {
  margin: 5px 0 0;
  color: var(--navy);
  font-size: 19px;
  font-weight: 900;
}
:where(.pb-css-commencement-project) .cgr-dossier-facts small { color: var(--muted); font-size: 10px; }
:where(.pb-css-commencement-project) .cgr-dossier-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
:where(.pb-css-commencement-project) .cgr-dossier-columns > div, :where(.pb-css-commencement-project) .cgr-dossier-documents {
  border: 1px solid #d5dfeb;
  border-radius: 10px;
  padding: 18px;
  background: #fff;
}
:where(.pb-css-commencement-project) .cgr-dossier h3 { margin: 0; color: var(--navy); font-size: 15px; }
:where(.pb-css-commencement-project) .cgr-dossier-reference-list, :where(.pb-css-commencement-project) .cgr-dossier-signal-list, :where(.pb-css-commencement-project) .cgr-dossier-documents ul {
  display: grid;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-commencement-project) .cgr-dossier-reference-list li, :where(.pb-css-commencement-project) .cgr-dossier-signal-list li, :where(.pb-css-commencement-project) .cgr-dossier-documents li {
  display: grid;
  gap: 3px;
  border-radius: 7px;
  padding: 10px;
  background: #f3f6f9;
  color: #42546d;
  font-size: 11px;
}
:where(.pb-css-commencement-project) .cgr-dossier-reference-list span, :where(.pb-css-commencement-project) .cgr-dossier-documents li span {
  color: var(--muted);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}
:where(.pb-css-commencement-project) .cgr-dossier-reference-list a, :where(.pb-css-commencement-project) .cgr-dossier-documents a {
  color: #1d58bd;
  font-weight: 850;
}
:where(.pb-css-commencement-project) .cgr-dossier-signal-list span, :where(.pb-css-commencement-project) .cgr-dossier-documents > div p, :where(.pb-css-commencement-project) .cgr-dossier-more, :where(.pb-css-commencement-project) .cgr-dossier-empty {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cgr-dossier-summary {
  margin: 0;
  color: #43546b;
  font-size: 12px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cgr-dossier-documents li {
  grid-template-columns: 155px minmax(0, 1fr) 180px;
  align-items: center;
}
:where(.pb-css-commencement-project) .cgr-dossier-documents a { text-align: right; }
:where(.pb-css-commencement-project) .cgr-dossier-documents li small {
  grid-column: 2;
  color: var(--muted);
  line-height: 1.45;
}
:where(.pb-css-commencement-project) .cgr-dossier-limits {
  border-top: 1px solid #d6e0e9;
  padding-top: 16px;
  color: #4b5d74;
  font-size: 11px;
  line-height: 1.55;
}
:where(.pb-css-commencement-project) .cgr-dossier-limits summary { color: var(--navy); font-weight: 900; cursor: pointer; }
:where(.pb-css-commencement-project) .cgr-share {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin: 0 0 22px;
  padding: 20px 22px;
  border: 1px solid #b7d9d2;
  border-radius: 12px;
  background: linear-gradient(120deg, #edf8f5, #f8fbff);
}
:where(.pb-css-commencement-project) .cgr-share h2 {
  margin: 5px 0 6px;
  color: var(--ink);
  font-size: 20px;
}
:where(.pb-css-commencement-project) .cgr-share p {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}
:where(.pb-css-commencement-project) .cgr-share-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
:where(.pb-css-commencement-project) .cgr-share-actions a {
  padding: 10px 13px;
  border: 1px solid #285f78;
  border-radius: 7px;
  color: #285f78;
  font-size: 13px;
  font-weight: 760;
  text-decoration: none;
}
:where(.pb-css-commencement-project) .cgr-share-actions a:first-child {
  background: #17365f;
  color: #fff;
}
@media (max-width: 900px) {
  :where(.pb-css-commencement-project) .cgr-story dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-commencement-project) .cgr-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-commencement-project) .cgr-summary > div { border-bottom: 1px solid var(--line); }
  :where(.pb-css-commencement-project) .cgr-information { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-share { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-share-actions { justify-content: flex-start; }
  :where(.pb-css-commencement-project) .cgr-notice { grid-template-columns: 170px minmax(0, 1fr); }
  :where(.pb-css-commencement-project) .cgr-notice-actions { grid-column: 2; }
  :where(.pb-css-commencement-project) .cgr-dossier-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-commencement-project) .cgr-dossier-facts > div:nth-child(2) { border-right: 0; }
  :where(.pb-css-commencement-project) .cgr-dossier-facts > div:nth-child(-n+2) { border-bottom: 1px solid #d5dfeb; }
  :where(.pb-css-commencement-project) .cgr-dossier-documents li { grid-template-columns: 130px minmax(0, 1fr); }
  :where(.pb-css-commencement-project) .cgr-dossier-documents a { grid-column: 2; text-align: left; }
}
@media (max-width: 560px) {
  :where(.pb-css-commencement-project) .cgr { width: min(100% - 28px, 1120px); padding-top: 18px; }
  :where(.pb-css-commencement-project) .cgr-header { padding: 22px 18px; }
  
  :where(.pb-css-commencement-project) .cgr-summary { grid-template-columns: 1fr 1fr; }
  :where(.pb-css-commencement-project) .cgr-story { padding: 18px; }
  :where(.pb-css-commencement-project) .cgr-story dl { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-summary > div:nth-child(even) { border-right: 0; }
  :where(.pb-css-commencement-project) .cgr-summary > div:last-child { grid-column: 1 / -1; }
  :where(.pb-css-commencement-project) .cgr-panel, :where(.pb-css-commencement-project) .cgr-timeline, :where(.pb-css-commencement-project) .cgr-documents { padding: 18px; }
  :where(.pb-css-commencement-project) .cgr-org-coverage { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-location-facts { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-map { height: 240px; }
  :where(.pb-css-commencement-project) .cgr-document-list li {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  :where(.pb-css-commencement-project) .cgr-document-action {
    width: 100%;
    justify-self: stretch;
  }
  :where(.pb-css-commencement-project) .cgr-notice {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 18px 0;
  }
  :where(.pb-css-commencement-project) .cgr-notice-actions { grid-column: 1; }
  :where(.pb-css-commencement-project) .cgr-reference-list strong, :where(.pb-css-commencement-project) .cgr-notice-ref a { word-break: break-word; }
  :where(.pb-css-commencement-project) .cgr-dossier { padding: 18px; }
  :where(.pb-css-commencement-project) .cgr-dossier-heading, :where(.pb-css-commencement-project) .cgr-dossier-columns, :where(.pb-css-commencement-project) .cgr-dossier-scope { display: grid; grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-dossier-heading > a { white-space: normal; }
  :where(.pb-css-commencement-project) .cgr-dossier-facts { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-dossier-facts > div, :where(.pb-css-commencement-project) .cgr-dossier-facts > div:nth-child(2) { border-right: 0; border-bottom: 1px solid #d5dfeb; }
  :where(.pb-css-commencement-project) .cgr-dossier-facts > div:last-child { border-bottom: 0; }
  :where(.pb-css-commencement-project) .cgr-dossier-documents li { grid-template-columns: 1fr; }
  :where(.pb-css-commencement-project) .cgr-dossier-documents a { grid-column: auto; }
  :where(.pb-css-commencement-project) .cgr-dossier-documents li small { grid-column: auto; }
}

/* accounts/commencement_notice_detail.html */
:where(.pb-css-commencement-project) .cnd{max-width:940px;margin:auto;padding:28px 20px 64px;color:var(--pb-navy)}:where(.pb-css-commencement-project) .cnd a{color:#14655a}:where(.pb-css-commencement-project) .cnd-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px;color:#6a7486;font-size:13px}:where(.pb-css-commencement-project) .cnd-hero{padding:28px;border-radius:16px;background:var(--pb-navy);color:#fff}:where(.pb-css-commencement-project) .cnd-hero h1{margin:8px 0}:where(.pb-css-commencement-project) .cnd-hero p{color:#c8d0df}:where(.pb-css-commencement-project) .cnd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;margin:18px 0}:where(.pb-css-commencement-project) .cnd-grid div{padding:14px;border:1px solid #dce2e7;border-radius:10px;background:#fff}:where(.pb-css-commencement-project) .cnd-grid dt{color:#6a7486;font-size:12px}:where(.pb-css-commencement-project) .cnd-grid dd{margin:5px 0 0;font-weight:700}:where(.pb-css-commencement-project) .cnd-copy{padding:18px;border:1px solid #dce2e7;border-radius:10px;background:#fff;line-height:1.6}:where(.pb-css-commencement-project) .cnd-note{padding:14px;border-radius:10px;background:#eef2f3;color:#465168}

/* ---- organisation-history ---- */
/* Organisation project history (templates/accounts/organisation_project_history.html). */
/* accounts/organisation_project_history.html */
:where(.pb-css-organisation-history) .org-history {
  width: min(1120px, calc(100% - 36px));
  margin: 0 auto;
  padding: 28px 0 64px;
  color: #12213a;
}
:where(.pb-css-organisation-history) .org-history a { color: #155e55; }
:where(.pb-css-organisation-history) .org-history-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 18px;
  color: #617087;
  font-size: 12px;
}
:where(.pb-css-organisation-history) .org-history-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  padding: 28px;
  border-radius: 14px;
  background: #10243d;
  color: #fff;
}
:where(.pb-css-organisation-history) .org-history-header h1 {
  max-width: 820px;
  margin: 7px 0 10px;
  color: #fff;
  overflow-wrap: anywhere;
}
:where(.pb-css-organisation-history) .org-history-header p {
  max-width: 780px;
  margin: 0;
  color: #cfdae7;
  line-height: 1.6;
}
:where(.pb-css-organisation-history) .org-history-kicker {
  color: #79d0c4 !important;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .1em;
  text-transform: uppercase;
}
:where(.pb-css-organisation-history) .org-history-latest {
  align-self: start;
  min-width: 170px;
  padding: 13px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 10px;
  background: rgba(255,255,255,.07);
}
:where(.pb-css-organisation-history) .org-history-latest span, :where(.pb-css-organisation-history) .org-history-latest strong { display: block; }
:where(.pb-css-organisation-history) .org-history-latest span {
  color: #a9bacd;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-organisation-history) .org-history-latest strong { margin-top: 5px; }
:where(.pb-css-organisation-history) .org-history-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 18px 0;
  border: 1px solid #dce3eb;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}
:where(.pb-css-organisation-history) .org-history-metrics div {
  padding: 18px;
  border-right: 1px solid #dce3eb;
}
:where(.pb-css-organisation-history) .org-history-metrics div:last-child { border-right: 0; }
:where(.pb-css-organisation-history) .org-history-metrics dt {
  color: #617087;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .07em;
  text-transform: uppercase;
}
:where(.pb-css-organisation-history) .org-history-metrics dd {
  margin: 6px 0 0;
  font-size: 24px;
  font-weight: 850;
}
:where(.pb-css-organisation-history) .org-history-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, .7fr);
  gap: 18px;
  align-items: start;
}
:where(.pb-css-organisation-history) .org-history-panel {
  padding: 22px;
  border: 1px solid #dce3eb;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 10px 25px rgba(15,33,71,.04);
}
:where(.pb-css-organisation-history) .org-history-panel + .org-history-panel { margin-top: 18px; }
:where(.pb-css-organisation-history) .org-history-panel h2, :where(.pb-css-organisation-history) .org-history-panel h3 { margin: 0 0 10px; }
:where(.pb-css-organisation-history) .org-history-panel > p {
  margin: 0;
  color: #617087;
  line-height: 1.6;
}
:where(.pb-css-organisation-history) .org-history-roles, :where(.pb-css-organisation-history) .org-history-aliases {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-organisation-history) .org-history-roles li, :where(.pb-css-organisation-history) .org-history-aliases li {
  padding: 6px 9px;
  border-radius: 999px;
  background: #eef5f4;
  color: #155e55;
  font-size: 11px;
  font-weight: 750;
}
:where(.pb-css-organisation-history) .org-history-projects {
  display: grid;
  margin: 16px 0 0;
  border-top: 1px solid #dce3eb;
}
:where(.pb-css-organisation-history) .org-history-project {
  display: grid;
  grid-template-columns: minmax(125px, .45fr) minmax(0, 1.55fr);
  gap: 18px;
  padding: 19px 0;
  border-bottom: 1px solid #dce3eb;
}
:where(.pb-css-organisation-history) .org-history-project:last-child { border-bottom: 0; }
:where(.pb-css-organisation-history) .org-history-project-meta {
  display: grid;
  align-content: start;
  gap: 5px;
  color: #617087;
  font-size: 11px;
}
:where(.pb-css-organisation-history) .org-history-project-meta strong {
  color: #12213a;
  font-size: 13px;
  overflow-wrap: anywhere;
}
:where(.pb-css-organisation-history) .org-history-project-copy h3 {
  margin: 0 0 7px;
  font-size: 17px;
  overflow-wrap: anywhere;
}
:where(.pb-css-organisation-history) .org-history-project-copy p {
  margin: 0 0 10px;
  color: #53647a;
  line-height: 1.55;
}
:where(.pb-css-organisation-history) .org-history-project-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 12px;
  font-weight: 800;
}
:where(.pb-css-organisation-history) .org-history-counties {
  display: grid;
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-organisation-history) .org-history-counties li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 10px;
  border-radius: 7px;
  background: #f5f7fa;
  font-size: 12px;
}
:where(.pb-css-organisation-history) .org-history-boundary {
  margin-top: 18px !important;
  padding-top: 15px;
  border-top: 1px solid #dce3eb;
  font-size: 12px;
}
:where(.pb-css-organisation-history) .org-history-bounded {
  margin: 14px 0 0 !important;
  padding: 10px 12px;
  border-left: 3px solid #c6862b;
  background: #fff8ec;
  color: #6b4a1d !important;
  font-size: 12px;
}
:where(.pb-css-organisation-history) .org-history-pagination {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 18px;
  font-size: 12px;
  font-weight: 800;
}
@media (max-width: 820px) {
  :where(.pb-css-organisation-history) .org-history-header, :where(.pb-css-organisation-history) .org-history-layout { grid-template-columns: 1fr; }
  :where(.pb-css-organisation-history) .org-history-metrics { grid-template-columns: 1fr 1fr; }
  :where(.pb-css-organisation-history) .org-history-metrics div:nth-child(2) { border-right: 0; }
  :where(.pb-css-organisation-history) .org-history-metrics div:nth-child(-n+2) { border-bottom: 1px solid #dce3eb; }
}
@media (max-width: 560px) {
  :where(.pb-css-organisation-history) .org-history { width: min(100% - 28px, 1120px); padding-top: 18px; }
  :where(.pb-css-organisation-history) .org-history-header, :where(.pb-css-organisation-history) .org-history-panel { padding: 18px; }
  :where(.pb-css-organisation-history) .org-history-latest { min-width: 0; }
  :where(.pb-css-organisation-history) .org-history-project { grid-template-columns: 1fr; gap: 10px; }
}

/* ---- accounts ---- */
/* Account forms and states: register, newsletter subscribe, alert request states,
   email preferences, setup, and the dashboard's plan banner. */
/* registration/register.html */
:where(.pb-css-accounts) .account-page.registration-page{width:min(calc(var(--pb-container) - 2 * var(--pb-gutter)),calc(100% - 2 * var(--pb-gutter)))}
:where(.pb-css-accounts) .registration-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 16px 36px rgba(15,33,71,.08)}
:where(.pb-css-accounts) .registration-form-panel{padding:28px}
:where(.pb-css-accounts) .registration-kicker{margin:0 0 8px;color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase}
:where(.pb-css-accounts) .registration-form-panel h1{margin:0;color:var(--navy)}
:where(.pb-css-accounts) .registration-intro{max-width:690px;margin:11px 0 22px;color:var(--muted);line-height:1.55}
:where(.pb-css-accounts) .registration-form{display:grid;gap:20px}
:where(.pb-css-accounts) .registration-form .form-hint{display:block}
:where(.pb-css-accounts) .registration-fieldset{display:grid;gap:14px;margin:0;border:0;padding:0}
:where(.pb-css-accounts) .registration-fieldset legend{width:100%;margin:0 0 2px;border-bottom:1px solid var(--line);padding:0 0 8px;color:var(--ink);font-size:15px;font-weight:900}
:where(.pb-css-accounts) .registration-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
:where(.pb-css-accounts) .registration-field{display:grid;gap:6px;min-width:0}
:where(.pb-css-accounts) .registration-field.is-wide{grid-column:1/-1}
:where(.pb-css-accounts) .registration-field label {color:var(--muted);font-size:12px;font-weight:800}
:where(.pb-css-accounts) .registration-field input, :where(.pb-css-accounts) .registration-field select{width:100%;min-width:0;min-height:46px;border:1px solid var(--pb-line-strong);border-radius:8px;background:#fff;padding:10px 12px;color:var(--ink);font:inherit}
:where(.pb-css-accounts) .registration-field input:focus, :where(.pb-css-accounts) .registration-field select:focus{border-color:var(--blue);outline:3px solid rgba(47,111,237,.22);outline-offset:1px}
:where(.pb-css-accounts) .registration-form .registration-consent {display:flex;gap:8px;align-items:flex-start;min-height:44px;border:1px solid var(--line);border-radius:8px;background:#f8faff;padding:10px 11px;color:var(--ink);font-size:12px;font-weight:750;letter-spacing:0;line-height:1.4;text-transform:none}
:where(.pb-css-accounts) .registration-form .registration-consent input[type="checkbox"] {width:18px;min-width:18px;height:18px;min-height:18px;flex:0 0 18px;margin:0;border-radius:3px;padding:0}
:where(.pb-css-accounts) .registration-consents{display:grid;gap:8px}
:where(.pb-css-accounts) .registration-link-button{border:0;background:none;padding:0;color:var(--blue);font:inherit;font-weight:800;text-decoration:underline;cursor:pointer}
:where(.pb-css-accounts) .registration-errors, :where(.pb-css-accounts) :where(.registration-page) .errorlist{margin:0;padding:0;list-style:none;color:#a53a2a;font-size:12px;font-weight:700}
:where(.pb-css-accounts) .registration-submit{width:auto;min-height:48px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;padding:11px 18px;font:inherit;font-weight:900;cursor:pointer}
:where(.pb-css-accounts) .registration-value{display:grid;align-content:start;gap:20px;padding:48px 32px 32px;background:linear-gradient(145deg,var(--navy),#122653);color:#fff}
:where(.pb-css-accounts) .registration-value h2{margin:0;font-size:27px;line-height:1.15}
:where(.pb-css-accounts) .registration-value>p{margin:0;color:rgba(255,255,255,.76);line-height:1.55}
:where(.pb-css-accounts) .registration-proof{display:grid;gap:12px;margin:0;padding:0;list-style:none}
:where(.pb-css-accounts) .registration-proof li{border-top:1px solid rgba(255,255,255,.16);padding-top:12px}
:where(.pb-css-accounts) .registration-proof strong{display:block;margin-bottom:4px}
:where(.pb-css-accounts) .registration-proof span{color:rgba(255,255,255,.72);font-size:13px;line-height:1.45}
:where(.pb-css-accounts) .registration-privacy{border:1px solid rgba(255,255,255,.16);border-radius:9px;background:rgba(255,255,255,.06);padding:13px;color:rgba(255,255,255,.8);font-size:12px;line-height:1.5}
@media(max-width:820px){:where(.pb-css-accounts) .account-page.registration-page{width:min(calc(100% - 2 * var(--pb-gutter)),var(--pb-narrow))}:where(.pb-css-accounts) .registration-layout{grid-template-columns:1fr}:where(.pb-css-accounts) .registration-form-panel{padding:20px}:where(.pb-css-accounts) .registration-value{padding:24px}}
@media(max-width:560px){:where(.pb-css-accounts) .account-page.registration-page{width:calc(100% - 2 * var(--pb-gutter-sm))}:where(.pb-css-accounts) .registration-fields {grid-template-columns:1fr}:where(.pb-css-accounts) .registration-field.is-wide{grid-column:auto}:where(.pb-css-accounts) .registration-submit{width:100%;min-height:48px}}

/* newsletter/subscribe.html */
:where(.pb-css-accounts) .subscribe-page{max-width:var(--pb-narrow)}
:where(.pb-css-accounts) .subscribe-card{margin-top:14px;border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 16px 36px rgba(15,33,71,.06);padding:24px}
:where(.pb-css-accounts) .subscribe-form{display:grid;gap:18px}
:where(.pb-css-accounts) .subscribe-field{display:grid;gap:6px;min-width:0}
:where(.pb-css-accounts) .subscribe-field>span{color:var(--muted);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase}
:where(.pb-css-accounts) .subscribe-field small{color:var(--muted);font-size:13px;line-height:1.45}
:where(.pb-css-accounts) .subscribe-field input, :where(.pb-css-accounts) .subscribe-field select{width:100%;min-height:46px;min-width:0;border:1px solid #dbe5f4;border-radius:7px;padding:11px 12px;background:#fff;color:var(--ink);font:inherit}
:where(.pb-css-accounts) .subscribe-field input:focus, :where(.pb-css-accounts) .subscribe-field select:focus{outline:2px solid rgba(47,111,237,.28);border-color:var(--blue)}
:where(.pb-css-accounts) .subscribe-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
:where(.pb-css-accounts) .subscribe-fieldset{margin:0;border:0;padding:0;display:grid;gap:14px}
:where(.pb-css-accounts) .subscribe-fieldset legend{margin:0 0 4px;padding:0;color:var(--ink);font-size:16px;font-weight:900}
:where(.pb-css-accounts) .subscribe-fieldset-intro{margin:-8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}
:where(.pb-css-accounts) .subscribe-check{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start;color:var(--ink);font-size:15px;line-height:1.45;cursor:pointer}
:where(.pb-css-accounts) .subscribe-check input{width:20px;height:20px;margin:1px 0 0;accent-color:var(--blue);cursor:pointer}
:where(.pb-css-accounts) .subscribe-consent{border:1px solid var(--line);border-radius:10px;background:#f8faff;padding:14px 16px;transition:border-color .15s,background .15s}
:where(.pb-css-accounts) .subscribe-consent:has(input:checked){border-color:var(--blue);background:#eef4ff}
:where(.pb-css-accounts) .subscribe-submit{justify-self:start;min-height:46px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;padding:10px 22px;font:inherit;font-weight:900;cursor:pointer}
:where(.pb-css-accounts) .subscribe-submit:hover{background:var(--blue-hover)}
:where(.pb-css-accounts) .subscribe-note{margin:4px 0 0;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:13px;line-height:1.5}
:where(.pb-css-accounts) .subscribe-page [hidden]{display:none!important}
@media(max-width:560px){:where(.pb-css-accounts) .subscribe-card{padding:18px}:where(.pb-css-accounts) .subscribe-row{grid-template-columns:1fr}:where(.pb-css-accounts) .subscribe-submit{justify-self:stretch}}

/* accounts/_alert_status_styles.html */
:where(.pb-css-accounts) .alert-status { max-width: 620px; margin: 28px auto 40px; padding: 0 16px; }
:where(.pb-css-accounts) .alert-status-card { background: #fff; border: 1px solid #dbe5f5; border-radius: 14px; overflow: hidden; box-shadow: 0 10px 30px rgba(10, 23, 51, .08); }
:where(.pb-css-accounts) .alert-status-head { background: linear-gradient(120deg, var(--pb-navy) 0%, var(--pb-hero-end) 100%); color: #fff; padding: 28px 28px 24px; }
:where(.pb-css-accounts) .alert-status-icon { display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: var(--pb-blue); color: #fff; font-size: 24px; font-weight: 900; margin-bottom: 14px; }
:where(.pb-css-accounts) .alert-status-icon.is-done { background: #16a34a; }
:where(.pb-css-accounts) .alert-status-kicker { margin: 0 0 8px; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: #8fb3ff; }
:where(.pb-css-accounts) .alert-status-head h1 { margin: 0; color: #fff; }
:where(.pb-css-accounts) .alert-status-body { padding: 24px 28px 28px; color: #2b3a55; font-size: 16px; line-height: 1.55; }
:where(.pb-css-accounts) .alert-status-body p { margin: 0 0 14px; }
:where(.pb-css-accounts) .alert-status-summary { margin: 4px 0 20px; padding: 14px 16px; border: 1px solid #dbe5f5; border-radius: 10px; background: #f5f8fd; font-size: 14px; }
:where(.pb-css-accounts) .alert-status-summary strong { display: block; color: var(--pb-navy); margin-bottom: 2px; }
:where(.pb-css-accounts) .alert-status-actions { display: grid; gap: 10px; margin-top: 8px; }
:where(.pb-css-accounts) .alert-status-actions a { display: flex; align-items: center; justify-content: center; min-height: 48px; border-radius: 8px; font-weight: 700; font-size: 15px; text-decoration: none; }
:where(.pb-css-accounts) .alert-status-actions .is-primary { background: var(--pb-blue); color: #fff; }
:where(.pb-css-accounts) .alert-status-actions .is-primary:hover { background: var(--pb-blue-hover); text-decoration: none; }
:where(.pb-css-accounts) .alert-status-actions .is-secondary { border: 1px solid #c9d3e3; color: #1d4fbf; background: #fff; }
:where(.pb-css-accounts) .alert-status-small { margin-top: 18px; font-size: 13px; color: var(--pb-muted); }
:where(.pb-css-accounts) .alert-status-small a { color: var(--pb-muted); }
@media (min-width: 560px) { :where(.pb-css-accounts) .alert-status-actions { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { :where(.pb-css-accounts) .alert-status-head, :where(.pb-css-accounts) .alert-status-body { padding-left: 18px; padding-right: 18px; }  }

/* accounts/email_preferences.html */
:where(.pb-css-accounts) .email-prefs{max-width:var(--pb-narrow)}
:where(.pb-css-accounts) .email-prefs .eyebrow{margin:0 0 6px;color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
:where(.pb-css-accounts) .email-prefs h1{margin:0;color:var(--navy)}
:where(.pb-css-accounts) .email-prefs-intro{margin:10px 0 22px;color:var(--muted);line-height:1.55}
:where(.pb-css-accounts) .email-prefs-options{display:grid;gap:12px;margin:0 0 20px}
:where(.pb-css-accounts) .email-prefs-option{display:grid;grid-template-columns:22px 1fr;gap:14px;align-items:start;border:1px solid var(--line);border-radius:10px;background:#f8faff;padding:16px 18px;cursor:pointer;transition:border-color .15s,background .15s}
:where(.pb-css-accounts) .email-prefs-option:hover{border-color:var(--pb-line-strong)}
:where(.pb-css-accounts) .email-prefs-option:has(input:checked){border-color:var(--blue);background:#eef4ff}
:where(.pb-css-accounts) .email-prefs-option input[type="checkbox"]{width:20px;height:20px;min-height:20px;margin:2px 0 0;accent-color:var(--blue);cursor:pointer}
:where(.pb-css-accounts) .email-prefs-option strong{display:block;margin-bottom:4px;color:var(--ink);font-size:15px}
:where(.pb-css-accounts) .email-prefs-option span{display:block;color:var(--muted);font-size:13px;line-height:1.5}
:where(.pb-css-accounts) .email-prefs-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
:where(.pb-css-accounts) .email-prefs-submit{min-height:46px;border:1px solid var(--blue);border-radius:8px;background:var(--blue);color:#fff;padding:10px 20px;font:inherit;font-weight:900;cursor:pointer}
:where(.pb-css-accounts) .email-prefs-submit:hover{filter:brightness(.95)}
:where(.pb-css-accounts) .email-prefs-note{margin:20px 0 0;border-top:1px solid var(--line);padding-top:14px;color:var(--muted);font-size:13px;line-height:1.5}
:where(.pb-css-accounts) .email-prefs .errorlist{margin:0 0 14px;padding:0;list-style:none;color:#a53a2a;font-weight:700}
@media(max-width:560px){:where(.pb-css-accounts) .email-prefs-submit{width:100%}}

/* accounts/setup.html */
:where(.pb-css-accounts) .setup-form .setup-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
:where(.pb-css-accounts) .setup-form select{min-height:44px;padding:8px;width:100%}
:where(.pb-css-accounts) .setup-form details{border:1px solid var(--line);border-radius:8px;padding:12px}
:where(.pb-css-accounts) .setup-form summary{cursor:pointer;font-weight:700;min-height:32px}
:where(.pb-css-accounts) .setup-form #id_counties, :where(.pb-css-accounts) .setup-form #id_work_categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}
:where(.pb-css-accounts) .setup-form #id_counties label, :where(.pb-css-accounts) .setup-form #id_work_categories label{display:flex;align-items:center;gap:8px;min-height:40px;text-transform:none;font-size:14px;letter-spacing:0}
:where(.pb-css-accounts) .setup-form input[type=checkbox]{width:18px;height:18px;min-height:18px;margin:0;flex:0 0 18px}
@media(max-width:560px){:where(.pb-css-accounts) .setup-form .setup-fields{grid-template-columns:1fr}}

/* accounts/_product_access_banner.html */
:where(.pb-css-accounts) .account-product-banner { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:16px; align-items:center; margin:0 0 16px; padding:16px; border:1px solid #cfe0ff; border-radius:10px; background:linear-gradient(135deg,#f8fbff,#edf3ff); }
:where(.pb-css-accounts) .account-product-banner p { margin:0; color:var(--pb-muted); font-size:13px; line-height:1.45; }
:where(.pb-css-accounts) .account-product-banner strong { display:block; margin:3px 0 5px; color:var(--pb-ink); font-size:18px; }
:where(.pb-css-accounts) .account-product-action { min-height:40px; display:inline-flex; align-items:center; justify-content:center; border-radius:7px; padding:10px 13px; background:var(--pb-blue); color:#fff; font-size:13px; font-weight:900; text-decoration:none; }
@media(max-width:640px){:where(.pb-css-accounts) .account-product-banner{grid-template-columns:1fr}:where(.pb-css-accounts) .account-product-action{width:100%}}

/* ---- base-shell ---- */
/* templates/base.html shell: the account, tenders, pricing, commencements,
   refusal-check and error pages (R4-E). Scoped to <body class="pb-css-base-shell">;
   the family partials sit before (head blocks) or after (body blocks) it in BUNDLE. */
:where(.pb-css-base-shell) * { box-sizing: border-box; }
html:where(:has(> body.pb-css-base-shell)), body:where(.pb-css-base-shell) { max-width: 100%; }
body:where(.pb-css-base-shell) {
  /* Short names kept for base.html child templates. The values are the --pb-*
     design tokens, defined once in the nav's critical block (docs/design-tokens.md).
     Declared on body (was :root) so the scoped rule needs no :has(). */
  --navy: var(--pb-navy);
  --navy-dark: var(--pb-navy-dark);
  --ink: var(--pb-ink);
  --muted: var(--pb-muted);
  --paper: var(--pb-page);
  --panel: var(--pb-card);
  --line: var(--pb-line);
  --blue: var(--pb-blue);
  --blue-hover: var(--pb-blue-hover);
  --container: var(--pb-container);
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--pb-font);
  -webkit-font-smoothing: antialiased;
}
:where(.pb-css-base-shell) a { color: var(--blue); text-decoration: none; }
:where(.pb-css-base-shell) a:hover { text-decoration: underline; }
:where(.pb-css-base-shell) :where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 3px solid #f6b73c;
  outline-offset: 3px;
}
:where(.pb-css-base-shell) .skip-link {
  position: absolute;
  left: 12px;
  top: 12px;
  z-index: 100;
  transform: translateY(-160%);
  border-radius: 7px;
  padding: 8px 10px;
  background: #fff;
  color: var(--ink);
  font-weight: 900;
}
:where(.pb-css-base-shell) .skip-link:focus { transform: translateY(0); }
:where(.pb-css-base-shell) .container {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 var(--pb-gutter);
}
:where(.pb-css-base-shell) main.account-shell {
  min-height: 56vh;
  padding: 28px 0 64px;
}
/* The narrow account box (login, register on phones, error pages and the other
   account forms); wider families set their own box on the container tokens. */
:where(.pb-css-base-shell) .account-page {
  width: min(var(--pb-narrow), calc(100% - 2 * var(--pb-gutter)));
  margin: 0 auto;
}
:where(.pb-css-base-shell) .messages, :where(.pb-css-base-shell) .page-hero, :where(.pb-css-base-shell) .account-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  box-shadow: 0 16px 36px rgba(15,33,71,.06);
}
:where(.pb-css-base-shell) .messages {
  margin-bottom: 14px;
  padding: 12px 14px;
  color: var(--muted);
}
:where(.pb-css-base-shell) .page-hero {
  padding: 22px;
  background: linear-gradient(120deg, var(--navy) 0%, var(--pb-hero-end) 100%);
  color: #fff;
}
:where(.pb-css-base-shell) .page-hero .eyebrow {
  margin: 0 0 8px;
  color: #9fb8ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .page-hero h1 {
  margin: 0;
  color: #fff;
  font-size: var(--pb-h1);
  line-height: var(--pb-h1-line);
  letter-spacing: 0;
}
/* One H1 scale on every page (docs/design-tokens.md), whatever the child template sets. */
:where(.pb-css-base-shell) main.account-shell h1 {
  font-size: var(--pb-h1);
  line-height: var(--pb-h1-line);
  letter-spacing: 0;
}
:where(.pb-css-base-shell) .page-hero p {
  margin: 12px 0 0;
  max-width: 560px;
  color: rgba(255,255,255,.78);
  line-height: 1.55;
}
:where(.pb-css-base-shell) .account-card {
  margin-top: 14px;
  padding: 18px;
}
:where(.pb-css-base-shell) .account-form {
  display: grid;
  gap: 14px;
}
:where(.pb-css-base-shell) .account-form p {
  display: grid;
  gap: 6px;
  margin: 0;
}
:where(.pb-css-base-shell) .account-form label {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .account-form input, :where(.pb-css-base-shell) .alert-control-row select {
  width: 100%;
  min-height: 46px;
  min-width: 0;
  border: 1px solid #dbe5f4;
  border-radius: 7px;
  padding: 11px 12px;
  background: #fff;
  color: var(--ink);
  font: inherit;
}
:where(.pb-css-base-shell) .account-form input:focus, :where(.pb-css-base-shell) .alert-control-row select:focus {
  outline: 2px solid rgba(47,111,237,.28);
  border-color: var(--blue);
}
:where(.pb-css-base-shell) .account-button, :where(.pb-css-base-shell) .primary-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 1px solid var(--blue);
  border-radius: 7px;
  padding: 10px 14px;
  background: var(--blue);
  color: #fff;
  font: inherit;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}
:where(.pb-css-base-shell) .account-button:hover, :where(.pb-css-base-shell) .primary-action:hover {
  background: var(--blue-hover);
  text-decoration: none;
}
:where(.pb-css-base-shell) .secondary-action, :where(.pb-css-base-shell) .card-secondary-action, :where(.pb-css-base-shell) .danger-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid #c8d5ea;
  border-radius: 7px;
  padding: 9px 12px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
:where(.pb-css-base-shell) .secondary-action:hover, :where(.pb-css-base-shell) .card-secondary-action:hover {
  border-color: var(--blue);
  color: var(--blue);
  text-decoration: none;
}
:where(.pb-css-base-shell) .danger-action {
  border-color: #f1b8ad;
  color: #b42318;
}
:where(.pb-css-base-shell) .danger-action:hover {
  border-color: #d92d20;
  color: #d92d20;
  text-decoration: none;
}
:where(.pb-css-base-shell) .lead-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 16px;
}
:where(.pb-css-base-shell) .report-section {
  margin-top: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  padding: 18px;
  box-shadow: 0 16px 36px rgba(15,33,71,.05);
  overflow-x: auto;
  overscroll-behavior-inline: contain;
}
:where(.pb-css-base-shell) .account-page.staff-dashboard-page {
  width: min(var(--pb-container), calc(100% - 48px));
}
:where(.pb-css-base-shell) .stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-top: 14px;
}
:where(.pb-css-base-shell) .stats-grid > div, :where(.pb-css-base-shell) .profile-detail-grid > div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: #fff;
}
:where(.pb-css-base-shell) .stats-grid dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .stats-grid dd {
  margin: 8px 0 4px;
  color: var(--ink);
  font-size: 24px;
  font-weight: 900;
  line-height: 1.1;
  overflow-wrap: anywhere;
}
:where(.pb-css-base-shell) .stats-grid span {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}
:where(.pb-css-base-shell) .profile-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
:where(.pb-css-base-shell) .profile-detail-grid h3 { margin-top: 0; }
:where(.pb-css-base-shell) .profile-detail-grid p, :where(.pb-css-base-shell) .profile-detail-grid code { overflow-wrap: anywhere; }
:where(.pb-css-base-shell) .compact-table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 14px;
}
:where(.pb-css-base-shell) .compact-table th, :where(.pb-css-base-shell) .compact-table td {
  border-bottom: 1px solid var(--line);
  padding: 9px 8px;
  overflow-wrap: anywhere;
  text-align: left;
  vertical-align: top;
}
:where(.pb-css-base-shell) .compact-table th {
  color: var(--muted);
  font-size: 12px;
  letter-spacing: .03em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .compact-table tr:last-child > * { border-bottom: 0; }
:where(.pb-css-base-shell) .section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
:where(.pb-css-base-shell) .section-heading p {
  margin: 0 0 4px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .section-heading h2 {
  margin: 0;
  color: var(--ink);
  font-size: 22px;
  line-height: 1.2;
  letter-spacing: 0;
}
:where(.pb-css-base-shell) .section-count {
  flex: 0 0 auto;
  border: 1px solid #c8d5ea;
  border-radius: 999px;
  padding: 6px 10px;
  background: #f8fbff;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .lead-list {
  display: grid;
  gap: 12px;
}
:where(.pb-css-base-shell) .lead-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: #fff;
}
:where(.pb-css-base-shell) .lead-topline {
  display: flex;
  justify-content: space-between;
  gap: 14px;
}
:where(.pb-css-base-shell) .lead-meta, :where(.pb-css-base-shell) .form-hint, :where(.pb-css-base-shell) .empty {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
}
:where(.pb-css-base-shell) .lead-card h3 {
  margin: 4px 0 0;
  font-size: 19px;
  line-height: 1.25;
  letter-spacing: 0;
}
:where(.pb-css-base-shell) .lead-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}
:where(.pb-css-base-shell) .lead-card-grid { margin-top: 12px; }
:where(.pb-css-base-shell) .lead-grid div {
  min-width: 0;
  border: 1px solid #edf2fa;
  border-radius: 7px;
  padding: 10px;
  background: #fbfdff;
}
:where(.pb-css-base-shell) .lead-grid dt {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
:where(.pb-css-base-shell) .lead-grid dd {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
  line-height: 1.35;
}
:where(.pb-css-base-shell) .alert-control-list {
  display: grid;
  gap: 12px;
}
:where(.pb-css-base-shell) .alert-control-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(130px, 180px) auto;
  align-items: center;
  gap: 12px;
  margin: 0;
  border: 1px solid #edf2fa;
  border-radius: 8px;
  padding: 12px;
  background: #fbfdff;
}
:where(.pb-css-base-shell) .alert-control-row:first-child, :where(.pb-css-base-shell) .alert-control-row:last-child {
  grid-template-columns: minmax(0, 1fr) auto;
}
:where(.pb-css-base-shell) .alert-control-row .form-hint {
  margin: 4px 0 0;
}
:where(.pb-css-base-shell) .account-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0 0;
  color: var(--muted);
  font-size: 14px;
}
:where(.pb-css-base-shell) .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
@media (max-width: 560px) {
  :where(.pb-css-base-shell) .container { padding-left: var(--pb-gutter-sm); padding-right: var(--pb-gutter-sm); }
  :where(.pb-css-base-shell) .account-page { width: calc(100% - 2 * var(--pb-gutter-sm)); }
  :where(.pb-css-base-shell) .account-page.staff-dashboard-page { width: calc(100% - 24px); }
  :where(.pb-css-base-shell) .page-hero, :where(.pb-css-base-shell) .account-card, :where(.pb-css-base-shell) .report-section { padding: 16px; }
  :where(.pb-css-base-shell) .page-hero h1, :where(.pb-css-base-shell) main.account-shell h1 { font-size: var(--pb-h1-sm); }
  :where(.pb-css-base-shell) .account-button { width: 100%; }
  :where(.pb-css-base-shell) .section-heading, :where(.pb-css-base-shell) .lead-topline {
    flex-direction: column;
  }
  :where(.pb-css-base-shell) .lead-grid, :where(.pb-css-base-shell) .profile-detail-grid, :where(.pb-css-base-shell) .alert-control-row, :where(.pb-css-base-shell) .alert-control-row:first-child, :where(.pb-css-base-shell) .alert-control-row:last-child {
    grid-template-columns: 1fr;
  }
  :where(.pb-css-base-shell) .stats-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  :where(.pb-css-base-shell) .compact-table {
    min-width: 640px;
    table-layout: auto;
    font-size: 12px;
  }
  :where(.pb-css-base-shell) .compact-table th, :where(.pb-css-base-shell) .compact-table td { padding: 8px 5px; }
  :where(.pb-css-base-shell) .lead-actions > *, :where(.pb-css-base-shell) .alert-control-row > button, :where(.pb-css-base-shell) .alert-control-row > select {
    width: 100%;
  }
}

/* ---- pricing ---- */
/* Pricing, onboarding and trial pages (templates/accounts/_product_styles.html). */
/* /pricing/ is boxed by the container tokens, like /tenders/ and /refusal-check/;
   onboarding and the trial pages keep the narrow account box. */
:where(.pb-css-pricing) .account-page.pricing-page-shell { width: 100%; max-width: var(--pb-container); padding: 0 var(--pb-gutter); }
@media (max-width: 560px) { :where(.pb-css-pricing) .account-page.pricing-page-shell { padding: 0 var(--pb-gutter-sm); } }
/* accounts/_product_styles.html */
:where(.pb-css-pricing) .product-page {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  gap: 18px;
}
:where(.pb-css-pricing) .product-hero, :where(.pb-css-pricing) .product-panel, :where(.pb-css-pricing) .product-plan, :where(.pb-css-pricing) .product-story, :where(.pb-css-pricing) .product-callout {
  min-width: 0;
  border: 1px solid #d9e4f2;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 33, 71, .06);
}
:where(.pb-css-pricing) .product-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(280px, .7fr);
  overflow: hidden;
}
:where(.pb-css-pricing) .product-hero-copy {
  padding: clamp(24px, 5vw, 54px);
  background: var(--pb-navy);
  color: #fff;
}
:where(.pb-css-pricing) .product-kicker {
  margin: 0 0 10px;
  color: #78a0ff;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
:where(.pb-css-pricing) .product-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
}
:where(.pb-css-pricing) .product-hero-copy > p:not(.product-kicker) {
  max-width: 680px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, .78);
  font-size: 17px;
  line-height: 1.55;
}
:where(.pb-css-pricing) .product-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 22px; }
:where(.pb-css-pricing) .product-button {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #cad9ed;
  border-radius: 8px;
  padding: 10px 15px;
  background: #fff;
  color: var(--pb-ink);
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.2;
  text-decoration: none;
  cursor: pointer;
}
:where(.pb-css-pricing) .product-button:hover { text-decoration: none; filter: brightness(.98); }
:where(.pb-css-pricing) .product-button.primary { border-color: var(--pb-blue); background: var(--pb-blue); color: #fff; }
:where(.pb-css-pricing) .product-button.quiet { background: transparent; }
:where(.pb-css-pricing) .product-hero-side {
  display: grid;
  gap: 14px;
  align-content: center;
  padding: 24px;
  background: linear-gradient(145deg, #f7faff, #eaf1ff);
}
:where(.pb-css-pricing) .product-status-card { padding: 15px; border: 1px solid #d5e1f2; border-radius: 9px; background: #fff; }
:where(.pb-css-pricing) .product-status-card span { display: block; color: var(--pb-muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
:where(.pb-css-pricing) .product-status-card strong { display: block; margin-top: 5px; color: var(--pb-ink); font-size: 17px; line-height: 1.25; }
:where(.pb-css-pricing) .product-section-head { max-width: 760px; }
:where(.pb-css-pricing) .product-section-head h2 { margin: 0; color: var(--pb-ink); font-size: clamp(25px, 4vw, 35px); line-height: 1.08; letter-spacing: -.02em; }
:where(.pb-css-pricing) .product-section-head > p:not(.product-kicker) { margin: 9px 0 0; color: var(--pb-muted); font-size: 15px; line-height: 1.55; }
:where(.pb-css-pricing) .product-panel { padding: clamp(20px, 4vw, 32px); }
:where(.pb-css-pricing) .product-plan-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 20px; }
:where(.pb-css-pricing) .product-plan { min-width: 0; display: grid; grid-template-rows: auto auto 1fr auto; gap: 13px; padding: 20px; box-shadow: none; }
:where(.pb-css-pricing) .product-plan.is-featured { border: 2px solid var(--pb-blue); transform: translateY(-4px); }
:where(.pb-css-pricing) .product-plan h3 { margin: 0; font-size: 23px; }
:where(.pb-css-pricing) .product-plan-price { margin: 0; color: var(--pb-ink); font-size: 29px; font-weight: 850; letter-spacing: -.02em; }
:where(.pb-css-pricing) .product-plan-price small { display: block; margin-top: 4px; color: #6c7c97; font-size: 12px; font-weight: 600; letter-spacing: 0; }
:where(.pb-css-pricing) .product-plan p, :where(.pb-css-pricing) .product-plan li { color: #4e607d; font-size: 13px; line-height: 1.5; }
:where(.pb-css-pricing) .product-plan ul { margin: 0; padding-left: 18px; }
:where(.pb-css-pricing) .product-availability { width: max-content; max-width: 100%; border-radius: 999px; padding: 5px 9px; background: #edf3ff; color: #1746a2; font-size: 11px; font-weight: 800; }
:where(.pb-css-pricing) .product-table-wrap { margin-top: 18px; overflow-x: auto; }
:where(.pb-css-pricing) .product-table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 13px; }
:where(.pb-css-pricing) .product-table th, :where(.pb-css-pricing) .product-table td { padding: 12px; border-bottom: 1px solid var(--pb-line); text-align: left; vertical-align: top; }
:where(.pb-css-pricing) .product-table th { color: var(--pb-muted); font-size: 11px; letter-spacing: .07em; text-transform: uppercase; }
:where(.pb-css-pricing) .product-table td:first-child { color: var(--pb-ink); font-weight: 800; }
:where(.pb-css-pricing) .product-story { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); overflow: hidden; box-shadow: none; }
:where(.pb-css-pricing) .product-story-lead { padding: 24px; background: #102653; color: #fff; }
:where(.pb-css-pricing) .product-story-lead h3 { margin: 7px 0 10px; color: #fff; font-size: 27px; line-height: 1.08; }
:where(.pb-css-pricing) .product-story-lead p { color: rgba(255, 255, 255, .76); line-height: 1.5; }
:where(.pb-css-pricing) .product-story-body { display: grid; gap: 12px; padding: 24px; }
:where(.pb-css-pricing) .product-story-step { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 11px; }
:where(.pb-css-pricing) .product-story-step > span { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; background: #eaf1ff; color: #1746a2; font-weight: 900; }
:where(.pb-css-pricing) .product-story-step h4 { margin: 2px 0 4px; color: var(--pb-ink); font-size: 15px; }
:where(.pb-css-pricing) .product-story-step p { margin: 0; color: var(--pb-muted); font-size: 13px; line-height: 1.5; }
:where(.pb-css-pricing) .product-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 18px; }
:where(.pb-css-pricing) .product-callout { min-width: 0; padding: 18px; box-shadow: none; }
:where(.pb-css-pricing) .product-callout h3 { margin: 0 0 7px; color: var(--pb-ink); font-size: 17px; }
:where(.pb-css-pricing) .product-callout p, :where(.pb-css-pricing) .product-callout li { color: #4e607d; font-size: 13px; line-height: 1.5; }
:where(.pb-css-pricing) .product-callout p { margin: 0; }
:where(.pb-css-pricing) .product-callout ul { margin: 0; padding-left: 18px; }
:where(.pb-css-pricing) .product-disclosure { border-left: 4px solid var(--pb-blue); padding: 13px 15px; background: #f5f8ff; color: #40516f; font-size: 13px; line-height: 1.55; }
:where(.pb-css-pricing) .onboarding-layout { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(280px, .65fr); gap: 16px; align-items: start; }
:where(.pb-css-pricing) .onboarding-stack { display: grid; gap: 16px; }
:where(.pb-css-pricing) .onboarding-progress { height: 9px; overflow: hidden; border-radius: 999px; background: #e7edf7; }
:where(.pb-css-pricing) .onboarding-progress > span { height: 100%; display: block; border-radius: inherit; background: var(--pb-blue); }
:where(.pb-css-pricing) .checklist { display: grid; gap: 9px; margin: 17px 0 0; padding: 0; list-style: none; }
:where(.pb-css-pricing) .checklist li { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 12px; border: 1px solid #e1e9f4; border-radius: 9px; }
:where(.pb-css-pricing) .checklist-mark { width: 25px; height: 25px; display: grid; place-items: center; border-radius: 50%; background: #edf2f8; color: #65748e; font-weight: 900; }
:where(.pb-css-pricing) .checklist li.is-complete .checklist-mark { background: #ddf6e7; color: #13773c; }
:where(.pb-css-pricing) .checklist strong { display: block; color: var(--pb-ink); font-size: 14px; }
:where(.pb-css-pricing) .checklist small { display: block; margin-top: 3px; color: #687994; line-height: 1.35; }
:where(.pb-css-pricing) .setup-form { display: grid; gap: 12px; margin-top: 17px; }
:where(.pb-css-pricing) .setup-form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
:where(.pb-css-pricing) .setup-form label { display: grid; gap: 5px; color: #263a5f; font-size: 12px; font-weight: 800; }
:where(.pb-css-pricing) .setup-form input, :where(.pb-css-pricing) .setup-form select {
  width: 100%;
  min-height: 42px;
  border: 1px solid #cad7e8;
  border-radius: 8px;
  padding: 9px 10px;
  background: #fff;
  color: var(--pb-ink);
  font: inherit;
}
:where(.pb-css-pricing) .limit-list { display: grid; gap: 10px; margin-top: 14px; }
:where(.pb-css-pricing) .limit-row { display: grid; grid-template-columns: 1fr auto; gap: 4px 12px; }
:where(.pb-css-pricing) .limit-row span { color: #40516f; font-size: 13px; }
:where(.pb-css-pricing) .limit-row strong { color: var(--pb-ink); font-size: 13px; }
:where(.pb-css-pricing) .limit-meter { grid-column: 1 / -1; height: 6px; overflow: hidden; border-radius: 999px; background: var(--pb-line); }
:where(.pb-css-pricing) .limit-meter span { display: block; height: 100%; max-width: 100%; background: #78a0ff; }
@media (max-width: 850px) {
  :where(.pb-css-pricing) .product-hero, :where(.pb-css-pricing) .product-story, :where(.pb-css-pricing) .onboarding-layout { grid-template-columns: 1fr; }
  :where(.pb-css-pricing) .product-plan-grid { grid-template-columns: 1fr; }
  :where(.pb-css-pricing) .product-plan.is-featured { transform: none; }
}
@media (max-width: 560px) {
  :where(.pb-css-pricing) .product-grid, :where(.pb-css-pricing) .setup-form-grid { grid-template-columns: 1fr; }
  :where(.pb-css-pricing) .product-hero-copy, :where(.pb-css-pricing) .product-hero-side, :where(.pb-css-pricing) .product-panel, :where(.pb-css-pricing) .product-story-lead, :where(.pb-css-pricing) .product-story-body { padding: 18px; }
  :where(.pb-css-pricing) .product-actions { display: grid; }
  :where(.pb-css-pricing) .product-button { width: 100%; }
  :where(.pb-css-pricing) .checklist li { grid-template-columns: 28px minmax(0, 1fr); }
  :where(.pb-css-pricing) .checklist li > a { grid-column: 2; width: 100%; }
}

/* ---- lead-workspace ---- */
/* Signed-in lead workspace (templates/accounts/lead_workspace.html). */
/* accounts/lead_workspace.html */
:where(.pb-css-lead-workspace) .account-page.lead-workspace-page {
  width: min(1480px, calc(100% - 24px));
}
:where(.pb-css-lead-workspace) .lead-workspace {
  --workspace-ink: #10213f;
  --workspace-muted: #53627a;
  --workspace-line: #dce5f2;
  --workspace-blue: #1746a2;
  --workspace-soft: #f5f8fd;
  width: min(1440px, calc(100% - 32px));
  margin: 24px auto 64px;
  color: var(--workspace-ink);
}
:where(.pb-css-lead-workspace) .workspace-hero, :where(.pb-css-lead-workspace) .workspace-panel, :where(.pb-css-lead-workspace) .workspace-card, :where(.pb-css-lead-workspace) .workspace-activity {
  border: 1px solid var(--workspace-line);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(15, 33, 71, .06);
}
:where(.pb-css-lead-workspace) .workspace-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  padding: clamp(22px, 4vw, 42px);
  background: linear-gradient(135deg, #f8fbff, #edf4ff);
}
:where(.pb-css-lead-workspace) .workspace-hero h1 {
  max-width: 820px;
  margin: 6px 0 10px;
}
:where(.pb-css-lead-workspace) .workspace-hero p {
  max-width: 800px;
  margin: 0;
  color: var(--workspace-muted);
  line-height: 1.6;
}
:where(.pb-css-lead-workspace) .workspace-actions, :where(.pb-css-lead-workspace) .workspace-card-actions, :where(.pb-css-lead-workspace) .workspace-filter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
:where(.pb-css-lead-workspace) .workspace-button, :where(.pb-css-lead-workspace) .workspace-actions a, :where(.pb-css-lead-workspace) .workspace-card-actions a, :where(.pb-css-lead-workspace) .workspace-card-actions button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  border: 1px solid #cbd9ed;
  border-radius: 8px;
  padding: 9px 13px;
  background: #fff;
  color: var(--workspace-blue);
  font: inherit;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
:where(.pb-css-lead-workspace) .workspace-button.primary, :where(.pb-css-lead-workspace) .workspace-card-actions .primary {
  border-color: var(--workspace-blue);
  background: var(--workspace-blue);
  color: #fff;
}
:where(.pb-css-lead-workspace) .workspace-source-limited {
  flex: 1 1 100%;
  padding: 9px 11px;
  border-left: 3px solid #b78624;
  background: #fff8e8;
  color: #665021;
  font-size: 12px;
  line-height: 1.45;
}
:where(.pb-css-lead-workspace) .workspace-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0;
}
:where(.pb-css-lead-workspace) .workspace-metric {
  padding: 18px;
  border: 1px solid var(--workspace-line);
  border-radius: 12px;
  background: #fff;
}
:where(.pb-css-lead-workspace) .workspace-metric span {
  display: block;
  color: var(--workspace-muted);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .04em;
}
:where(.pb-css-lead-workspace) .workspace-metric strong {
  display: block;
  margin-top: 6px;
  font-size: 30px;
}
:where(.pb-css-lead-workspace) .workspace-panel {
  margin: 16px 0;
  padding: 18px;
}
:where(.pb-css-lead-workspace) .workspace-filter-grid, :where(.pb-css-lead-workspace) .workspace-bulk-grid, :where(.pb-css-lead-workspace) .workspace-edit-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 12px;
}
:where(.pb-css-lead-workspace) .workspace-field {
  display: grid;
  gap: 5px;
  min-width: 0;
  color: var(--workspace-muted);
  font-size: 13px;
  font-weight: 800;
}
:where(.pb-css-lead-workspace) .workspace-field input, :where(.pb-css-lead-workspace) .workspace-field select, :where(.pb-css-lead-workspace) .workspace-field textarea {
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  border: 1px solid #cbd7e8;
  border-radius: 8px;
  padding: 9px 10px;
  background: #fff;
  color: var(--workspace-ink);
  font: inherit;
  font-weight: 500;
}
:where(.pb-css-lead-workspace) .workspace-field textarea {
  min-height: 90px;
  resize: vertical;
}
:where(.pb-css-lead-workspace) .workspace-bulk {
  position: sticky;
  top: 8px;
  z-index: 4;
  background: rgba(255, 255, 255, .97);
  backdrop-filter: blur(8px);
}
:where(.pb-css-lead-workspace) .workspace-bulk-head, :where(.pb-css-lead-workspace) .workspace-section-head, :where(.pb-css-lead-workspace) .workspace-card-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}
:where(.pb-css-lead-workspace) .workspace-bulk-head h2, :where(.pb-css-lead-workspace) .workspace-section-head h2, :where(.pb-css-lead-workspace) .workspace-card h2 {
  margin: 0;
}
:where(.pb-css-lead-workspace) .workspace-bulk-grid {
  margin-top: 12px;
  grid-template-columns: 1.2fr repeat(4, 1fr) auto;
  align-items: end;
}
:where(.pb-css-lead-workspace) .workspace-list {
  display: grid;
  gap: 14px;
  margin-top: 16px;
}
:where(.pb-css-lead-workspace) .workspace-card {
  padding: clamp(16px, 3vw, 24px);
}
:where(.pb-css-lead-workspace) .workspace-card.is-unviewed {
  border-left: 5px solid #2c6ee8;
}
:where(.pb-css-lead-workspace) .workspace-select {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: var(--workspace-muted);
  font-size: 13px;
  font-weight: 800;
}
:where(.pb-css-lead-workspace) .workspace-select input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--workspace-blue);
}
:where(.pb-css-lead-workspace) .workspace-kicker {
  margin: 0 0 5px;
  color: var(--workspace-muted);
  font-size: 13px;
  font-weight: 800;
}
:where(.pb-css-lead-workspace) .workspace-card h2 {
  max-width: 900px;
  font-size: clamp(20px, 3vw, 28px);
}
:where(.pb-css-lead-workspace) .workspace-card h2 a {
  color: inherit;
}
:where(.pb-css-lead-workspace) .workspace-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 13px 0;
}
:where(.pb-css-lead-workspace) .workspace-chip {
  display: inline-flex;
  min-height: 27px;
  align-items: center;
  border: 1px solid #d2def0;
  border-radius: 999px;
  padding: 4px 9px;
  background: #f2f6fc;
  color: #26436e;
  font-size: 12px;
  font-weight: 800;
}
:where(.pb-css-lead-workspace) .workspace-chip.viewed {
  border-color: #b9e3d5;
  background: #edfaf5;
  color: #17654c;
}
:where(.pb-css-lead-workspace) .workspace-chip.unviewed, :where(.pb-css-lead-workspace) .workspace-chip.due {
  border-color: #f1d1a7;
  background: #fff6e9;
  color: #8a551a;
}
:where(.pb-css-lead-workspace) .workspace-story {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(220px, .8fr);
  gap: 16px;
  margin: 16px 0;
  padding: 16px;
  border: 1px solid #dce6f4;
  border-radius: 10px;
  background: var(--workspace-soft);
}
:where(.pb-css-lead-workspace) .workspace-intelligence {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid #bfd0e8;
  border-radius: 14px;
  background: #f2f7ff;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-head h3 {
  margin: 2px 0 0;
  font-size: 1.02rem;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-head p, :where(.pb-css-lead-workspace) .workspace-intelligence p {
  margin: 4px 0 0;
  color: var(--workspace-muted);
}
:where(.pb-css-lead-workspace) .workspace-intelligence-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-fact {
  padding: 12px;
  border-radius: 10px;
  background: #fff;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-fact span {
  display: block;
  color: var(--workspace-muted);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
:where(.pb-css-lead-workspace) .workspace-intelligence-fact strong {
  display: block;
  margin-top: 4px;
}
:where(.pb-css-lead-workspace) .workspace-component-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-lead-workspace) .workspace-component-list li {
  padding: 5px 9px;
  border: 1px solid #cbd9eb;
  border-radius: 999px;
  background: #fff;
  font-size: .82rem;
}
:where(.pb-css-lead-workspace) .workspace-story p {
  margin: 4px 0 0;
  color: var(--workspace-muted);
  line-height: 1.55;
}
:where(.pb-css-lead-workspace) .workspace-story dl {
  display: grid;
  gap: 7px;
  margin: 0;
}
:where(.pb-css-lead-workspace) .workspace-story dl div {
  display: grid;
  grid-template-columns: 95px minmax(0, 1fr);
  gap: 8px;
}
:where(.pb-css-lead-workspace) .workspace-story dt {
  color: var(--workspace-muted);
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}
:where(.pb-css-lead-workspace) .workspace-story dd {
  margin: 0;
  overflow-wrap: anywhere;
}
:where(.pb-css-lead-workspace) .workspace-edit-grid {
  margin-top: 16px;
}
:where(.pb-css-lead-workspace) .workspace-note {
  grid-column: span 2;
}
:where(.pb-css-lead-workspace) .workspace-save {
  display: flex;
  justify-content: flex-end;
  margin-top: 12px;
}
:where(.pb-css-lead-workspace) .workspace-empty {
  padding: 34px;
  border: 1px dashed #b9c9df;
  border-radius: 12px;
  text-align: center;
  background: #f8fbff;
}
:where(.pb-css-lead-workspace) .workspace-activity {
  margin-top: 20px;
  padding: 20px;
}
:where(.pb-css-lead-workspace) .workspace-activity ol {
  display: grid;
  gap: 0;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}
:where(.pb-css-lead-workspace) .workspace-activity li {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 14px;
  padding: 11px 0;
  border-top: 1px solid #e5ebf4;
}
:where(.pb-css-lead-workspace) .workspace-activity time {
  color: var(--workspace-muted);
  font-size: 13px;
}
:where(.pb-css-lead-workspace) .workspace-privacy {
  margin: 16px 0 0;
  padding: 12px 14px;
  border-radius: 8px;
  background: #eef5ff;
  color: #36506f;
  font-size: 13px;
  line-height: 1.55;
}
@media (max-width: 980px) {
  :where(.pb-css-lead-workspace) .workspace-hero, :where(.pb-css-lead-workspace) .workspace-story {
    grid-template-columns: 1fr;
  }
  :where(.pb-css-lead-workspace) .workspace-metrics {
    grid-template-columns: repeat(2, 1fr);
  }
  :where(.pb-css-lead-workspace) .workspace-filter-grid, :where(.pb-css-lead-workspace) .workspace-edit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  :where(.pb-css-lead-workspace) .workspace-bulk-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  :where(.pb-css-lead-workspace) .lead-workspace {
    width: min(100% - 20px, 1440px);
    margin-top: 10px;
  }
  :where(.pb-css-lead-workspace) .workspace-metrics, :where(.pb-css-lead-workspace) .workspace-filter-grid, :where(.pb-css-lead-workspace) .workspace-edit-grid, :where(.pb-css-lead-workspace) .workspace-bulk-grid {
    grid-template-columns: 1fr;
  }
  :where(.pb-css-lead-workspace) .workspace-intelligence-grid {
    grid-template-columns: 1fr;
  }
  :where(.pb-css-lead-workspace) .workspace-intelligence-head {
    display: grid;
  }
  :where(.pb-css-lead-workspace) .workspace-note {
    grid-column: auto;
  }
  :where(.pb-css-lead-workspace) .workspace-card-head, :where(.pb-css-lead-workspace) .workspace-section-head, :where(.pb-css-lead-workspace) .workspace-bulk-head {
    display: grid;
  }
  :where(.pb-css-lead-workspace) .workspace-actions > *, :where(.pb-css-lead-workspace) .workspace-card-actions > *, :where(.pb-css-lead-workspace) .workspace-filter-actions > * {
    flex: 1 1 100%;
  }
  :where(.pb-css-lead-workspace) .workspace-activity li {
    grid-template-columns: 1fr;
    gap: 3px;
  }
}

/* ---- this-week ---- */
/* This Week family: /this-week/ and its sections (R4-B). Moved from the renderers'
   inline <style> blocks. Each page block is scoped to its page root with a
   zero-specificity :where(.root), so rules that two pages define differently
   (.ww-nav, .weekly-product-eyebrow, .ww-pages ...) still reach only their page.
   Order is each page's old order: page block(s), week navigation, connections.
   Colour literals equal to a token are written as the token. */

/* ---- Overview (/this-week/): <main class="this-week-v2"> ---- */
  :where(.pb-css-this-week) .this-week-v2 {
    --tw-navy:var(--pb-navy);
    --tw-ink:var(--pb-ink);
    --tw-muted:var(--pb-muted);
    --tw-dim:var(--pb-dim);
    --tw-blue:var(--pb-blue);
    --tw-blue-hover:var(--pb-blue-hover);
    --tw-paper:var(--pb-page);
    --tw-line:#e1e8f3;
    max-width:none;
    padding:0;
    color:var(--tw-ink);
    background:var(--tw-paper);
    font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif;
  }
  :where(.pb-css-this-week) .this-week-v2, :where(.pb-css-this-week) .this-week-v2 *{box-sizing:border-box;min-width:0}
  :where(.pb-css-this-week) :where(.this-week-v2) .ww-nav{display:flex;gap:26px;overflow-x:auto;margin-bottom:12px;border-bottom:1px solid #eef2f9;background:#fff;scrollbar-width:thin}
  :where(.pb-css-this-week) :where(.this-week-v2) .ww-nav a{flex:0 0 auto;padding:13px 0;color:#5a6b8c;text-decoration:none;font-size:13.5px;font-weight:500}
  :where(.pb-css-this-week) :where(.this-week-v2) .ww-nav a[aria-current=page]{color:var(--tw-ink);font-weight:650;box-shadow:inset 0 -2px 0 var(--tw-blue)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-shell{width:100%;max-width:var(--pb-container);margin:0 auto;padding:14px var(--pb-gutter) 42px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-context{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    min-height:28px;
    color:#405477;
    font:500 12px/1.4 "IBM Plex Mono",ui-monospace,monospace;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:end;padding:14px 0 16px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro .eyebrow, :where(.pb-css-this-week) :where(.this-week-v2) .tw-section-kicker{
    display:block;
    margin:0 0 8px;
    color:#405477;
    font:600 12px/1.2 "IBM Plex Mono",ui-monospace,monospace;
    letter-spacing:.055em;
    text-transform:uppercase;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro h1{margin:0;color:var(--tw-navy);font-size:clamp(27px,3vw,36px);line-height:1.08;letter-spacing:-.035em}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro-copy{max-width:760px;margin:10px 0 0;color:#405477;font-size:14px;line-height:1.55}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro-copy strong{color:var(--tw-navy)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions a, :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    border:1px solid #c6d3e8;
    border-radius:8px;
    padding:0 15px;
    color:var(--tw-navy);
    background:#fff;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions a.is-primary{border-color:var(--tw-blue);color:#fff;background:var(--tw-blue)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions a:hover, :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer a:hover{border-color:var(--tw-blue);color:var(--tw-blue)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions a.is-primary:hover{color:#fff;background:var(--tw-blue-hover)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:18px;
    padding:12px 14px;
    border:1px solid #cbd9ef;
    border-radius:10px;
    background:#eaf1ff;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer-copy{display:grid;grid-template-columns:23px minmax(0,1fr);gap:10px;align-items:center}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer-icon{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;border-radius:6px;color:#fff;background:var(--tw-blue);font-size:13px;font-weight:800}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer strong{display:block;color:var(--tw-navy);font-size:12px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer p{margin:2px 0 0;color:#53647e;font-size:12px;line-height:1.4}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-section-head{margin:0 0 10px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-section-head h2{margin:0;color:var(--tw-navy);font-size:16px;line-height:1.2;letter-spacing:-.01em}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:18px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric{
    display:grid;
    align-content:start;
    min-height:124px;
    padding:13px 15px;
    border:1px solid var(--tw-line);
    border-radius:10px;
    color:var(--tw-ink);
    background:#fff;
    box-shadow:0 1px 2px rgba(15,33,71,.04);
    text-decoration:none;
    transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric:hover{border-color:#b8c9e5;transform:translateY(-1px);box-shadow:0 7px 18px rgba(15,33,71,.08)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-state-badge{justify-self:start;border-radius:999px;padding:3px 7px;color:#31517e;background:#edf2f9;font:700 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.025em;text-transform:uppercase}
  :where(.pb-css-this-week) :where(.this-week-v2) [data-edition-open="true"] [data-availability-state="partial"]{border-color:#d8bd66;background:#fffdf5}
  :where(.pb-css-this-week) :where(.this-week-v2) [data-edition-open="true"] [data-availability-state="partial"] .tw-state-badge{color:#654d00;background:#fff1bd}
  :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="not_yet_reported"], :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="coverage_unavailable"], :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="unavailable"]{border-style:dashed;background:#f8faff}
  :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="not_yet_reported"] .tw-state-badge, :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="coverage_unavailable"] .tw-state-badge, :where(.pb-css-this-week) :where(.this-week-v2) [data-availability-state="unavailable"] .tw-state-badge{color:#53647e;background:#e8edf5}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric>strong{color:var(--tw-navy);font-size:31px;line-height:1;letter-spacing:-.045em}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric>strong.is-unavailable{font-size:16px;line-height:1.3;letter-spacing:0}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric-label{margin-top:6px;color:var(--tw-navy);font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric-note{margin-top:5px;color:#64748f;font:500 12px/1.3 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-snapshots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:22px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-card{display:grid;gap:7px;padding:15px;border:1px solid var(--tw-line);border-radius:10px;color:var(--tw-ink);background:#fff;text-decoration:none}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-name{color:#405477;font:700 12px/1.2 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-card>strong{color:var(--tw-navy);font-size:21px;line-height:1.2}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-card>strong.is-unavailable{font-size:16px;line-height:1.3}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-window{color:var(--tw-navy);font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-selection, :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-freshness{color:#64748f;font-size:12px;line-height:1.45}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-freshness{padding-top:6px;border-top:1px solid #edf1f7}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-product-eyebrow, :where(.pb-css-this-week) :where(.this-week-v2) .weekly-source-period, :where(.pb-css-this-week) :where(.this-week-v2) .weekly-assembled, :where(.pb-css-this-week) :where(.this-week-v2) .weekly-period-explanation{margin:0}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-product-eyebrow{color:#405477;font:700 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.055em;text-transform:uppercase}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-source-period{color:var(--tw-navy);font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-assembled, :where(.pb-css-this-week) :where(.this-week-v2) .weekly-period-explanation{color:#5d6d88;font-size:12px;line-height:1.45}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-retained-notice{display:grid;gap:2px;width:100%;padding:9px 11px;border:1px solid #e4c45d;border-radius:8px;color:#5f4800;background:#fff9e5;font-size:12px;line-height:1.4}:where(.pb-css-this-week) :where(.this-week-v2) .weekly-retained-notice strong{color:#4d3a00}:where(.pb-css-this-week) :where(.this-week-v2) .weekly-last-successful{display:inline-flex;border-radius:999px;padding:3px 7px;color:#6b5100;background:#fff2c6;font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.this-week-v2) .weekly-edition-meta{display:grid;gap:3px}:where(.pb-css-this-week) :where(.this-week-v2) .weekly-edition-switcher{display:flex;gap:7px}:where(.pb-css-this-week) :where(.this-week-v2) .weekly-edition-switcher a{border:1px solid #c6d3e8;border-radius:999px;padding:4px 9px;color:#526787;background:#fff;font:700 12px/1.2 "IBM Plex Sans",sans-serif;text-decoration:none}:where(.pb-css-this-week) :where(.this-week-v2) .weekly-edition-switcher a[aria-current=page]{border-color:var(--tw-blue);color:var(--tw-blue);background:#eef4ff}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-data-grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:start}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-panel{min-width:0}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table-wrap{
    overflow:auto;
    border:1px solid var(--tw-line);
    border-radius:10px;
    background:#fff;
    box-shadow:0 1px 2px rgba(15,33,71,.035);
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table{width:100%;border-collapse:collapse;color:#31466b;font-size:12px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table th, :where(.pb-css-this-week) :where(.this-week-v2) .tw-table td{padding:10px 12px;border-bottom:1px solid #e8edf5;text-align:left;vertical-align:top}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table thead th{
    color:#4d6081;
    background:#edf2f9;
    font:600 12px/1.2 "IBM Plex Mono",monospace;
    letter-spacing:.035em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table tbody tr:last-child>*{border-bottom:0}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table tbody th{color:var(--tw-navy);font-weight:700;white-space:nowrap}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table a{color:inherit;text-decoration:none}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-table a:hover{color:var(--tw-blue);text-decoration:underline;text-underline-offset:2px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-county-table td{text-align:center}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-county-table th:first-child{text-align:left}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-county-table .is-strong{color:var(--tw-navy);font-weight:800}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-lead-title{display:block;color:var(--tw-navy)!important;font-size:12px;font-weight:750;line-height:1.35}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-record-meta{display:block;margin-top:4px;color:#63769a;font:500 12px/1.45 "IBM Plex Mono",monospace;overflow-wrap:anywhere}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-record-meta.is-unindexed{color:#7180a0}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-stage{display:inline-flex;border-radius:999px;padding:4px 8px;color:#405477;background:#edf2fa;font-size:12px;font-weight:700;white-space:nowrap}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-stage.is-granted{color:#1d55b1;background:#e9f0ff}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-stage.is-refused{color:#a33f2f;background:#fbece9}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-stage.is-appeal{color:#6550bd;background:#efecff}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-stage.is-commenced{color:#087269;background:#e1f5f1}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-scale{color:#405477;font-weight:650;line-height:1.45}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-empty{padding:24px!important;color:var(--tw-muted);text-align:center!important}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes{border:1px solid var(--tw-line);border-radius:10px;background:#fff;overflow:hidden}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes summary{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:48px;
    padding:0 14px;
    color:var(--tw-navy);
    background:#f8faff;
    font-size:12px;
    font-weight:700;
    cursor:pointer;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes summary span:last-child{color:#7180a0;font:500 12px/1.3 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes>div{padding:13px 15px;color:#53647e;font-size:12px;line-height:1.55}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes ul{margin:0;padding-left:18px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes li+li{margin-top:5px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes p{margin:11px 0 0}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes table{width:100%;border-collapse:collapse}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes th, :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes td{padding:7px;border-bottom:1px solid #e8edf5;text-align:left;vertical-align:top}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes th{color:var(--tw-navy)}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-warning{border-left:3px solid #d99e0b;padding-left:9px}
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-method{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:14px;
    color:#63728c;
    font-size:12px;
  }
  :where(.pb-css-this-week) :where(.this-week-v2) .tw-method a{color:var(--tw-blue);font-weight:700;text-decoration:none}
  :where(.pb-css-this-week) .this-week-v2 a:focus-visible, :where(.pb-css-this-week) .this-week-v2 summary:focus-visible{outline:3px solid rgba(47,111,237,.35);outline-offset:2px}
  @media(max-width:1160px){
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-data-grid{grid-template-columns:1fr}
  }
  @media(max-width:800px){
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro{grid-template-columns:1fr;gap:16px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions{justify-content:flex-start}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-notes-grid{grid-template-columns:1fr}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-source-snapshots{grid-template-columns:1fr}
  }
  @media(max-width:620px){
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-context{align-items:flex-start;flex-direction:column;gap:4px;padding:6px 0}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro{padding-top:10px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-intro h1{font-size:29px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-actions a{padding:0 10px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer{align-items:flex-start}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-longer>a{display:none}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric{min-height:116px;padding:12px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-metric>strong{font-size:28px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-table-wrap{border-radius:8px}
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-method{align-items:flex-start;flex-direction:column;gap:6px}
  }
  @media(max-width:560px){
    :where(.pb-css-this-week) :where(.this-week-v2) .tw-shell{padding-right:var(--pb-gutter-sm);padding-left:var(--pb-gutter-sm)}
  }


/* ---- Applications, grants and commencements: <main class="weekly-records"> ---- */
  :where(.pb-css-this-week) .weekly-records{--ink:#0b1b3a;--text:#24365c;--muted:#7286a8;--line:#e2e9f6;--blue:#3f6fe3;max-width:none;background:#fff;color:var(--text);font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif}:where(.pb-css-this-week) .weekly-records *{box-sizing:border-box;min-width:0}
  :where(.pb-css-this-week) :where(.weekly-records) .ww-shell{width:min(calc(100% - 2 * var(--pb-gutter)),var(--pb-container));margin:0 auto 60px;padding:0 var(--pb-gutter) 30px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(11,27,58,.05)}:where(.pb-css-this-week) :where(.weekly-records) .ww-nav{display:flex;gap:26px;overflow-x:auto;margin:0 -32px;padding:0 32px;border-bottom:1px solid #eef2f9;background:#fff;scrollbar-width:thin}:where(.pb-css-this-week) :where(.weekly-records) .ww-nav a{flex:0 0 auto;padding:13px 0;color:#5a6b8c;text-decoration:none;font-size:13.5px;font-weight:500}:where(.pb-css-this-week) :where(.weekly-records) .ww-nav a[aria-current=page]{color:var(--ink);font-weight:650;box-shadow:inset 0 -2px 0 var(--blue)}
  :where(.pb-css-this-week) :where(.weekly-records) .wc-hero{padding:28px 0 24px}:where(.pb-css-this-week) :where(.weekly-records) .wc-hero h1{max-width:900px;margin:0 0 14px;color:var(--ink);font-size:38px;line-height:1.1;letter-spacing:-.025em}:where(.pb-css-this-week) :where(.weekly-records) .wc-editorial{max-width:74ch;margin:0 0 16px;color:var(--text);font-size:19px;line-height:1.5}:where(.pb-css-this-week) :where(.weekly-records) .wc-facts{display:flex;flex-wrap:wrap;gap:0;color:var(--muted);font:500 12px/1.7 "IBM Plex Mono",monospace;letter-spacing:.035em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wc-facts span+span:before{content:"·";padding:0 8px;color:#a5b2c8}:where(.pb-css-this-week) :where(.weekly-records) .wc-facts strong{color:var(--ink);font-weight:750}:where(.pb-css-this-week) :where(.weekly-records) .wc-empty{padding:24px;color:var(--muted);font-size:13px}
  :where(.pb-css-this-week) :where(.weekly-records) .weekly-product-eyebrow, :where(.pb-css-this-week) :where(.weekly-records) .weekly-source-period, :where(.pb-css-this-week) :where(.weekly-records) .weekly-assembled, :where(.pb-css-this-week) :where(.weekly-records) .weekly-period-explanation{margin:0 0 7px}:where(.pb-css-this-week) :where(.weekly-records) .weekly-product-eyebrow{color:var(--muted);font:700 12px/1 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .weekly-source-period{color:var(--ink);font-size:13px;font-weight:700}:where(.pb-css-this-week) :where(.weekly-records) .weekly-assembled, :where(.pb-css-this-week) :where(.weekly-records) .weekly-period-explanation{color:var(--muted);font-size:12px;line-height:1.45}:where(.pb-css-this-week) :where(.weekly-records) .weekly-retained-notice{display:grid;gap:3px;margin:8px 0 12px;padding:10px 12px;border:1px solid #e4c45d;border-radius:8px;color:#5f4800;background:#fff9e5;font-size:12px;line-height:1.4}:where(.pb-css-this-week) :where(.weekly-records) .weekly-retained-notice strong{color:#4d3a00}:where(.pb-css-this-week) :where(.weekly-records) .weekly-last-successful{display:inline-flex;margin:0 0 8px;border-radius:999px;padding:3px 7px;color:#6b5100;background:#fff2c6;font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.weekly-records) .weekly-edition-meta{display:grid;gap:3px;margin:0 0 8px}:where(.pb-css-this-week) :where(.weekly-records) .weekly-edition-switcher{display:flex;gap:7px;margin:0 0 12px}:where(.pb-css-this-week) :where(.weekly-records) .weekly-edition-switcher a{border:1px solid #c9d6e8;border-radius:999px;padding:4px 9px;color:#526787;background:#fff;font-size:12px;font-weight:700;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .weekly-edition-switcher a[aria-current=page]{border-color:var(--blue);color:var(--blue);background:#eef4ff}
  :where(.pb-css-this-week) :where(.weekly-records) .wm-module{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fafcff}:where(.pb-css-this-week) :where(.weekly-records) .wm-head{display:flex;justify-content:space-between;align-items:baseline;padding:13px 20px;border-bottom:1px solid #e8eef8}:where(.pb-css-this-week) :where(.weekly-records) .wm-head h2{margin:0;color:var(--muted);font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wm-head>span{color:#8b9bb8;font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wm-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}:where(.pb-css-this-week) :where(.weekly-records) .wm-item{display:flex;min-height:158px;flex-direction:column;padding:17px 20px;border-left:1px solid #e8eef8}:where(.pb-css-this-week) :where(.weekly-records) .wm-item:first-child{border-left:0}:where(.pb-css-this-week) :where(.weekly-records) .wm-title{display:block;min-height:42px;color:var(--ink);font-size:13px;line-height:1.35}:where(.pb-css-this-week) :where(.weekly-records) .wm-title a{color:inherit;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .wm-title a:hover{text-decoration:underline;text-underline-offset:2px}:where(.pb-css-this-week) :where(.weekly-records) .wm-attached{margin-top:3px;color:#5a74a3;font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wm-scale{display:flex;align-items:baseline;gap:7px;margin-top:auto}:where(.pb-css-this-week) :where(.weekly-records) .wm-scale strong{color:var(--ink);font-size:32px;line-height:1;letter-spacing:-.02em}:where(.pb-css-this-week) :where(.weekly-records) .wm-scale span{color:#8b9bb8;font:500 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wm-bar{height:5px;margin-top:8px;border-radius:3px;background:#e0e9fa}:where(.pb-css-this-week) :where(.weekly-records) .wm-bar span{display:block;height:100%;border-radius:3px;background:var(--blue)}:where(.pb-css-this-week) :where(.weekly-records) .wm-county{margin-top:8px;color:var(--muted);font:500 12px/1 "IBM Plex Mono",monospace;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions{display:flex;gap:20px;padding:12px 20px;border-top:1px solid #e8eef8;background:#f6f9fe}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions a{color:#2f5fd0;font-size:13px;font-weight:650;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions a+a{padding-left:20px;border-left:1px solid #dbe3f0}
  :where(.pb-css-this-week) :where(.weekly-records) .wc-records{margin-top:26px;padding-top:20px;border-top:2px solid var(--ink)}:where(.pb-css-this-week) :where(.weekly-records) .wc-records-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:12px}:where(.pb-css-this-week) :where(.weekly-records) .wc-records-head h2{margin:0;color:var(--ink);font-size:22px;letter-spacing:-.01em}:where(.pb-css-this-week) :where(.weekly-records) .wc-records-head span{color:var(--muted);font:500 12px/1 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.weekly-records) .ww-filters{display:grid;grid-template-columns:repeat(3,minmax(130px,1fr)) 1.4fr auto;gap:8px;margin-bottom:14px;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafcff}:where(.pb-css-this-week) :where(.weekly-records) .ww-filters.has-matched{grid-template-columns:repeat(4,minmax(120px,1fr)) 1.4fr auto}:where(.pb-css-this-week) :where(.weekly-records) .ww-filters select, :where(.pb-css-this-week) :where(.weekly-records) .ww-filters input{width:100%;height:36px;padding:0 10px;border:1px solid #cbd6e8;border-radius:6px;background:#fff}:where(.pb-css-this-week) :where(.weekly-records) .ww-filters button{height:36px;padding:0 18px;border:0;border-radius:6px;color:#fff;background:var(--blue);font-weight:700}
  :where(.pb-css-this-week) :where(.weekly-records) .ww-list{display:grid;gap:10px}:where(.pb-css-this-week) :where(.weekly-records) .ww-card{padding:18px;border:1px solid var(--line);border-radius:11px;background:#fff}:where(.pb-css-this-week) :where(.weekly-records) .ww-card h3{margin:0 0 5px;color:var(--ink);font-size:17px}:where(.pb-css-this-week) :where(.weekly-records) .ww-meta{display:flex;flex-wrap:wrap;gap:6px 14px;color:#60708b;font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .ww-proposal{margin:12px 0;color:#334665;line-height:1.55}:where(.pb-css-this-week) :where(.weekly-records) .ww-dates{display:flex;flex-wrap:wrap;gap:6px 14px;color:#50617e;font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .ww-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}:where(.pb-css-this-week) :where(.weekly-records) .ww-links a{color:var(--blue);font-weight:700;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .ww-pages{display:flex;gap:8px;justify-content:center;margin-top:20px}:where(.pb-css-this-week) :where(.weekly-records) .ww-pages a, :where(.pb-css-this-week) :where(.weekly-records) .ww-pages span{padding:8px 12px;border:1px solid var(--line);border-radius:7px;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .ww-empty{padding:30px;text-align:center;color:var(--muted)}
  :where(.pb-css-this-week) :where(.weekly-records) .wc-coverage{padding:22px;border:1px solid var(--line);border-radius:10px;background:#fafcff}:where(.pb-css-this-week) :where(.weekly-records) .wc-coverage h2{margin:0 0 8px;color:var(--ink);font-size:20px}:where(.pb-css-this-week) :where(.weekly-records) .wc-coverage p{max-width:78ch;margin:0;color:#425473;line-height:1.55}:where(.pb-css-this-week) :where(.weekly-records) .wc-coverage-link{display:inline-flex;margin-top:14px;color:var(--blue);font-weight:700;text-decoration:none}
  :where(.pb-css-this-week) :where(.weekly-records) .wg-overview{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:26px;align-items:start}:where(.pb-css-this-week) :where(.weekly-records) .wg-band-head{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:11px;border-bottom:2px solid var(--ink);margin-bottom:14px}:where(.pb-css-this-week) :where(.weekly-records) .wg-band-head h2{margin:0;color:var(--ink);font-size:20px;letter-spacing:-.01em}:where(.pb-css-this-week) :where(.weekly-records) .wg-band-head>span{color:#8b9bb8;font:500 12px/1 "IBM Plex Mono",monospace;letter-spacing:.06em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution ol{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row{display:grid;grid-template-columns:minmax(190px,1fr) 150px 100px;align-items:center;gap:14px;padding:7px 0;border-bottom:1px solid #f0f4fb}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row>span:first-child{color:#3c4f74;font-size:13.5px}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row:nth-child(-n+5)>span:first-child{color:var(--ink);font-weight:650}:where(.pb-css-this-week) :where(.weekly-records) .wg-bar{height:6px;border-radius:3px;background:#e0e9fa;overflow:hidden}:where(.pb-css-this-week) :where(.weekly-records) .wg-bar span{display:block;height:100%;border-radius:3px;background:#93b0ee}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row:nth-child(-n+3) .wg-bar span, :where(.pb-css-this-week) :where(.weekly-records) .wg-counties li:nth-child(-n+3) .wg-bar span{background:var(--blue)}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row>strong{text-align:right;color:var(--ink);font:650 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row small{color:#3c4f74;font:500 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution>p{margin:11px 0 0;color:var(--muted);font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wg-side{display:flex;flex-direction:column;gap:18px}:where(.pb-css-this-week) :where(.weekly-records) .wg-panel{padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:#fafcff}:where(.pb-css-this-week) :where(.weekly-records) .wg-panel h2{margin:0 0 12px;color:var(--muted);font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-lead{display:flex;align-items:baseline;gap:8px}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-lead strong{color:var(--ink);font-size:34px;line-height:1}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-lead span{color:var(--blue);font-size:15px;font-weight:650}:where(.pb-css-this-week) :where(.weekly-records) .wg-panel>p{margin:7px 0 0;color:#3c4f74;font-size:13.5px;line-height:1.5}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-bar{height:7px;margin-top:13px;border-radius:4px;background:#e0e9fa}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-bar span{display:block;height:100%;border-radius:4px;background:var(--blue)}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-detail{display:grid;gap:6px;margin:12px 0 0}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-detail div{display:flex;justify-content:space-between;gap:10px}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-detail dt{color:var(--muted);font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wg-condition-detail dd{margin:0;color:var(--ink);font:650 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wg-counties{display:grid;gap:8px;margin:0 0 13px;padding:0 0 12px;border-bottom:1px solid #e8eef8;list-style:none}:where(.pb-css-this-week) :where(.weekly-records) .wg-counties li{display:grid;grid-template-columns:74px 1fr 34px;align-items:center;gap:10px;color:#3c4f74;font-size:13px}:where(.pb-css-this-week) :where(.weekly-records) .wg-counties li:nth-child(-n+3){color:var(--ink);font-weight:650}:where(.pb-css-this-week) :where(.weekly-records) .wg-counties strong{font:650 12px/1 "IBM Plex Mono",monospace;text-align:right}:where(.pb-css-this-week) :where(.weekly-records) .wg-panel>a{color:#2f5fd0;font-size:13px;font-weight:650;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .wg-largest{margin-top:30px}:where(.pb-css-this-week) :where(.weekly-records) .wg-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile{display:flex;min-height:182px;flex-direction:column;gap:9px;padding:16px 18px 17px;border:1px solid var(--line);border-radius:10px;background:#fafcff}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-top{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-title{color:var(--ink);font-size:14px;line-height:1.3}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-title a{color:inherit;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-scale{display:flex;align-items:baseline;gap:7px}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-scale strong{color:var(--ink);font-size:30px;line-height:1;letter-spacing:-.02em}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-scale span{color:#8b9bb8;font:500 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-bar{height:5px;border-radius:3px;background:#e0e9fa}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile-bar span{display:block;height:100%;border-radius:3px;background:var(--blue)}:where(.pb-css-this-week) :where(.weekly-records) .wg-tile p{margin:0;color:#5b6f96;font-size:12px;line-height:1.45}:where(.pb-css-this-week) :where(.weekly-records) .wg-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}:where(.pb-css-this-week) :where(.weekly-records) .wg-table{width:100%;border-collapse:collapse;min-width:960px}:where(.pb-css-this-week) :where(.weekly-records) .wg-table th{padding:11px 16px;background:#f6f9fe;color:var(--muted);font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.07em;text-align:left;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-records) .wg-table td{padding:13px 16px;border-top:1px solid #edf1f7;color:#3c4f74;font-size:12px;vertical-align:top}:where(.pb-css-this-week) :where(.weekly-records) .wg-table td:first-child{width:44%}:where(.pb-css-this-week) :where(.weekly-records) .wg-table td strong, :where(.pb-css-this-week) :where(.weekly-records) .wg-table td span, :where(.pb-css-this-week) :where(.weekly-records) .wg-table td time, :where(.pb-css-this-week) :where(.weekly-records) .wg-table td a{display:block}:where(.pb-css-this-week) :where(.weekly-records) .wg-table td strong{color:var(--ink)}:where(.pb-css-this-week) :where(.weekly-records) .wg-table td:first-child>span{margin:4px 0;color:#6f82a4}:where(.pb-css-this-week) :where(.weekly-records) .wg-table a{margin-top:4px;color:#2f5fd0;font-weight:650;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-records) .wg-decision{display:inline-block!important;padding:3px 5px;border-radius:3px;background:#eaf1ff;color:#2f5fd0}:where(.pb-css-this-week) :where(.weekly-records) .wg-table time{margin-top:5px;color:var(--muted);font:500 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.weekly-records) .wg-table-footer{display:flex;justify-content:space-between;gap:15px;padding:12px 16px;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;background:#f6f9fe;color:var(--muted);font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wg-method{margin-top:20px;border:1px solid var(--line);border-radius:8px;padding:0 14px}:where(.pb-css-this-week) :where(.weekly-records) .wg-method summary{padding:12px 0;color:#5b6f96;font-size:12px;cursor:pointer}:where(.pb-css-this-week) :where(.weekly-records) .wg-method p{max-width:100ch;margin:0 0 12px;color:var(--muted);font-size:12px;line-height:1.6}
  :where(.pb-css-this-week) .weekly-records a:focus-visible, :where(.pb-css-this-week) .weekly-records button:focus-visible, :where(.pb-css-this-week) .weekly-records input:focus-visible, :where(.pb-css-this-week) .weekly-records select:focus-visible, :where(.pb-css-this-week) .weekly-records summary:focus-visible{outline:3px solid rgba(47,111,237,.34);outline-offset:2px}
  @media(max-width:900px){:where(.pb-css-this-week) :where(.weekly-records) .wg-overview{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.weekly-records) .wg-side{display:grid;grid-template-columns:1fr 1fr}:where(.pb-css-this-week) :where(.weekly-records) .wg-tiles{grid-template-columns:1fr 1fr}:where(.pb-css-this-week) :where(.weekly-records) .ww-filters, :where(.pb-css-this-week) :where(.weekly-records) .ww-filters.has-matched{grid-template-columns:1fr 1fr}}
  @media(max-width:620px){:where(.pb-css-this-week) :where(.weekly-records) .ww-shell{width:calc(100% - 2 * var(--pb-gutter-sm));padding:0 var(--pb-gutter-sm) 22px}:where(.pb-css-this-week) :where(.weekly-records) .ww-nav{gap:22px;margin:0 -14px;padding:0 14px}:where(.pb-css-this-week) :where(.weekly-records) .wc-hero{padding-top:22px}:where(.pb-css-this-week) :where(.weekly-records) .wc-hero h1{font-size:32px}:where(.pb-css-this-week) :where(.weekly-records) .wc-editorial{font-size:16px}:where(.pb-css-this-week) :where(.weekly-records) .wc-facts{display:grid;gap:2px}:where(.pb-css-this-week) :where(.weekly-records) .wc-facts span+span:before{display:none}:where(.pb-css-this-week) :where(.weekly-records) .wm-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity}:where(.pb-css-this-week) :where(.weekly-records) .wm-item{flex:0 0 78%;border-left:1px solid #e8eef8;scroll-snap-align:start}:where(.pb-css-this-week) :where(.weekly-records) .wm-item:first-child{border-left:0}:where(.pb-css-this-week) :where(.weekly-records) .wm-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions{gap:10px;overflow-x:auto}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions a{flex:0 0 auto}:where(.pb-css-this-week) :where(.weekly-records) .wm-actions a+a{padding-left:10px}:where(.pb-css-this-week) :where(.weekly-records) .wc-records-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.weekly-records) .wg-side{display:flex}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row{grid-template-columns:minmax(130px,1fr) 70px 75px;gap:8px}:where(.pb-css-this-week) :where(.weekly-records) .wg-distribution-row>span:first-child{font-size:12px}:where(.pb-css-this-week) :where(.weekly-records) .wg-band-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.weekly-records) .wg-tiles{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.weekly-records) .ww-filters, :where(.pb-css-this-week) :where(.weekly-records) .ww-filters.has-matched{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.weekly-records) .ww-card{padding:14px}:where(.pb-css-this-week) :where(.weekly-records) .wg-table-footer{align-items:flex-start;flex-direction:column}}


/* ---- Refusals and appeals (and the refusal history page): <main class="refusal-intelligence ..."> ---- */
  :where(.pb-css-this-week) .refusal-intelligence{--ri-navy:#0b1b3a;--ri-ink:#24365c;--ri-muted:#7286a8;--ri-blue:#3f6fe3;--ri-paper:#fafcff;--ri-line:#e2e9f6;--ri-red:#a33f2f;max-width:none;padding:0;background:#fff;color:var(--ri-ink);font-family:"IBM Plex Sans","Helvetica Neue",Arial,sans-serif}
  :where(.pb-css-this-week) .refusal-intelligence *{box-sizing:border-box;min-width:0}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-shell{width:min(calc(100% - 2 * var(--pb-gutter)),var(--pb-container));margin:0 auto 48px;padding:0 var(--pb-gutter) 28px;border:1px solid var(--ri-line);border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 1px 2px rgba(11,27,58,.05)}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ww-nav{display:flex;gap:26px;overflow-x:auto;margin:0 -32px 26px;padding:0 32px;border-bottom:1px solid #eef2f9;background:#fff;scrollbar-width:thin}:where(.pb-css-this-week) :where(.refusal-intelligence) .ww-nav a{flex:0 0 auto;padding:13px 0;color:#5a6b8c;text-decoration:none;font-size:13.5px;font-weight:500}:where(.pb-css-this-week) :where(.refusal-intelligence) .ww-nav a[aria-current=page]{color:var(--ri-navy);font-weight:650;box-shadow:inset 0 -2px 0 var(--ri-blue)}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin:0 0 18px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-copy{flex:1}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-eyebrow{margin:0 0 10px;color:var(--ri-muted);font:600 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top h1{margin:0;color:var(--ri-navy);font-size:38px;line-height:1.1;letter-spacing:-.025em}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-metrics{display:flex;gap:26px;padding-bottom:4px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-metrics.is-terminal{display:grid;grid-template-columns:repeat(3,max-content);gap:18px 24px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-stat{text-align:right}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-stat strong{display:block;color:var(--ri-navy);font-size:26px;line-height:1;letter-spacing:-.01em}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-stat strong.is-state{max-width:155px;font-size:15px;line-height:1.2}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-stat span{display:block;margin-top:5px;color:var(--ri-muted);font:500 12px/1.4 "IBM Plex Mono",monospace;letter-spacing:.09em;text-transform:uppercase}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-product-eyebrow, :where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-source-period, :where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-assembled, :where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-period-explanation{margin:0 0 7px}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-product-eyebrow{color:var(--ri-muted);font:700 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-source-period{color:var(--ri-navy);font-size:12px;font-weight:700}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-assembled, :where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-period-explanation{color:var(--ri-muted);font-size:12px;line-height:1.45}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-last-successful{display:inline-flex;margin-bottom:7px;border-radius:999px;padding:3px 7px;color:#6b5100;background:#fff2c6;font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-edition-meta{display:grid;gap:3px;margin:0 0 8px}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-edition-switcher{display:flex;gap:7px;margin:0 0 12px}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-edition-switcher a{border:1px solid #c9d6e8;border-radius:999px;padding:4px 9px;color:#526787;background:#fff;font-size:12px;font-weight:700;text-decoration:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .weekly-edition-switcher a[aria-current=page]{border-color:var(--ri-blue);color:var(--ri-blue);background:#eef4ff}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis{display:grid;grid-template-columns:38% 62%;margin:0;border:1px solid var(--ri-line);border-radius:10px;overflow:visible;background:#fff}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-left{padding:20px 24px 22px;border-right:1px solid #e8eef8;background:var(--ri-paper)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-verdict{margin:0 0 16px;color:var(--ri-ink);font-size:15.5px;line-height:1.55}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-reason-facts{display:grid;gap:7px;padding-top:14px;border-top:1px solid #e8eef8}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-reason-facts p{margin:0;color:var(--ri-muted);font:500 12px/1.5 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-reason-facts strong{color:var(--ri-navy)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-pairs{margin-top:16px;padding-top:14px;border-top:1px solid #e8eef8}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-pairs ol{display:grid;gap:5px;margin:0;padding:0;list-style:none;color:#3c4f74;font-size:13px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-pairs strong{color:var(--ri-navy)}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-right{padding:20px 24px 18px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-table-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-table-head .ri-eyebrow{margin:0}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-table-head>span{color:#9aa9c4;font:500 12px/1 "IBM Plex Mono",monospace;letter-spacing:.06em;text-transform:uppercase}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-themes{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme{display:grid;grid-template-columns:20px minmax(0,1fr) 116px 50px;align-items:center;gap:10px;padding:6px 0;border-bottom:1px solid #f0f4fb}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme:last-child{border-bottom:0}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme-rank{color:#9aa9c4;font:500 12px/1 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme-label{color:#3c4f74;font-size:13.5px;line-height:1.3}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme:nth-child(-n+5) .ri-theme-label{color:var(--ri-navy);font-weight:650}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-bar{display:block;height:6px;border-radius:3px;background:#e0e9fa;overflow:hidden}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-bar span{display:block;height:100%;border-radius:3px;background:#93b0ee}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme:nth-child(-n+5) .ri-bar span{background:var(--ri-blue)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme-count{color:var(--ri-navy);font:650 12px/1 "IBM Plex Mono",monospace;text-align:right}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-footer{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-top:12px;padding-top:11px;border-top:1px solid #e8eef8;color:var(--ri-muted);font-size:12.5px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about{position:relative;flex:0 0 auto}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about summary{color:#2f5fd0;font-size:13px;font-weight:650;cursor:pointer}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about-body{position:absolute;z-index:5;right:0;width:min(560px,80vw);padding:14px 16px;border:1px solid var(--ri-line);border-radius:8px;background:#fff;box-shadow:0 12px 30px rgba(11,27,58,.14)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about-body p{margin:0 0 8px;color:#5c6d88;font-size:12px;line-height:1.55}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about-body p:last-child{margin-bottom:0}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-legal{display:grid;gap:5px;margin:9px 0;padding:0;list-style:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-legal li{display:flex;justify-content:space-between;gap:12px;padding:6px 8px;background:var(--ri-paper);font-size:12px}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-records-divider{margin-top:26px;padding-top:20px;border-top:2px solid var(--ri-navy)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-section-head{display:flex;justify-content:space-between;gap:18px;align-items:baseline;margin:0 0 12px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-section-head h2{margin:0;color:var(--ri-navy);font-size:22px;letter-spacing:-.01em}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-section-head p{margin:0;color:var(--ri-muted);font:500 12px/1 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-records{display:grid;gap:9px}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record{display:grid;grid-template-columns:150px minmax(0,1fr) 176px;gap:18px;padding:16px;border:1px solid var(--ri-line);border-radius:10px;background:#fff;box-shadow:0 1px 2px rgba(15,33,71,.035)}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-meta{display:flex;flex-direction:column;gap:7px;color:#667793;font:500 12px/1.4 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-status{align-self:flex-start;border-radius:999px;padding:4px 8px;color:var(--ri-red);background:#fbece9;font:700 12px/1.2 "IBM Plex Sans",sans-serif}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-place{margin:0 0 3px;color:#60708b;font-size:12px;font-weight:650}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record h2{margin:0;font-size:15px;line-height:1.3}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record h2 a{color:var(--ri-navy);text-decoration:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record h2 a:hover{color:var(--ri-blue);text-decoration:underline;text-underline-offset:2px}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-authority{margin:5px 0 0;color:#667793;font:500 12px/1.4 "IBM Plex Mono",monospace}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-proposal{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f7}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-proposal strong{color:#526787;font-size:12px;text-transform:uppercase;letter-spacing:.04em}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-proposal p{margin:4px 0 0;color:#405477;font-size:12px;line-height:1.5}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence{margin-top:9px;padding:9px 10px;border-left:2px solid #c8d8f2;background:#f7faff}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence strong{color:#526787;font-size:12px;text-transform:uppercase;letter-spacing:.04em}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence p, :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence ol{margin:4px 0 0;color:#405477;font-size:12px;line-height:1.5}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence ol{padding-left:18px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence li+li{margin-top:7px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-evidence-source{display:inline-block;margin-top:7px;color:var(--ri-blue);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:2px}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions{display:grid;align-content:start;gap:7px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-action{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 10px;border:1px solid #c9d6e8;border-radius:7px;color:var(--ri-navy);background:#fff;font-size:12px;font-weight:700;text-align:center;text-decoration:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-action.is-primary{border-color:var(--ri-blue);color:#fff;background:var(--ri-blue)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-action.is-disabled{color:#7d8ba2;background:#f4f6fa}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-action:hover{border-color:var(--ri-blue);color:var(--ri-blue)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-action.is-primary:hover{color:#fff;background:#255fd0}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions .weekly-connections{display:grid;align-content:start;gap:7px;margin:0}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions .weekly-connections a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 10px;border:1px solid #c9d6e8;border-radius:7px;color:var(--ri-navy);background:#fff;font-size:12px;font-weight:700;line-height:1.3;text-align:center;text-decoration:none;overflow-wrap:anywhere}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions .weekly-connections a:hover{border-color:var(--ri-blue);color:var(--ri-blue)}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions .weekly-connection-note{color:var(--ri-muted);font-size:12px;line-height:1.45}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-data-notice{padding:18px;border:1px solid #e2b8ae;border-radius:10px;background:#fff7f5;color:#6d2f24}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-data-notice strong{font-size:13px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-data-notice p{margin:6px 0 0;font-size:12px;line-height:1.55}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-method{margin-top:18px;padding:13px 15px;border-left:3px solid var(--ri-blue);color:#566985;background:#eaf1ff;font-size:12px;line-height:1.55}:where(.pb-css-this-week) .refusal-intelligence a:focus-visible, :where(.pb-css-this-week) .refusal-intelligence summary:focus-visible{outline:3px solid rgba(47,111,237,.32);outline-offset:2px}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-edition-links{display:flex;gap:8px;margin:0 0 16px;overflow-x:auto;padding:2px 0 5px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-edition-links a{display:grid;gap:3px;min-width:max-content;padding:9px 11px;border:1px solid var(--ri-line);border-radius:7px;color:var(--ri-navy);background:#fff;text-decoration:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-edition-links a[aria-current=page]{border-color:var(--ri-blue);box-shadow:inset 0 0 0 1px var(--ri-blue)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-edition-links strong{font-size:12px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-edition-links span{color:var(--ri-muted);font:500 12px/1.35 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-filters{display:flex;align-items:center;gap:8px;margin:0 0 12px;padding:10px;border:1px solid var(--ri-line);border-radius:8px;background:#fff}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-filters select{min-height:36px;padding:0 10px;border:1px solid #c9d6e8;border-radius:6px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-filters button{min-height:36px;border:0;border-radius:6px;padding:0 14px;color:#fff;background:var(--ri-blue);font-weight:700}:where(.pb-css-this-week) :where(.refusal-intelligence) .ww-pages{display:flex;justify-content:center;gap:6px;margin-top:16px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ww-pages a, :where(.pb-css-this-week) :where(.refusal-intelligence) .ww-pages span{padding:7px 10px;border:1px solid var(--ri-line);border-radius:6px;text-decoration:none}
  @media(max-width:900px){:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top{align-items:flex-start;flex-direction:column;gap:18px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-metrics{width:100%;justify-content:space-between}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-left{border-right:0;border-bottom:1px solid #e8eef8}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record{grid-template-columns:120px minmax(0,1fr)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}}
  @media(max-width:620px){:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-shell{width:calc(100% - 2 * var(--pb-gutter-sm));padding:0 var(--pb-gutter-sm) 22px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ww-nav{gap:22px;margin:0 -14px 20px;padding:0 14px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top h1{font-size:32px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-metrics{display:grid;grid-template-columns:1fr 1fr;gap:14px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-top-stat{text-align:left}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-left, :where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-right{padding:17px 15px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-table-head>span{display:none}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme{grid-template-columns:18px minmax(115px,1fr) 72px 32px;gap:7px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-theme-label{font-size:12px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-analysis-footer{flex-direction:column;gap:8px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-about-body{right:auto;left:0;width:min(320px,80vw)}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record{grid-template-columns:1fr;gap:10px;padding:14px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-meta{flex-direction:row;align-items:center;flex-wrap:wrap}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-record-actions{grid-column:auto}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-section-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.refusal-intelligence) .ri-filters{align-items:stretch;flex-direction:column}}


/* ---- Appeals: <main class="refusal-intelligence weekly-appeals">; after the refusal rules, as before ---- */
  :where(.pb-css-this-week) .weekly-appeals{--wa-navy:#0b1b3a;--wa-blue:#3f6fe3;--wa-line:#e2e9f6;--wa-muted:#7286a8;--wa-paper:#fafcff}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-hero{padding:2px 0 24px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-hero h1{max-width:900px;margin:0 0 14px;color:var(--wa-navy);font-size:38px;line-height:1.1;letter-spacing:-.025em}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-editorial{max-width:76ch;margin:0 0 16px;color:#24365c;font-size:19px;line-height:1.5}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-facts{display:flex;flex-wrap:wrap;color:var(--wa-muted);font:500 12px/1.7 "IBM Plex Mono",monospace;letter-spacing:.035em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-facts span+span:before{padding:0 8px;color:#a5b2c8;content:"·"}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-facts strong{color:var(--wa-navy);font-weight:750}:where(.pb-css-this-week) :where(.weekly-appeals) .weekly-product-eyebrow, :where(.pb-css-this-week) :where(.weekly-appeals) .weekly-source-period, :where(.pb-css-this-week) :where(.weekly-appeals) .weekly-assembled, :where(.pb-css-this-week) :where(.weekly-appeals) .weekly-period-explanation{margin:0 0 7px}:where(.pb-css-this-week) :where(.weekly-appeals) .weekly-product-eyebrow{color:var(--wa-muted);font:700 12px/1.2 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-appeals) .weekly-source-period{color:var(--wa-navy);font-size:12px;font-weight:700}:where(.pb-css-this-week) :where(.weekly-appeals) .weekly-assembled, :where(.pb-css-this-week) :where(.weekly-appeals) .weekly-period-explanation{color:var(--wa-muted);font-size:12px;line-height:1.45}:where(.pb-css-this-week) :where(.weekly-appeals) .weekly-last-successful{display:inline-flex;margin-bottom:7px;border-radius:999px;padding:3px 7px;color:#6b5100;background:#fff2c6;font-size:12px;font-weight:700}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-freshness{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:17px;padding:9px 12px;border-left:3px solid #c67b20;color:#684813;background:#fff7e7;font-size:12px;line-height:1.45}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-freshness strong{color:#553400}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-freshness span{text-align:right}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary{border:1px solid var(--wa-line);border-radius:10px;overflow:hidden;background:var(--wa-paper)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:13px 20px;border-bottom:1px solid #e8eef8}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-head h2{margin:0;color:var(--wa-muted);font:600 12px/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-head span{color:#8b9bb8;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#fff}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat{min-height:104px;padding:17px 20px;border-left:1px solid #e8eef8}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat:first-child{border-left:0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat strong{display:block;color:var(--wa-navy);font-size:31px;line-height:1;letter-spacing:-.02em}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat span{display:block;margin-top:7px;color:#3c4f74;font-size:12px;font-weight:650}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat small{display:block;margin-top:5px;color:var(--wa-muted);font-size:12px;line-height:1.4}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-counties{padding:17px 20px 18px;border-top:1px solid #e8eef8}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-counties-head{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-bottom:11px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-counties-head h3{margin:0;color:var(--wa-navy);font-size:16px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-counties-head span{color:var(--wa-muted);font:500 12px/1 "IBM Plex Mono",monospace;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bar{display:grid;grid-template-columns:1fr auto;gap:7px;color:var(--wa-navy);font-size:12px;font-weight:700;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bar i{grid-column:1/-1;height:5px;border-radius:5px;background:#e4ebf7;overflow:hidden}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bar i:after{display:block;width:var(--bar);height:100%;border-radius:inherit;background:var(--wa-blue);content:""}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-singletons{margin:12px 0 0;color:#64748b;font-size:12px;line-height:1.55}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-singletons a{color:var(--wa-blue);font-weight:700;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions{display:flex;gap:20px;padding:12px 20px;border-top:1px solid #e8eef8;background:#f6f9fe}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions a{color:#2f5fd0;font-size:13px;font-weight:650;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions a+a{padding-left:20px;border-left:1px solid #dbe3f0}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-records-divider{margin-top:26px;padding-top:20px;border-top:2px solid var(--wa-navy)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-records-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-records-head h2{margin:0;color:var(--wa-navy);font-size:22px;letter-spacing:-.01em}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-records-head span{color:var(--wa-muted);font:500 12px/1 "IBM Plex Mono",monospace}
  :where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-panel{margin-bottom:24px;padding:14px;border:1px solid var(--wa-line);border-radius:10px;background:#fff}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:10px;align-items:end}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter label{display:block;margin-bottom:5px;color:#526787;font:600 12px/1.2 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.04em}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter select{width:100%;min-height:40px;border:1px solid #c9d6e8;border-radius:7px;padding:0 10px;color:var(--wa-navy);background:#fff;font:600 12px/1.2 "IBM Plex Sans",sans-serif}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions{display:flex;gap:7px}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions button, :where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid var(--wa-blue);border-radius:7px;padding:0 13px;color:#fff;background:var(--wa-blue);font-size:12px;font-weight:750;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions a{border-color:#c9d6e8;color:var(--wa-navy);background:#fff}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-section{margin-top:28px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:11px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-kicker{margin:0 0 3px;color:var(--wa-blue);font:700 12px/1.2 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-head h2{margin:0;color:var(--wa-navy);font-size:22px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-status{margin:0;color:#64748b;font-size:12px;text-align:right}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card{min-width:0;padding:18px;border:1px solid #ccd9ea;border-top:4px solid var(--wa-blue);border-radius:10px;background:#fff;box-shadow:0 3px 12px rgba(16,35,71,.06)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-card-top{display:flex;justify-content:space-between;gap:8px;color:#62738d;font:600 12px/1.3 "IBM Plex Mono",monospace;text-transform:uppercase}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-type{color:var(--wa-blue)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-place{margin:16px 0 4px;color:#687894;font-size:12px;font-weight:700}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card h3{margin:0;color:var(--wa-navy);font-size:21px;line-height:1.22;letter-spacing:-.02em;overflow-wrap:anywhere}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card h3 a{color:inherit;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card h3 a:hover{color:var(--wa-blue)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-location{margin:7px 0 0;color:#435875;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-scale{margin:11px 0 0;color:var(--wa-navy);font-size:12px;font-weight:750}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-description{margin:11px 0 0;color:#435875;font-size:12px;line-height:1.55}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-rank-reasons{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-rank-reasons span{padding:4px 7px;border-radius:99px;color:#4e3e9a;background:#efecff;font-size:12px;font-weight:700}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-files{margin-top:14px;padding-top:12px;border-top:1px solid var(--wa-line)}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-case-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-case-list li{display:grid;gap:2px;color:#64748b;font-size:12px;line-height:1.4}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-case-list a{color:var(--wa-blue);font-size:12px;font-weight:750;text-decoration:underline;text-underline-offset:2px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-case-list li>span{overflow-wrap:anywhere}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-due{color:#9a4a1b}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-council{display:flex;align-items:center;gap:6px;margin-top:11px;color:#64748b;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-council-link{color:var(--wa-blue);font-weight:700;text-decoration:underline;text-underline-offset:2px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-link-state{display:block;color:#697a94;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-link-state.is-broken{color:#a13e33;font-weight:750}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-council small, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-table small{display:block;margin-top:3px;color:#7a899e;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-destination-link{display:inline-flex;color:var(--wa-blue);font-size:12px;font-weight:800;line-height:1.35;text-decoration:underline;text-underline-offset:2px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-destination-link.is-compact{align-items:flex-start}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-table-wrap{overflow:hidden;border:1px solid var(--wa-line);border-radius:10px;background:#fff}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table{width:100%;border-collapse:collapse;table-layout:fixed}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table th{padding:9px 10px;color:#60718b;background:#f5f7fb;font:700 12px/1.25 "IBM Plex Mono",monospace;text-align:left;text-transform:uppercase;letter-spacing:.03em}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td{padding:11px 10px;border-top:1px solid #e8edf4;color:#465b79;font-size:12px;line-height:1.4;vertical-align:top;overflow-wrap:anywhere}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td>strong{display:block;color:var(--wa-navy);font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td>strong>a{color:inherit;text-decoration:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td>strong>a:hover{color:var(--wa-blue);text-decoration:underline}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table .wa-case-list{gap:5px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(1){width:27%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(2){width:15%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(3){width:18%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(4){width:18%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(5){width:10%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-material-table th:nth-child(6){width:12%}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid var(--wa-blue);border-radius:7px;padding:0 12px;color:#fff;background:var(--wa-blue);font-size:12px;font-weight:750}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-wrap[hidden]{display:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-table th:nth-child(1){width:37%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-table th:nth-child(2){width:22%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-table th:nth-child(3){width:25%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-table th:nth-child(4){width:16%}
  :where(.pb-css-this-week) :where(.weekly-appeals) .wa-source{margin-top:24px;padding:0 14px;border:1px solid var(--wa-line);border-radius:8px;color:#526581;background:#fff;font-size:12px;line-height:1.55}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-source summary{padding:12px 0;cursor:pointer;color:var(--wa-navy);font-weight:750}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-source p{margin:0 0 12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-national-link{margin:-8px 0 16px;font-size:12px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-national-link a{color:var(--wa-blue);font-weight:700}:where(.pb-css-this-week) .weekly-appeals a:focus-visible, :where(.pb-css-this-week) .weekly-appeals button:focus-visible, :where(.pb-css-this-week) .weekly-appeals select:focus-visible{outline:3px solid rgba(47,111,237,.32);outline-offset:2px}
  @media(max-width:1000px){:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bars{grid-template-columns:repeat(3,minmax(0,1fr))}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filters{grid-template-columns:1fr 1fr}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions{grid-column:1/-1}}
  @media(max-width:700px){:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-grid{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bars{grid-template-columns:1fr 1fr}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table-wrap{border:0;background:transparent}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-table tbody, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-table tr, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td{display:block;width:100%}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table tbody{display:grid;gap:8px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table tr{box-sizing:border-box;padding:5px 12px;border:1px solid var(--wa-line);border-radius:9px;background:#fff}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td{display:grid;grid-template-columns:106px minmax(0,1fr);gap:9px;padding:8px 0;border-top:1px solid #edf1f6}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td:first-child{border-top:0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td:before{color:#718096;font:700 12px/1.4 "IBM Plex Mono",monospace;text-transform:uppercase;content:attr(data-label)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td>*{min-width:0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td .wa-case-list{display:grid}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-status{text-align:left}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-section-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-domestic-toggle{width:100%}}
  @media(max-width:620px){:where(.pb-css-this-week) :where(.weekly-appeals) .wa-hero{padding-top:2px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-hero h1{font-size:32px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-editorial{font-size:16px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-facts{display:grid;gap:2px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-facts span+span:before{display:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-freshness{align-items:flex-start;display:grid;gap:3px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-freshness span{text-align:left}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-head, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-counties-head, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-records-head{align-items:flex-start;flex-direction:column;gap:5px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-grid{display:flex;overflow-x:auto;scroll-snap-type:x proximity}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat{flex:0 0 68%;border-left:1px solid #e8eef8;scroll-snap-align:start}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-stat:first-child{border-left:0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions{gap:10px;overflow-x:auto}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions a{flex:0 0 auto}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-summary-actions a+a{padding-left:10px}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filters{grid-template-columns:1fr}:where(.pb-css-this-week) :where(.weekly-appeals) .ri-filter-actions{grid-column:auto;flex-wrap:wrap}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-county-bars{grid-template-columns:1fr 1fr}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact{display:grid;grid-template-columns:1fr auto;gap:5px 10px;padding:13px;border-top-width:1px;border-left:4px solid var(--wa-blue)}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-card-top{grid-column:1/-1}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-place{margin:5px 0 0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact h3{grid-column:1/-1;font-size:16px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-location{grid-column:1/-1;margin:0}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-description, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-rank-reasons, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-card-actions{display:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-scale, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-featured-files, :where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-council{grid-column:1/-1;margin-top:5px}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-featured-card.is-mobile-compact .wa-case-list li>span{display:none}:where(.pb-css-this-week) :where(.weekly-appeals) .wa-table td{grid-template-columns:94px minmax(0,1fr)}}


/* ---- Week navigation (every This Week page) ---- */
    :where(.pb-css-this-week) .tw-weekly-topbar{display:flex;align-items:stretch;justify-content:space-between;gap:20px;min-width:0;margin:0 0 12px;border-bottom:1px solid #eef2f9;background:#fff}
    :where(.pb-css-this-week) .tw-weekly-topbar>.tw-weekly-section-tabs.ww-nav{display:flex;flex:1 1 auto;gap:26px;min-width:0;margin:0;border:0;overflow-x:auto;overflow-y:hidden;background:transparent;scrollbar-width:thin}
    :where(.pb-css-this-week) .tw-weekly-topbar>.tw-weekly-section-tabs a{flex:0 0 auto;padding:13px 0;color:#5a6b8c;text-decoration:none;font-size:13.5px;font-weight:500;white-space:nowrap}
    :where(.pb-css-this-week) .tw-weekly-topbar>.tw-weekly-section-tabs a[aria-current=page]{color:var(--pb-ink);font-weight:650;box-shadow:inset 0 -2px 0 var(--pb-blue)}
    :where(.pb-css-this-week) .tw-weekly-week-stepper{display:flex;flex:0 0 auto;align-items:center;align-self:center;gap:10px;min-width:max-content;padding:0 0 0 10px;white-space:nowrap}
    :where(.pb-css-this-week) .tw-weekly-week-arrow{display:inline-flex;width:28px;height:28px;flex:0 0 28px;align-items:center;justify-content:center;border:1px solid #d8dde7;border-radius:4px;color:#16213a;background:#fff;font:700 20px/1 Arial,sans-serif;text-decoration:none}
    :where(.pb-css-this-week) .tw-weekly-week-arrow:hover{border-color:#aeb8c8;background:#f8fafc}
    :where(.pb-css-this-week) .tw-weekly-week-arrow:focus-visible{outline:2px solid var(--pb-blue);outline-offset:2px}
    :where(.pb-css-this-week) .tw-weekly-week-arrow.is-disabled{color:#aab2c0;background:#f8f9fb;cursor:default}
    :where(.pb-css-this-week) .tw-weekly-week-label{display:flex;align-items:baseline;gap:8px}
    :where(.pb-css-this-week) .tw-weekly-week-date{color:var(--pb-navy);font:650 14px/1.2 "IBM Plex Sans","Helvetica Neue",Arial,sans-serif}
    :where(.pb-css-this-week) .tw-weekly-week-code{color:#77849a;font:500 12px/1.2 "IBM Plex Mono",ui-monospace,monospace}
    @media(max-width:640px){
      :where(.pb-css-this-week) .tw-weekly-topbar{gap:8px}
      :where(.pb-css-this-week) .tw-weekly-topbar>.tw-weekly-section-tabs.ww-nav{gap:18px;scrollbar-width:none}
      :where(.pb-css-this-week) .tw-weekly-topbar>.tw-weekly-section-tabs.ww-nav::-webkit-scrollbar{display:none}
      :where(.pb-css-this-week) .tw-weekly-week-stepper{gap:6px;padding-left:6px}
      :where(.pb-css-this-week) .tw-weekly-week-label{gap:5px}
      :where(.pb-css-this-week) .tw-weekly-week-date{font-size:12.5px}
      :where(.pb-css-this-week) .tw-weekly-week-code{font-size:12px}
    }
  

/* ---- Weekly record connections (every This Week page) ---- */
:where(.pb-css-this-week) .weekly-connections{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px}
:where(.pb-css-this-week) .weekly-connections a{font-size:12px;line-height:1.6;overflow-wrap:anywhere}
:where(.pb-css-this-week) .weekly-connection-note{font-size:12px;line-height:1.6;color:var(--muted,#62736d);max-width:78ch}
:where(.pb-css-this-week) .weekly-connection-note a{white-space:nowrap}

/* ---- footer ---- */

    /* Font stack = accounts.navigation.SITE_CHROME_FONT_STACK (approved surface). */
    .site-footer {
      display: block;
      width: 100%;
      max-width: none;
      margin: 0;
      padding: 0;
      border: 0;
      background: var(--pb-navy-dark);
      color: #fff;
      font-family: var(--pb-font);
      font-size: 14px;
      line-height: 1.45;
      text-align: left;
      -webkit-font-smoothing: antialiased;
    }
    .site-footer *,
    .site-footer *::before,
    .site-footer *::after { box-sizing: border-box; }
    .site-footer .site-footer-inner {
      width: 100%;
      max-width: var(--pb-container);
      margin: 0 auto;
      padding: 44px var(--pb-gutter) 26px;
    }
    .site-footer .footer-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr)) 1.4fr;
      gap: 28px;
    }
    .site-footer .footer-col h3,
    .site-footer .newsletter h3 {
      margin: 0 0 14px;
      color: #fff;
      font-family: inherit;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.3;
    }
    .site-footer .newsletter h3 { font-size: 16px; }
    .site-footer .footer-links {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 10px;
      margin: 0;
      padding: 0;
    }
    .site-footer a { font-family: inherit; }
    .site-footer .footer-links a,
    .site-footer .footer-legal a {
      color: rgba(255,255,255,.66);
      font-size: 14px;
      font-weight: 400;
      text-decoration: none;
    }
    .site-footer .footer-links a:hover,
    .site-footer .footer-links a:focus-visible,
    .site-footer .footer-legal a:hover,
    .site-footer .footer-legal a:focus-visible { color: #fff; text-decoration: underline; }
    .site-footer .newsletter p {
      margin: 0 0 16px;
      color: rgba(255,255,255,.66);
      font-size: 14px;
    }
    .site-footer .site-footer-cta {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 44px;
      border: 1px solid var(--pb-blue);
      border-radius: 8px;
      padding: 10px 16px;
      background: var(--pb-blue);
      color: #fff;
      font-size: 14px;
      font-weight: 700;
      line-height: 1.2;
      text-decoration: none;
    }
    .site-footer .site-footer-cta:hover,
    .site-footer .site-footer-cta:focus-visible { background: var(--pb-blue-hover); border-color: var(--pb-blue-hover); color: #fff; text-decoration: none; }
    .site-footer .footer-bottom {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: space-between;
      gap: 12px 24px;
      margin-top: 34px;
      padding-top: 20px;
      border-top: 1px solid rgba(255,255,255,.1);
      color: rgba(255,255,255,.5);
      font-size: 13px;
    }
    .site-footer .footer-legal { display: flex; flex-wrap: wrap; gap: 8px 18px; color: rgba(255,255,255,.68); }
    .site-footer .footer-legal a { font-size: 13px; }
    @media (max-width: 920px) {
      .site-footer .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
      .site-footer .newsletter { grid-column: span 2; }
    }
    @media (max-width: 560px) {
      .site-footer .site-footer-inner { padding: 36px var(--pb-gutter-sm) 24px; }
      .site-footer .footer-grid { gap: 26px 18px; }
      .site-footer .footer-bottom { align-items: flex-start; flex-direction: column; }
    }
  