@charset "UTF-8";
/* ============================================================================
   NAM brand fidelity layer (2026-10-24)
   SOURCE OF TRUTH: edit THIS .scss — brand-layer.css is compiled from it by
   `npm run scss:blocks`. Enqueued LAST on every site by functions/brand-layer.php.

   Why a standalone layer: the live installs run a stale compiled style.css, the
   deployed nam-sections.css diverges from the repo, and ~40 Custom-HTML pages
   carry the old recipes in inline <style> blocks that beat head CSS at equal
   specificity. Every rule here is written to out-rank class-only selectors
   (the `:not(#nam-x)` bump = +1 id) so one file governs every namespace
   (.nam-sec, .nam-policy, .nam-tax, .nam-ops, .nam-member, .nam-cma, .nam-cosma,
   .nam-outlook, .nam-osurvey, .nam-p4, .rtx-*, .md-*) without touching content.
   Native sources (nam-sections.scss, events-calendar.css, dashboard.scss, …)
   carry the same rules so new pages are right even without this layer.

   The rules (brand layer v1):
     1. Neutrals: cool ramp only (#efefef / #f3f5f9 / #e6e6ea). No warm paper.
     2. Accent: bright blue is for links, interactive state and ONE 2px hairline
        mark per section. No terracotta family anywhere (lint-enforced).
     3. Type: no italics in display or quote copy; hierarchy by scale, tracking normal.
     4. No eyebrow / kicker labels above headings (hidden everywhere).
     5. Cards are RULED, not rounded: radius 0, no drop shadow, hairline borders
        draw the grid; hover only on cards that are links (no lift).
     6. Metadata pills: one geometry (perfect pill, sentence case, 2px below body,
        weight 600, more padding — Cameron Alvarez, Jan 2026). Decorative claim
        chips removed.
   Variant switch: `--brand-card-variant: rules` (default, ruled grid) or set
   `--brand-card-variant: top` on <html> to get top-rule-only cards with wide gaps.
============================================================================ */
:root {
  /* $rule-color is a color, so the site :root loop emits it as --wdg-color-rule-color. */
  --wdg-rule-color: var(--wdg-color-rule-color, #d9dbe0);
  --wdg-rule: 1px solid var(--wdg-rule-color);
  --wdg-rule-navy: 1px solid rgba(255, 255, 255, 0.28);
  --wdg-pill-radius: 999px;
  --wdg-card-radius: 0px;
  --brand-accent: var(--wdg-color-secondary, #00a9e0);
  --brand-primary: var(--wdg-color-primary, #0032a0);
  --brand-ink: var(--wdg-color-dark-gray, #414042);
}

/* --------------------------------------------------------------------------
   1. Eyebrows and kickers: not rendered anywhere.
   Section eyebrows above headings are hidden. Card-level kickers that carry
   information (series number, newsletter cadence, agenda chapter) become
   metadata pills (section 3) instead of tracked uppercase text.
   -------------------------------------------------------------------------- */
.eyebrow:not(#nam-x),
.np-eyebrow:not(#nam-x),
.twe-eyebrow:not(#nam-x),
.sp-eyebrow:not(#nam-x),
.feature-cards__eyebrow:not(#nam-x),
.testimonials__eyebrow:not(#nam-x),
.rtx-eyebrow:not(#nam-x),
.mlc-ji__eyebrow:not(#nam-x),
.mrc-eyebrow:not(#nam-x),
.pdf-carousel__eyebrow:not(#nam-x),
.has-kicker-variant.is-eyebrow:not(#nam-x),
.entry-content [class*=__eyebrow]:not(#nam-x),
.entry-content [class*=-eyebrow]:not(#nam-x) {
  display: none !important;
}

/* Editor-authored kicker paragraphs (core "Kicker" style) stay visible but
   drop the tracked-caps treatment: sentence case, normal tracking, muted. */
.kicker:not(#nam-x),
.has-kicker-variant:not(#nam-x) {
  text-transform: none;
  letter-spacing: normal;
  font-weight: 600;
  color: var(--brand-ink);
}

/* Megamenu column headings: structural, not decorative — small grey sentence-case. */
.masthead__dropdown--mega-content .nam-mm-eyebrow:not(#nam-x) {
  text-transform: none;
  letter-spacing: normal;
  font-size: 0.82rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.72);
}

/* Tracked-caps micro labels that are not pills: sentence case + normal tracking. */
.champ-card em:not(#nam-x),
.qc-card__src:not(#nam-x),
.ns-logos__label:not(#nam-x),
.pv-time__date:not(#nam-x),
.ns-bignum__unit:not(#nam-x),
.ns-spotlight__sess-label:not(#nam-x),
.ns-webinar-speaker__body > em:not(#nam-x),
.cmab-card__role:not(#nam-x),
.ctm-row__kicker:not(#nam-x),
.ctm-panel__hint-kicker:not(#nam-x) {
  text-transform: none;
  letter-spacing: normal;
}

.pv-time__date:not(#nam-x) {
  font-size: 0.95rem;
}

/* --------------------------------------------------------------------------
   2. Type: no italic display or quote copy. Emphasis by weight and scale.
   -------------------------------------------------------------------------- */
.pv-quote:not(#nam-x),
.p4-sdesc:not(#nam-x),
.pain-card h3:not(#nam-x),
.ns-proof__src:not(#nam-x),
.pv-source:not(#nam-x),
.testimonials__quote:not(#nam-x),
.testimonials__text:not(#nam-x),
.feature-cards__quote:not(#nam-x),
blockquote.wp-block-quote p:not(#nam-x),
.wp-block-pullquote p:not(#nam-x) {
  font-style: normal !important;
}

.pv-quote:not(#nam-x) {
  font-weight: 500;
  border-left-width: 2px;
  padding-left: 1.4rem;
  line-height: 1.35;
}

/* Attribution reads white on navy (Cameron, Tax review note 3); role muted. */
.pv-quote cite:not(#nam-x) {
  color: #fff;
  letter-spacing: normal;
  font-weight: 700;
}

.pv-quote cite span:not(#nam-x),
.pv-quote cite small:not(#nam-x) {
  font-weight: 400;
  color: rgba(255, 255, 255, 0.78);
}

/* Section headings carry the hierarchy the eyebrow used to signal. */
.nam-sec--thesis h2:not(#nam-x),
.tax-thesis h2:not(#nam-x),
.cma-thesis h2:not(#nam-x),
.cs-thesis h2:not(#nam-x),
.mb-thesis h2:not(#nam-x),
.os-thesis h2:not(#nam-x) {
  font-size: clamp(2.1rem, 3.8vw, 3.1rem);
  letter-spacing: -0.015em;
}

/* Accent line: 72x5 rounded bar -> 56x2 square hairline. One mark per section. */
.accent-line:not(#nam-x),
.has-accent-line:not(#nam-x),
.is-style-accent-line:not(#nam-x) {
  padding-bottom: 0.7rem;
}

.accent-line::after,
.has-accent-line::after,
.is-style-accent-line::after {
  width: 56px !important;
  height: 2px !important;
  border-radius: 0 !important;
}

.nam-sec--thesis h2.accent-line::after,
.ns-center > .wrap > h2.accent-line::after,
.sec-center h2.accent-line::after {
  left: 50%;
  transform: translateX(-50%);
}

/* Gravity-form section-title bar inside the form band: same hairline. */
.ns-formband__form .gsection_title::after {
  height: 2px !important;
  border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   3. Metadata pills: one token set. Perfect pill, sentence case, 2px smaller
   than the adjacent body text, weight 600, more padding, line-height 1.
   -------------------------------------------------------------------------- */
.ns-pill:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
}

.ns-pill--fill:not(#nam-x) {
  background: var(--brand-primary);
  color: #fff;
}

.ns-pill--soft:not(#nam-x) {
  background: var(--wdg-color-primary-wash, #cceef9);
  border-color: var(--wdg-color-primary-wash, #cceef9);
}

.ns-pill--ok:not(#nam-x) {
  background: #e4f5df;
  border-color: #e4f5df;
  color: #2c7f2a;
}

.ns-pill--muted:not(#nam-x) {
  background: var(--wdg-color-white-gray, #efefef);
  border-color: var(--wdg-color-white-gray, #efefef);
  color: var(--brand-ink);
}

/* Card kickers -> informational pills. */
.news-card__kicker:not(#nam-x),
.ns-feature-card__kicker:not(#nam-x),
.ns-spotlight__kicker:not(#nam-x),
.ns-agenda-card__kicker:not(#nam-x),
.path-card__kicker:not(#nam-x),
.rtx-ses__kicker:not(#nam-x),
.mlc-ji__card-label:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
  font-size: 0.78rem;
  margin: 0 0 0.9rem;
}

.rtx-ses__kicker:not(#nam-x) {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, 0.6);
}

/* Status badges that already exist as pills: same geometry. */
.pv-card .now:not(#nam-x),
.nam-ops .pd-badge:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
  font-size: 0.78rem;
  background: #e4f5df;
  border-color: #e4f5df;
  color: #2c7f2a;
  margin-top: 0.9rem;
}

.ns-webinar-session__date:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
  font-size: 0.82rem;
  background: var(--brand-primary);
  border-color: var(--brand-primary);
  color: #fff;
  margin-bottom: 1rem;
}

/* Events calendar: the 2px-radius chips join the pill token. */
.events-calendar-block .event-type-term-pill:not(#nam-x),
.events-calendar-block .event-type-badge__pill:not(#nam-x),
.eventslist-page .event-type-term-pill:not(#nam-x),
.eventslist-page .event-type-badge__pill:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
  font-size: 0.76rem;
  background: var(--brand-primary);
  border-color: var(--brand-primary);
  color: #fff;
  margin-right: 0.4rem;
}

.events-calendar-block .event-type-badge__pill--members:not(#nam-x) {
  background: #fff;
  color: var(--brand-primary);
}

.events-calendar-block .event-type-badge:not(#nam-x),
.eventslist-page .event-type-badge:not(#nam-x) {
  text-transform: none;
  letter-spacing: normal;
  font-size: 0.86rem;
  font-weight: 600;
  color: var(--brand-ink);
}

/* News block chip: pill geometry, navy text on the wash. */
.news .chip:not(#nam-x) {
  display: inline-flex;
  align-items: center;
  gap: 0.35em;
  line-height: 1;
  padding: 0.42em 0.9em;
  border-radius: var(--wdg-pill-radius, 999px);
  border: 1px solid var(--brand-primary);
  background: #fff;
  color: var(--brand-primary);
  font-size: calc(1em - 2px);
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
  white-space: nowrap;
  vertical-align: middle;
  text-decoration: none;
  box-shadow: none;
  font-size: 0.8rem;
  background: var(--wdg-color-primary-wash, #cceef9);
  border-color: var(--wdg-color-primary-wash, #cceef9);
}

/* Archive taxonomy pill + Algolia facet pills keep their per-taxonomy colors
   (configured in Settings); only the geometry is normalized. */
.aside__taxonomy-pill:not(#nam-x),
.archive-listing__facet-pill:not(#nam-x) {
  line-height: 1;
  padding: 0.42em 0.9em;
  font-weight: 600;
  letter-spacing: normal;
  text-transform: none;
}

/* Member dashboard chips: case + padding only (geometry approved 2026-10-24). */
.member-dashboard .md-chip:not(#nam-x),
.member-dashboard .md-badge:not(#nam-x),
.member-dashboard .md-designation:not(#nam-x),
.member-dashboard .cm-tag:not(#nam-x),
.member-dashboard .md-news-tag:not(#nam-x) {
  text-transform: none;
  letter-spacing: normal;
  font-weight: 600;
  line-height: 1;
  padding: 0.42em 0.9em;
}

.member-dashboard .md-news-tag:not(#nam-x) {
  font-size: 0.78rem;
}

/* Decorative claim chips: removed. The claim either becomes a sentence or goes. */
.sol-card__tag:not(#nam-x),
.tax-map__chips:not(#nam-x) {
  display: none !important;
}

/* --------------------------------------------------------------------------
   4. Cards, reimagined as RULED cards. The grid stays (three-up stays
   three-up) but the polite box goes: radius 0, no drop shadow, hairline
   borders draw the grid, hover only on link cards (no lift).
   Technique: each cell carries a 1px border and a -1px right/bottom margin so
   adjacent borders overlap into a single hairline and an incomplete last row
   never shows a stray background block.
   -------------------------------------------------------------------------- */
/* 4a. Blanket: nothing in content that calls itself a card is rounded or shadowed. */
.entry-content [class*=card]:not(.member-dashboard *):not([class*=__play]):not(#nam-x),
.nam-sec [class*=card]:not([class*=__play]):not(#nam-x) {
  border-radius: var(--wdg-card-radius, 0) !important;
  box-shadow: none !important;
}

.entry-content [class*=card]:not(.member-dashboard *):not([class*=__play]):hover:not(#nam-x),
.nam-sec [class*=card]:not([class*=__play]):hover:not(#nam-x) {
  transform: none !important;
  box-shadow: none !important;
}

/* 4b. Ruled grids. */
.pv-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.pv-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.pv-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.pv-grid > a:hover:not(#nam-x),
.pv-grid > a:focus-visible:not(#nam-x),
.pv-grid > button:hover:not(#nam-x),
.pv-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.pv-grid > a:hover h3:not(#nam-x),
.pv-grid > a:hover span:first-of-type:not(#nam-x),
.pv-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.pv-grid--4:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.pv-grid--4 > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.pv-grid--4 > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.pv-grid--4 > a:hover:not(#nam-x),
.pv-grid--4 > a:focus-visible:not(#nam-x),
.pv-grid--4 > button:hover:not(#nam-x),
.pv-grid--4 > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.pv-grid--4 > a:hover h3:not(#nam-x),
.pv-grid--4 > a:hover span:first-of-type:not(#nam-x),
.pv-grid--4 > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.sol-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.sol-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.sol-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.sol-grid > a:hover:not(#nam-x),
.sol-grid > a:focus-visible:not(#nam-x),
.sol-grid > button:hover:not(#nam-x),
.sol-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.sol-grid > a:hover h3:not(#nam-x),
.sol-grid > a:hover span:first-of-type:not(#nam-x),
.sol-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.news-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.news-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.news-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.news-grid > a:hover:not(#nam-x),
.news-grid > a:focus-visible:not(#nam-x),
.news-grid > button:hover:not(#nam-x),
.news-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.news-grid > a:hover h3:not(#nam-x),
.news-grid > a:hover span:first-of-type:not(#nam-x),
.news-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.elig-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.elig-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.elig-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.elig-grid > a:hover:not(#nam-x),
.elig-grid > a:focus-visible:not(#nam-x),
.elig-grid > button:hover:not(#nam-x),
.elig-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.elig-grid > a:hover h3:not(#nam-x),
.elig-grid > a:hover span:first-of-type:not(#nam-x),
.elig-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.path-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.path-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.path-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.path-grid > a:hover:not(#nam-x),
.path-grid > a:focus-visible:not(#nam-x),
.path-grid > button:hover:not(#nam-x),
.path-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.path-grid > a:hover h3:not(#nam-x),
.path-grid > a:hover span:first-of-type:not(#nam-x),
.path-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.paper-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.paper-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.paper-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.paper-grid > a:hover:not(#nam-x),
.paper-grid > a:focus-visible:not(#nam-x),
.paper-grid > button:hover:not(#nam-x),
.paper-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.paper-grid > a:hover h3:not(#nam-x),
.paper-grid > a:hover span:first-of-type:not(#nam-x),
.paper-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ctw-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ctw-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ctw-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ctw-grid > a:hover:not(#nam-x),
.ctw-grid > a:focus-visible:not(#nam-x),
.ctw-grid > button:hover:not(#nam-x),
.ctw-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ctw-grid > a:hover h3:not(#nam-x),
.ctw-grid > a:hover span:first-of-type:not(#nam-x),
.ctw-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ctw-principles__grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ctw-principles__grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ctw-principles__grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ctw-principles__grid > a:hover:not(#nam-x),
.ctw-principles__grid > a:focus-visible:not(#nam-x),
.ctw-principles__grid > button:hover:not(#nam-x),
.ctw-principles__grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ctw-principles__grid > a:hover h3:not(#nam-x),
.ctw-principles__grid > a:hover span:first-of-type:not(#nam-x),
.ctw-principles__grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ns-agenda__grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ns-agenda__grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ns-agenda__grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ns-agenda__grid > a:hover:not(#nam-x),
.ns-agenda__grid > a:focus-visible:not(#nam-x),
.ns-agenda__grid > button:hover:not(#nam-x),
.ns-agenda__grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ns-agenda__grid > a:hover h3:not(#nam-x),
.ns-agenda__grid > a:hover span:first-of-type:not(#nam-x),
.ns-agenda__grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ns-features__grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ns-features__grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ns-features__grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ns-features__grid > a:hover:not(#nam-x),
.ns-features__grid > a:focus-visible:not(#nam-x),
.ns-features__grid > button:hover:not(#nam-x),
.ns-features__grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ns-features__grid > a:hover h3:not(#nam-x),
.ns-features__grid > a:hover span:first-of-type:not(#nam-x),
.ns-features__grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.rc-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.rc-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.rc-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.rc-grid > a:hover:not(#nam-x),
.rc-grid > a:focus-visible:not(#nam-x),
.rc-grid > button:hover:not(#nam-x),
.rc-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.rc-grid > a:hover h3:not(#nam-x),
.rc-grid > a:hover span:first-of-type:not(#nam-x),
.rc-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.res-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.res-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.res-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.res-grid > a:hover:not(#nam-x),
.res-grid > a:focus-visible:not(#nam-x),
.res-grid > button:hover:not(#nam-x),
.res-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.res-grid > a:hover h3:not(#nam-x),
.res-grid > a:hover span:first-of-type:not(#nam-x),
.res-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.tr-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.tr-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.tr-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.tr-grid > a:hover:not(#nam-x),
.tr-grid > a:focus-visible:not(#nam-x),
.tr-grid > button:hover:not(#nam-x),
.tr-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.tr-grid > a:hover h3:not(#nam-x),
.tr-grid > a:hover span:first-of-type:not(#nam-x),
.tr-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.dt-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.dt-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.dt-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.dt-grid > a:hover:not(#nam-x),
.dt-grid > a:focus-visible:not(#nam-x),
.dt-grid > button:hover:not(#nam-x),
.dt-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.dt-grid > a:hover h3:not(#nam-x),
.dt-grid > a:hover span:first-of-type:not(#nam-x),
.dt-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.nt-cards:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.nt-cards > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.nt-cards > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.nt-cards > a:hover:not(#nam-x),
.nt-cards > a:focus-visible:not(#nam-x),
.nt-cards > button:hover:not(#nam-x),
.nt-cards > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.nt-cards > a:hover h3:not(#nam-x),
.nt-cards > a:hover span:first-of-type:not(#nam-x),
.nt-cards > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ntr-resources:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ntr-resources > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ntr-resources > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ntr-resources > a:hover:not(#nam-x),
.ntr-resources > a:focus-visible:not(#nam-x),
.ntr-resources > button:hover:not(#nam-x),
.ntr-resources > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ntr-resources > a:hover h3:not(#nam-x),
.ntr-resources > a:hover span:first-of-type:not(#nam-x),
.ntr-resources > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.reach-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.reach-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.reach-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.reach-grid > a:hover:not(#nam-x),
.reach-grid > a:focus-visible:not(#nam-x),
.reach-grid > button:hover:not(#nam-x),
.reach-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.reach-grid > a:hover h3:not(#nam-x),
.reach-grid > a:hover span:first-of-type:not(#nam-x),
.reach-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.champ-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.champ-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.champ-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.champ-grid > a:hover:not(#nam-x),
.champ-grid > a:focus-visible:not(#nam-x),
.champ-grid > button:hover:not(#nam-x),
.champ-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.champ-grid > a:hover h3:not(#nam-x),
.champ-grid > a:hover span:first-of-type:not(#nam-x),
.champ-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.cmab-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.cmab-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.cmab-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.cmab-grid > a:hover:not(#nam-x),
.cmab-grid > a:focus-visible:not(#nam-x),
.cmab-grid > button:hover:not(#nam-x),
.cmab-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.cmab-grid > a:hover h3:not(#nam-x),
.cmab-grid > a:hover span:first-of-type:not(#nam-x),
.cmab-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.iaw-grid3:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.iaw-grid3 > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.iaw-grid3 > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.iaw-grid3 > a:hover:not(#nam-x),
.iaw-grid3 > a:focus-visible:not(#nam-x),
.iaw-grid3 > button:hover:not(#nam-x),
.iaw-grid3 > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.iaw-grid3 > a:hover h3:not(#nam-x),
.iaw-grid3 > a:hover span:first-of-type:not(#nam-x),
.iaw-grid3 > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ai_tiles:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ai_tiles > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ai_tiles > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ai_tiles > a:hover:not(#nam-x),
.ai_tiles > a:focus-visible:not(#nam-x),
.ai_tiles > button:hover:not(#nam-x),
.ai_tiles > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ai_tiles > a:hover h3:not(#nam-x),
.ai_tiles > a:hover span:first-of-type:not(#nam-x),
.ai_tiles > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.ai_values:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.ai_values > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.ai_values > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.ai_values > a:hover:not(#nam-x),
.ai_values > a:focus-visible:not(#nam-x),
.ai_values > button:hover:not(#nam-x),
.ai_values > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.ai_values > a:hover h3:not(#nam-x),
.ai_values > a:hover span:first-of-type:not(#nam-x),
.ai_values > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.os-econ-grid:not(#nam-x) {
  gap: 0;
  padding: 0 1px 1px 0;
}

.os-econ-grid > *:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
  margin: 0 -1px -1px 0;
  transition: box-shadow 0.15s ease;
}

.os-econ-grid > *:hover:not(#nam-x) {
  transform: none !important;
  border-color: var(--wdg-rule-color);
}

/* Link cards: the top rule turns bright blue and the title underlines. No lift. */
.os-econ-grid > a:hover:not(#nam-x),
.os-econ-grid > a:focus-visible:not(#nam-x),
.os-econ-grid > button:hover:not(#nam-x),
.os-econ-grid > .is-link:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
}

.os-econ-grid > a:hover h3:not(#nam-x),
.os-econ-grid > a:hover span:first-of-type:not(#nam-x),
.os-econ-grid > .is-link:hover h3:not(#nam-x) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

/* Variant B (set --brand-card-variant: top on html): top rule only, wide gaps. */
html[style*="--brand-card-variant: top"] .pv-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .pv-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .pv-grid--4:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .pv-grid--4 > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .sol-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .sol-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .news-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .news-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .elig-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .elig-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .path-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .path-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .paper-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .paper-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ctw-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ctw-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ctw-principles__grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ctw-principles__grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ns-agenda__grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ns-agenda__grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ns-features__grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ns-features__grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .rc-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .rc-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .res-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .res-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .tr-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .tr-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .dt-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .dt-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .nt-cards:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .nt-cards > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ntr-resources:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ntr-resources > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .reach-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .reach-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .champ-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .champ-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .cmab-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .cmab-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .iaw-grid3:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .iaw-grid3 > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ai_tiles:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ai_tiles > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .ai_values:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .ai_values > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}
html[style*="--brand-card-variant: top"] .os-econ-grid:not(#nam-x) {
  gap: 0 2rem;
  padding: 0;
}
html[style*="--brand-card-variant: top"] .os-econ-grid > *:not(#nam-x) {
  border-width: 1px 0 0;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}

/* Green-top principle cards (Competing to Win) and stat cards: 6px cap -> 2px hairline. */
.ctw-principles .pv-card:not(#nam-x),
.ctw-principles__grid > *:not(#nam-x) {
  border-top: 2px solid var(--wdg-color-nam-green, #43b02a);
}

.news-card:not(#nam-x) {
  border-top: 2px solid var(--brand-accent);
}

.sol-card:not(#nam-x) {
  border-top-width: 1px;
}

.nam-sec--linkcards .sol-card:not(#nam-x) {
  border-top: 2px solid var(--wdg-color-nam-green, #43b02a);
}

/* Navy solution cards on the Operational Solutions page keep their fill. */
.nam-ops .sol-grid > *:not(#nam-x) {
  border-color: rgba(255, 255, 255, 0.28);
}

/* Icon tile: the 46px rounded wash square becomes a bare 28px navy icon. */
.pv-card__tag:not(#nam-x),
.pillar__icon:not(#nam-x),
.elig-card__tag:not(#nam-x) {
  width: 28px;
  height: 28px;
  background: transparent !important;
  border-radius: 0 !important;
  color: var(--brand-primary);
  margin-bottom: 1rem;
}

.pv-card__tag svg,
.pillar__icon svg,
.elig-card__tag svg {
  width: 26px;
  height: 26px;
  stroke-width: 1.6;
}

/* Events calendar cards: ruled, hover = blue top rule, no lift. */
.events-calendar-block .event:not(#nam-x),
.eventslist-page .event:not(#nam-x) {
  border: var(--wdg-rule);
  border-radius: 0 !important;
  box-shadow: none !important;
}

.events-calendar-block a.event:hover:not(#nam-x),
.events-calendar-block a.event:focus-visible:not(#nam-x),
.eventslist-page a.event:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
  transform: none !important;
}

/* Feature cards (image on top). */
.ns-feature-card:not(#nam-x) {
  border: var(--wdg-rule);
}

.ns-feature-card--feature:not(#nam-x) {
  border: var(--wdg-rule);
  border-top: 2px solid var(--brand-primary);
  background: #fff;
}

.le-series-hub .ns-feature-card:not(#nam-x) {
  border-top: 2px solid var(--brand-accent);
}

.le-series-hub .ns-feature-card--feature:not(#nam-x) {
  border-top-color: var(--wdg-color-nam-green, #43b02a);
}

/* Video cards, quote cards, FAQ, webinar session, spotlight, offer, segbar. */
.vid-card:not(#nam-x) {
  border: var(--wdg-rule);
}

.vid-card__media:not(#nam-x) {
  box-shadow: none !important;
}

.qc-card:not(#nam-x) {
  border: var(--wdg-rule);
  border-top: 2px solid var(--brand-accent);
}

.nam-sec--faq details:not(#nam-x) {
  border-radius: 0;
  box-shadow: none !important;
}

.nam-sec--faq details[open]:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent) !important;
  border-color: var(--wdg-rule-color);
}

.ns-webinar-session:not(#nam-x) {
  border-radius: 0;
  border-top-width: 2px;
}

.ns-webinar-speaker:not(#nam-x) {
  border-radius: 0;
}

.ns-spotlight:not(#nam-x) {
  border-radius: 0;
  box-shadow: none;
  border: var(--wdg-rule);
  border-top: 2px solid var(--wdg-color-nam-green, #43b02a);
}

.ns-spotlight__sess:not(#nam-x) {
  border-radius: 0;
}

.ns-spotlight__sess:hover:not(#nam-x) {
  box-shadow: inset 0 2px 0 0 var(--brand-accent);
}

.ns-offer__card:not(#nam-x),
.ns-segbar__card:not(#nam-x),
.ns-formband__form:not(#nam-x) {
  border-radius: 0;
  box-shadow: none;
}

.ns-segbar__bar:not(#nam-x) {
  border-radius: 0;
}

.ns-imgsplit__img:not(#nam-x) {
  border-radius: 0;
  box-shadow: none;
}

.ns-embed #im-map:not(#nam-x),
.ns-embed-placeholder:not(#nam-x) {
  border-radius: 0;
}

.ns-agenda__more:not(#nam-x) {
  border-radius: 0;
  border-top: var(--wdg-rule);
  border-bottom: var(--wdg-rule);
  background: transparent;
  padding-left: 0;
  padding-right: 0;
}

.map-grid a:not(#nam-x) {
  border-radius: 0;
}

.map-grid a:hover:not(#nam-x),
.map-grid a:focus-visible:not(#nam-x) {
  transform: none;
  box-shadow: none;
}

/* 4c. Stat bands -> open figures on a hairline left rule, numerals larger. */
.pv-stats:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.pv-stats > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.tax-stats__grid:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.tax-stats__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.mb-stats__grid:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.mb-stats__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.os-stats:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.os-stats > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.oh-statcards:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.oh-statcards > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.ntr-stat-row:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.ntr-stat-row > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.nt-stat-row:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.nt-stat-row > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.ai_outcomes:not(#nam-x) {
  gap: 1.2rem 2rem;
}

.ai_outcomes > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-left: var(--wdg-rule) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0.2rem 0 0.2rem 1.1rem;
  text-align: left;
}

.pv-stat__num:not(#nam-x) {
  font-size: clamp(2.8rem, 4.8vw, 3.8rem);
}

.pv-stat__lbl:not(#nam-x) {
  font-weight: 500;
}

/* 4d. Navy proof bands -> open stat rows with hairline column dividers
   (the Pulse of Quality .poq-proof precedent, generalized). */
.ns-proof__grid:not(#nam-x) {
  gap: 0;
  border-top: var(--wdg-rule-navy);
}

.ns-proof__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-right: var(--wdg-rule-navy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.3rem 1.2rem 1.3rem 0;
  margin-right: 1.2rem;
}

.ns-proof__grid > *:last-child:not(#nam-x) {
  border-right: 0 !important;
  margin-right: 0;
}

.tax-proof__grid:not(#nam-x) {
  gap: 0;
  border-top: var(--wdg-rule-navy);
}

.tax-proof__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-right: var(--wdg-rule-navy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.3rem 1.2rem 1.3rem 0;
  margin-right: 1.2rem;
}

.tax-proof__grid > *:last-child:not(#nam-x) {
  border-right: 0 !important;
  margin-right: 0;
}

.cma-proof__grid:not(#nam-x) {
  gap: 0;
  border-top: var(--wdg-rule-navy);
}

.cma-proof__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-right: var(--wdg-rule-navy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.3rem 1.2rem 1.3rem 0;
  margin-right: 1.2rem;
}

.cma-proof__grid > *:last-child:not(#nam-x) {
  border-right: 0 !important;
  margin-right: 0;
}

.cs-proof__grid:not(#nam-x) {
  gap: 0;
  border-top: var(--wdg-rule-navy);
}

.cs-proof__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-right: var(--wdg-rule-navy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.3rem 1.2rem 1.3rem 0;
  margin-right: 1.2rem;
}

.cs-proof__grid > *:last-child:not(#nam-x) {
  border-right: 0 !important;
  margin-right: 0;
}

.mb-proof__grid:not(#nam-x) {
  gap: 0;
  border-top: var(--wdg-rule-navy);
}

.mb-proof__grid > *:not(#nam-x) {
  background: transparent !important;
  border: 0 !important;
  border-right: var(--wdg-rule-navy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 1.3rem 1.2rem 1.3rem 0;
  margin-right: 1.2rem;
}

.mb-proof__grid > *:last-child:not(#nam-x) {
  border-right: 0 !important;
  margin-right: 0;
}

.proof-card__num:not(#nam-x) {
  color: var(--wdg-color-secondary-light, #66cbec);
}

.proof-card__lbl:not(#nam-x) {
  color: #fff;
}

@media (max-width: 620px) {
  .ns-proof__grid > *:not(#nam-x) {
    border-right: 0 !important;
    border-bottom: var(--wdg-rule-navy) !important;
    margin-right: 0;
    padding: 1rem 0;
  }
  .tax-proof__grid > *:not(#nam-x) {
    border-right: 0 !important;
    border-bottom: var(--wdg-rule-navy) !important;
    margin-right: 0;
    padding: 1rem 0;
  }
  .cma-proof__grid > *:not(#nam-x) {
    border-right: 0 !important;
    border-bottom: var(--wdg-rule-navy) !important;
    margin-right: 0;
    padding: 1rem 0;
  }
  .cs-proof__grid > *:not(#nam-x) {
    border-right: 0 !important;
    border-bottom: var(--wdg-rule-navy) !important;
    margin-right: 0;
    padding: 1rem 0;
  }
  .mb-proof__grid > *:not(#nam-x) {
    border-right: 0 !important;
    border-bottom: var(--wdg-rule-navy) !important;
    margin-right: 0;
    padding: 1rem 0;
  }
}
/* 4e. Timeline: 1px spine with the dots centered on it (Cameron, Tax note 1). */
.pv-time:not(#nam-x) {
  border-left: var(--wdg-rule);
}

.pv-time li::before {
  left: -6px !important;
  top: 7px !important;
  width: 11px !important;
  height: 11px !important;
  border: 0 !important;
  box-shadow: none !important;
  background: var(--brand-accent) !important;
}

/* --------------------------------------------------------------------------
   5. Buttons, links, global chrome (Cameron Alvarez review notes).
   -------------------------------------------------------------------------- */
/* Labels centered, icon never overflows the button (mobile notes 1, 6, 14). */
.wp-block-button__link:not(#nam-x),
.entry-header .header-buttons a:not(#nam-x),
.nam-sec .btn:not(#nam-x) {
  justify-content: center;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

.wp-block-button__link svg,
.entry-header .header-buttons a svg,
.nam-sec .btn svg {
  flex: 0 0 auto;
}

/* No border change on hover (Kitchen Sink note 8). */
.nam-sec .btn--primary:hover:not(#nam-x) {
  border-color: var(--brand-accent);
}

.nam-sec .btn--navy-ghost:hover:not(#nam-x) {
  border-color: var(--brand-primary);
}

/* Every clickable inline link is underlined (Kitchen Sink note 5). Navigation
   links (sub-nav pills, tab bars, button rows) are controls, not inline links. */
.entry-content a:not([class]):not(nav *):not(.nam-sec--subnav *):not(.ns-subnav__in *):not([class*=tab] *):not(.wp-block-buttons *):not(.member-dashboard *):not(.ns-btnrow *):not(#nam-x),
.entry-content li a:not([class]):not(nav *):not(.nam-sec--subnav *):not(.ns-subnav__in *):not([class*=tab] *):not(.wp-block-buttons *):not(.member-dashboard *):not(.ns-btnrow *):not(#nam-x),
.entry-content td a:not([class]):not(nav *):not(.nam-sec--subnav *):not(.ns-subnav__in *):not([class*=tab] *):not(.wp-block-buttons *):not(.member-dashboard *):not(.ns-btnrow *):not(#nam-x),
.entry-content dd a:not([class]):not(nav *):not(.nam-sec--subnav *):not(.ns-subnav__in *):not([class*=tab] *):not(.wp-block-buttons *):not(.member-dashboard *):not(.ns-btnrow *):not(#nam-x) {
  text-decoration-line: underline;
  text-decoration-color: var(--wdg-color-link-hover, var(--brand-accent));
  text-decoration-thickness: 1.5px;
  text-underline-offset: 0.14em;
}

/* Advance-page hero: tighter top spacing (Kitchen Sink note 2). Mirrors the
   _page-header.scss change for installs whose compiled style.css is stale. */
.entry-header.alignfull:has(.header-content__row):not(#nam-x) {
  padding-top: calc(var(--wdg-gap-xsmall) * 8);
}

@media (min-width: 75em) {
  .entry-header.alignfull:has(.header-content__row):not(#nam-x) {
    padding-top: calc(var(--wdg-gap-xxlarge) * 1.2);
  }
}
/* Narrow viewports: the M mark the wordmark collapses to is scaled down
   (Kitchen Sink note 10); the hero title's accent line is dropped (Trade mobile note 2). */
@media (max-width: 62em) {
  .masthead .site-logo:not(#nam-x) {
    max-height: 44px;
  }
}
@media (max-width: 40em) {
  .entry-header .entry-title.has-accent-line::after {
    display: none !important;
  }
}
/* Homepage "Our Work" explorer tiles: the collapsed 5-up tile clipped its title
   ("Operationa", "Developme") — scale the title with the viewport, cap at h2. */
.c-issue-explorer__issue-title:not(#nam-x) {
  font-size: clamp(1.1rem, 2.2vw, var(--wdg-font-size-h2));
  overflow-wrap: anywhere;
}

/* One heading color on light backgrounds (Homepage review note 16): section
   titles on wash/gray bands use the theme heading navy, not body gray. */
.has-primary-wash-background-color h2:not(#nam-x),
.has-bright-blue-xlight-background-color h2:not(#nam-x),
.has-white-gray-background-color h2:not(#nam-x),
.has-cool-gray-xlight-background-color h2:not(#nam-x) {
  color: var(--wdg-color-heading, var(--brand-primary));
}

/* Mobile "Our Work" tiles: the whole tile is the link, not just "Learn more"
   (Homepage mobile note 3). Stretched-link pseudo; desktop keeps hover-expand. */
@media (max-width: 64em) {
  .c-issue-explorer__issue:not(#nam-x) {
    position: relative;
  }
  /* The link's containing block is .issue-content (positioned); reach up over
     the gradient zone above it (margin-block-start 11.11rem) so the tap
     target is the labelled part of the tile. The tile's overflow:hidden clips it. */
  .c-issue-explorer__issue-link::after {
    content: "";
    position: absolute;
    inset: -11.1111rem 0 0 0;
    z-index: 3;
  }
}
/* Back to top: thin white stroke instead of the glow (Homepage review note 18). */
#back-to-top:not(#nam-x) {
  box-shadow: none;
  border: 1px solid #fff;
}

/* Footer list links in light blue for contrast on navy (Homepage mobile note 9). */
.site-footer .footer_list_nav a:not(#nam-x) {
  color: var(--wdg-color-secondary-light, #66cbec) !important;
}

/* Hairline rules everywhere a divider used to be a bar (Homepage review notes 6, 11, 17, 19). */
.entry-content hr:not(#nam-x),
.wp-block-separator:not(#nam-x) {
  border: 0;
  border-top: var(--wdg-rule);
  height: 0;
  opacity: 1;
  background: transparent;
}

.pv-checklist li:not(#nam-x) {
  border-bottom: var(--wdg-rule);
}

/* Mobile gutter floor: text never kisses the viewport edge (Trade mobile note 10). */
@media (max-width: 640px) {
  .nam-sec .wrap:not(#nam-x),
  .entry-content .wrap:not(#nam-x),
  .entry-content > .wp-block-group:not(.alignfull):not(#nam-x) {
    padding-left: max(20px, env(safe-area-inset-left));
    padding-right: max(20px, env(safe-area-inset-right));
  }
  /* Breathing room between the hero CTA row and the first section (mobile notes 5, 11). */
  .entry-header .header-buttons:not(#nam-x) {
    margin-bottom: 1.25rem;
  }
}
/* Reduced motion: nothing here animates anyway, but be explicit. */
@media (prefers-reduced-motion: reduce) {
  .entry-content [class*=card]:not(#nam-x) {
    transition: none !important;
  }
}

/*# sourceMappingURL=brand-layer.css.map */
