/* ZJS static site shell — v1.3.1 refinement patch */
:root {
  --zjs-black: #101010;
  --zjs-ink: #171717;
  --zjs-paper: #f1f0ea;
  --zjs-paper-cool: #f4f4f1;
  --zjs-concrete: #d7d6cf;
  --zjs-rule: #2a2a28;
  --zjs-muted: #8a8983;
  --zjs-red: #b7261e;
  --zjs-red-dark: #8f1d18;

  /* legacy aliases retained for existing templates */
  --black: var(--zjs-black);
  --ink: var(--zjs-ink);
  --paper: var(--zjs-paper);
  --paper-soft: var(--zjs-paper-cool);
  --line: var(--zjs-concrete);
  --muted: var(--zjs-muted);
  --red: var(--zjs-red);
  --green: #6f8f52;

  --rail-width: 164px;
  --img-root: "/assets/img";
}

* { box-sizing: border-box; }

html { background: var(--zjs-black); scroll-behavior: smooth; }

body {
  margin: 0;
  color: var(--zjs-ink);
  background: var(--zjs-paper);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.5;
  text-rendering: geometricPrecision;
}

a { color: inherit; }

a:focus-visible {
  outline: 2px solid var(--zjs-red);
  outline-offset: 4px;
}

.skip-link {
  position: absolute;
  left: -999px;
  top: 12px;
  z-index: 1000;
  padding: 10px 14px;
  background: var(--zjs-paper-cool);
  color: var(--zjs-black);
  border: 2px solid var(--zjs-black);
  font-family: monospace;
  text-transform: uppercase;
}
.skip-link:focus { left: 12px; }

.site-shell {
  min-height: 100vh;
  display: grid;
  grid-template-columns: var(--rail-width) minmax(0, 1fr);
}

.site-rail {
  position: sticky;
  top: 0;
  height: 100vh;
  background: var(--zjs-black);
  color: var(--zjs-paper);
  padding: 32px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  z-index: 30;
}

.rail-mark {
  display: inline-block;
  align-self: flex-start;
  color: var(--zjs-paper);
  text-decoration: none;
  font-weight: 900;
  font-size: 34px;
  line-height: .9;
  letter-spacing: -0.08em;
  transition: color 140ms ease;
}

.rail-mark:hover,
.rail-mark:focus-visible {
  color: var(--zjs-red);
}

.rail-nav {
  display: grid;
  gap: 16px;
  font-family: monospace;
  text-transform: uppercase;
  font-size: 13px;
}

.rail-nav a {
  display: grid;
  grid-template-columns: 2ch auto;
  column-gap: 10px;
  align-items: baseline;
  width: auto;
  color: var(--zjs-paper);
  text-decoration: none;
  transition: color 140ms ease;
}

.rail-nav a::after { display: none !important; content: none !important; }



.rail-nav a:hover,
.rail-nav a:focus-visible,
.rail-nav a[aria-current="page"] {
  color: var(--zjs-paper-cool);
}

.rail-nav span {
  color: var(--zjs-muted);
  transition: color 140ms ease;
}

.rail-nav a:hover span,
.rail-nav a:focus-visible span,
.rail-nav a[aria-current="page"] span {
  color: var(--zjs-red);
}

.rail-footer {
  font-family: monospace;
  font-size: 12px;
  line-height: 1.25;
  text-transform: uppercase;
  color: #d7d6cf;
}

.site-main {
  min-height: 100vh;
  background: var(--zjs-paper);
}

.eyebrow,
.section-label,
.issue-kicker {
  font-family: monospace;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 12px;
}

.issue-kicker { color: var(--zjs-red); }

/* HOME */
.home-hero {
  min-height: 640px;
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  border-bottom: 1px solid var(--zjs-black);
}

.hero-copy {
  padding: 88px 72px;
  background: var(--zjs-paper-cool);
}

.hero-copy h1 {
  margin: 24px 0;
  font-size: clamp(64px, 8vw, 128px);
  line-height: 0.84;
  letter-spacing: -0.08em;
  text-transform: uppercase;
}

.hero-deck {
  max-width: 460px;
  font-family: monospace;
  font-size: 15px;
  line-height: 1.45;
}

.button-primary {
  display: inline-block;
  margin-top: 28px;
  padding: 14px 28px;
  background: var(--zjs-red);
  color: var(--zjs-paper-cool);
  text-decoration: none;
  font-family: monospace;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  transition: background 140ms ease, transform 140ms ease;
}
.button-primary:hover { background: var(--zjs-red-dark); transform: translateY(-1px); }

.hero-image--home {
  background:
    linear-gradient(90deg, rgba(16,16,16,.05), rgba(16,16,16,.32)),
    url("/assets/img/2026-05-21__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-windows-Landscape__06.jpeg") center center / cover no-repeat;
}

@media (max-width: 820px), (orientation: portrait) {
  .hero-image--home {
    background:
      linear-gradient(90deg, rgba(16,16,16,.05), rgba(16,16,16,.28)),
      url("/assets/img/2026-05-21__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-windows-Portrait__04.jpeg") center center / cover no-repeat;
  }
}

.statement-band {
  min-height: 140px;
  display: grid;
  align-items: center;
  padding: 40px 72px;
  border-bottom: 1px solid var(--zjs-black);
  background: var(--zjs-paper);
}

.statement-band p {
  max-width: 760px;
  margin: 0;
  font-size: clamp(30px, 4vw, 50px);
  line-height: 1;
  letter-spacing: -0.05em;
  font-weight: 800;
}

.feature-row {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  min-height: 300px;
  border-bottom: 1px solid var(--zjs-black);
}

.feature-panel { padding: 56px 72px; }

.feature-dark {
  background: var(--zjs-black);
  color: var(--zjs-paper);
}

.feature-dark h2,
.issue-feature h2 {
  margin: 12px 0;
  font-size: clamp(42px, 5vw, 72px);
  line-height: 0.9;
  letter-spacing: -0.07em;
  text-transform: uppercase;
}

.feature-dark p { max-width: 540px; font-family: monospace; }

.feature-dark a,
.issue-feature a {
  display: inline-block;
  margin-top: 20px;
  font-family: monospace;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid currentColor;
  padding-bottom: 4px;
}

.feature-dark a:hover,
.issue-feature a:hover { color: var(--zjs-red); }

.feature-image--vector {
  background:
    linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,.46)),
    url("/assets/img/2026-05-03__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-building__03.png") center / cover no-repeat;
}

/* VECTOR landing */
.home-hero--v12,
.vector-hero--v12 { min-height: 560px; }

.home-hero--v12 .hero-copy,
.vector-hero--v12 .vector-hero-copy { padding: 88px 72px; }

.home-hero--v12 h1 { max-width: 720px; }

.vector-hero {
  min-height: 420px;
  padding: 72px;
  display: grid;
  align-items: end;
  border-bottom: 1px solid var(--zjs-black);
}

.vector-hero--v12 {
  padding: 0;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  align-items: stretch;
  background: var(--zjs-paper-cool);
  border-bottom: 1px solid var(--zjs-black);
}

.vector-hero--v12 .vector-image {
  min-height: 560px;
  background:
    linear-gradient(90deg, rgba(16,16,16,.04), rgba(16,16,16,.30)),
    url("/assets/img/2026-05-09__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-building__01__1800x2400_01_vector-hero.png") center top / cover no-repeat;
}

.vector-hero h1,
.vector-hero--v12 h1 {
  margin: 24px 0;
  font-size: clamp(76px, 9vw, 142px);
  line-height: .84;
  letter-spacing: -.08em;
  text-transform: uppercase;
}

.issue-feature {
  min-height: 300px;
  padding: 56px 72px;
  border-bottom: 1px solid var(--zjs-black);
  background: var(--zjs-paper);
}

.issue-feature--home-current {
  min-height: 300px;
  background:
    linear-gradient(90deg, rgba(241,240,234,.97), rgba(241,240,234,.80)),
    url("/assets/img/2026-05-03__WEBSITE__zacharyjstevens-site-image-asset__transparent-bg-post-brutalist-right-arrow__01.png") right center / auto 80% no-repeat;
}

.issue-feature--current-signal-bg {
  position: relative;
  overflow: hidden;
  min-height: 360px;
  background:
    linear-gradient(90deg, rgba(16,16,16,.92), rgba(16,16,16,.70) 48%, rgba(16,16,16,.32)),
    url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__vanguard-signal-12_site-width_2400x800.png") right center / cover no-repeat;
  color: var(--zjs-paper-cool);
}

.issue-feature--current-signal-bg .section-label,
.issue-feature--current-signal-bg .issue-kicker {
  color: rgba(244,244,241,.74);
}

.issue-feature--current-signal-bg p:not(.section-label):not(.issue-kicker) { max-width: 760px; }

.issue-feature--current-signal-bg a {
  color: var(--zjs-paper-cool);
  border-bottom-color: rgba(244,244,241,.72);
}

.issue-feature--current-signal-bg a:hover,
.issue-feature--current-signal-bg a:focus-visible {
  color: var(--zjs-red);
  border-bottom-color: var(--zjs-red);
}

.issue-feature--reports {
  background:
    linear-gradient(0deg, rgba(241,240,234,.965), rgba(241,240,234,.965)),
    url("/assets/img/2026-05-03__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-texture-cement__01.png") center / cover no-repeat;
}

.issue-feature--previous-signal-bg {
  position: relative;
  overflow: hidden;
  min-height: 340px;
  background:
    linear-gradient(90deg, rgba(241,240,234,.96), rgba(241,240,234,.86) 48%, rgba(241,240,234,.55)),
    url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__vector-vanguard-design09_site-width_3x1_2400x800_1.png") left center / cover no-repeat;
}

.issue-feature--previous-signal-bg h2 { max-width: 900px; }

.issue-feature--current h2,
.issue-feature--reports h2,
.issue-feature--archive h2 { max-width: 1120px; }

.artifact-list {
  list-style: none;
  padding: 0;
  margin: 28px 0 0;
  display: grid;
  border-top: 1px solid var(--zjs-black);
}

.artifact-list li { border-bottom: 1px solid var(--zjs-black); }

.artifact-list a {
  display: block;
  padding: 18px 0;
  text-decoration: none;
  font-family: monospace;
  text-transform: uppercase;
}

.artifact-list--vsr { border-top: 1px solid var(--zjs-black); margin-top: 28px; }

.artifact-list--vsr a {
  display: grid;
  grid-template-columns: 90px 1fr;
  gap: 18px;
  align-items: baseline;
  padding: 22px 0;
}

.artifact-list--vsr span { color: var(--zjs-red); font-size: 12px; }
.artifact-list a:hover { color: var(--zjs-red); }

.site-footer {
  background: var(--zjs-black);
  color: var(--zjs-paper);
  padding: 22px 72px;
  font-family: monospace;
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.06em;
}

@media (max-width: 980px) {
  :root { --rail-width: 142px; }
  .hero-copy,
  .home-hero--v12 .hero-copy,
  .vector-hero--v12 .vector-hero-copy,
  .statement-band,
  .feature-panel,
  .issue-feature,
  .site-footer { padding-left: 48px; padding-right: 48px; }
}

@media (max-width: 820px) {
  .site-shell { display: block; }

  .site-rail {
    position: relative;
    height: auto;
    padding: 18px 20px;
    flex-direction: row;
    align-items: center;
    gap: 20px;
  }

  .rail-mark { font-size: 28px; }
  .rail-footer { display: none; }
  .rail-nav { display: flex; gap: 16px; }
  .rail-nav a { width: auto; grid-template-columns: 2ch auto; }
  .rail-nav a::after { display: none; }

  .home-hero,
  .feature-row,
  .vector-hero--v12 { grid-template-columns: 1fr; display: block; }

  .home-hero--v12,
  .vector-hero--v12 { min-height: auto; }

  .hero-copy,
  .home-hero--v12 .hero-copy,
  .vector-hero--v12 .vector-hero-copy,
  .statement-band,
  .feature-panel,
  .issue-feature,
  .site-footer {
    padding-left: 24px;
    padding-right: 24px;
  }

  .home-hero { min-height: auto; }
  .hero-image,
  .feature-image { min-height: 260px; }
  .vector-hero--v12 .vector-image { min-height: 260px; }

  .issue-feature--current-signal-bg {
    background:
      linear-gradient(90deg, rgba(16,16,16,.94), rgba(16,16,16,.72)),
      url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__vanguard-signal-12_mobile-landscape_1200x675.png") right center / cover no-repeat;
  }

  .issue-feature--previous-signal-bg {
    background:
      linear-gradient(90deg, rgba(241,240,234,.97), rgba(241,240,234,.85)),
      url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__vector-vanguard-design09_mobile-landscape_1200x675.png") left center / cover no-repeat;
  }

  .artifact-list--vsr a { grid-template-columns: 1fr; gap: 4px; }
}


/* v1.4.1 DFEI integration refinements */
.zjs-red-period { color: var(--zjs-red); }
.feature-row--dispatches .feature-dark h2 { max-width: 760px; }
.feature-image--dfei {
  background:
    linear-gradient(90deg, rgba(0,0,0,.18), rgba(0,0,0,.46)),
    url("/assets/img/2026-05-03__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-building__03.png") center / cover no-repeat;
}
.issue-feature--vs004 {
  background:
    linear-gradient(90deg, rgba(241,240,234,.97), rgba(241,240,234,.84)),
    url("/assets/img/DFEI_page-ribbon_vanguard-signal_no-text.png") right center / auto 105% no-repeat;
}
.site-footer--contact {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
}
.site-footer--contact p { margin: 0; }
.footer-email {
  color: var(--zjs-paper-cool);
  text-decoration: none;
  border-bottom: 1px solid rgba(244,244,241,.52);
  text-transform: none;
  letter-spacing: 0;
}
.footer-email:hover,
.footer-email:focus-visible {
  color: var(--zjs-red);
  border-bottom-color: var(--zjs-red);
}
@media (max-width: 820px) {
  .site-footer--contact { align-items: flex-start; flex-direction: column; gap: 8px; }
  .feature-image--dfei { min-height: 320px; }
}


/* v1.4.2 stabilization patch */
.rail-nav a::after { display: none !important; content: none !important; }
.rail-nav a[aria-current="page"] { color: var(--zjs-paper-cool); }
.rail-nav a[aria-current="page"] span, .rail-nav a:hover span, .rail-nav a:focus-visible span { color: var(--zjs-red); }
.hero-copy h1 .name-line { display:block; }
.hero-copy h1 .name-line--first { white-space: nowrap; }
.feature-row--dispatches .feature-image--dfei { min-height: 320px; }
.dfei-issue-map, .dfei-contents-card, .dfei-report-jump { width:min(calc(100% - 56px), 980px); margin:32px auto; border:1px solid var(--zjs-black); background:var(--zjs-paper-cool); }
.dfei-issue-map__head, .dfei-contents-card__head { padding:18px 22px; border-bottom:1px solid var(--zjs-black); font-family:monospace; text-transform:uppercase; letter-spacing:.08em; color:var(--zjs-red); }
.dfei-issue-map__grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
.dfei-issue-map__grid a { display:block; min-height:140px; padding:24px; border-right:1px solid var(--zjs-black); border-bottom:1px solid var(--zjs-black); text-decoration:none; }
.dfei-issue-map__grid a:nth-child(2n) { border-right:0; }
.dfei-issue-map__grid strong { display:block; margin:8px 0; font-size:clamp(22px,3vw,34px); line-height:.95; letter-spacing:-.04em; text-transform:uppercase; }
.dfei-issue-map__grid span, .dfei-report-jump span { color:var(--zjs-red); font-family:monospace; text-transform:uppercase; font-size:12px; letter-spacing:.06em; }
.dfei-issue-map__grid a:hover { background:var(--zjs-black); color:var(--zjs-paper-cool); }
.dfei-contents-card { padding:0; }
.dfei-contents-card ol { columns:2; column-gap:48px; margin:0; padding:22px 22px 22px 48px; font-family:monospace; text-transform:uppercase; }
.dfei-contents-card li { break-inside:avoid; margin:0 0 8px; }
.dfei-escape-link { display:inline-block; margin-top:18px; font-family:monospace; text-transform:uppercase; border-bottom:1px solid currentColor; text-decoration:none; }
.dfei-escape-link:hover { color:var(--zjs-red); }
.dfei-report-jump { padding:24px; }
.dfei-report-jump ul { list-style:none; margin:12px 0 0; padding:0; display:grid; gap:8px; }
.dfei-report-jump a { font-family:monospace; text-transform:uppercase; }
.page-table .artifact-header--dfei-dark::before { background: linear-gradient(90deg, rgba(16,16,16,.86), rgba(16,16,16,.22)), url("/assets/img/DFEI_ribbon_white-letters-outline-no-fill_red-block_red-field-left.png") left center / cover no-repeat !important; }
.page-table .artifact-header.dfei-masthead { min-height: 420px; }
.artifact-header--vsr::before { background: linear-gradient(90deg, rgba(244,244,241,.10), rgba(244,244,241,.02)), url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__post-brutalist-texture-cement__03.png") center / cover no-repeat !important; }
.artifact-header--vsr .masthead-code-label { color:var(--zjs-ink); background:rgba(244,244,241,.82); }
@media (max-width:820px) {
  .dfei-article-nav { position: sticky !important; top:0; overflow-x:auto; flex-wrap:nowrap; z-index:50; padding-left:0; padding-right:0; }
  .dfei-article-nav a { flex:0 0 auto; min-width:92px; padding:18px 16px; }
  .dfei-issue-map, .dfei-contents-card, .dfei-report-jump { width:calc(100% - 32px); }
  .dfei-issue-map__grid { grid-template-columns:1fr; }
  .dfei-issue-map__grid a { border-right:0; }
  .dfei-contents-card ol { columns:1; }
  .home-hero .hero-copy h1 { font-size: clamp(58px, 17vw, 86px); }
  .feature-row--dispatches .feature-image--dfei { min-height:260px; display:block; }
}


/* v1.4.5 home issue card image + mobile name guard */
.hero-copy h1 .name-line--first { white-space: nowrap; }
.hero-copy h1 .name-line { display:block; }
@media (max-width: 560px) {
  .hero-copy h1 .name-line--first { white-space: normal; }
  .hero-copy h1 .name-line:last-child { white-space: nowrap; }
}

/* v1.4.6.2 home current-package underlay correction
   site-shell is the only stylesheet loaded on the homepage. */
body:not(.page-dfei) .issue-feature.issue-feature--home-current.issue-feature--vs004,
body:not(.page-dfei) section.issue-feature--home-current,
body:not(.page-dfei) .issue-feature--home-current {
  background:
    linear-gradient(90deg, rgba(241,240,234,.98), rgba(241,240,234,.86) 42%, rgba(241,240,234,.54)),
    url("/assets/img/2026-05-06__WEBSITE__zacharyjstevens-site-image-asset__vector-vanguard-design09_site-width_3x1_2400x800_1.png") left center / cover no-repeat !important;
}

/* v1.5.0.2 emergency shell/layout compatibility layer
   Repairs flat VS005/DFEI pages that use body > .site-rail + .site-main
   instead of the legacy .site-shell grid wrapper. */
body > .site-rail {
  position: fixed;
  left: 0;
  top: 0;
  width: var(--rail-width);
  height: 100vh;
  min-height: 100vh;
}

body > .site-main {
  margin-left: var(--rail-width);
  width: calc(100% - var(--rail-width));
  min-height: 100vh;
}

body > .site-rail .rail-logo {
  display: inline-block;
  color: var(--zjs-paper);
  text-decoration: none;
  font-weight: 900;
  font-size: 34px;
  line-height: .9;
  letter-spacing: -0.08em;
}

body > .site-rail nav {
  display: grid;
  gap: 16px;
  font-family: monospace;
  text-transform: uppercase;
  font-size: 13px;
}

body > .site-rail nav a {
  display: grid;
  grid-template-columns: 2ch auto;
  column-gap: 10px;
  align-items: baseline;
  color: var(--zjs-paper);
  text-decoration: none;
  white-space: nowrap;
}

body > .site-rail nav a.active,
body > .site-rail nav a[aria-current="page"] { color: var(--zjs-paper-cool); }
body > .site-rail nav a.active::first-letter,
body > .site-rail nav a[aria-current="page"]::first-letter { color: var(--zjs-red); }

body > .site-rail .rail-foot {
  font-family: monospace;
  font-size: 12px;
  line-height: 1.25;
  text-transform: uppercase;
  color: #d7d6cf;
}

@media (max-width: 820px) {
  body > .site-rail {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 0;
    padding: 18px 20px;
    flex-direction: row;
    align-items: center;
    gap: 20px;
  }

  body > .site-main {
    margin-left: 0;
    width: 100%;
  }

  body > .site-rail .rail-logo { font-size: 28px; }
  body > .site-rail .rail-foot { display: none; }
  body > .site-rail nav { display: flex; gap: 16px; }
  body > .site-rail nav a { display: inline-flex; gap: 8px; width: auto; }
}

/* v1.5.0.7 global shell/current-issue reconciliation */
.site-rail .rail-logo {
  display:inline-block;
  align-self:flex-start;
  color:var(--zjs-paper);
  text-decoration:none;
  font-weight:900;
  font-size:34px;
  line-height:.9;
  letter-spacing:-.08em;
  transition:color 140ms ease;
}
.site-rail .rail-logo:hover,
.site-rail .rail-logo:focus-visible { color: var(--zjs-red); }
.site-rail nav a {
  color: var(--zjs-paper);
  text-decoration:none;
  transition: color 140ms ease;
}
.site-rail nav a.active,
.site-rail nav a[aria-current="page"],
.site-rail nav a:hover,
.site-rail nav a:focus-visible { color: var(--zjs-paper); }
.site-rail nav a.active::first-letter,
.site-rail nav a:hover::first-letter { color: var(--zjs-red); }
/* Preferred rail markup: only the number changes color. */
.rail-nav a:hover,
.rail-nav a:focus-visible,
.rail-nav a[aria-current="page"] { color: var(--zjs-paper) !important; }
.rail-nav a:hover span,
.rail-nav a:focus-visible span,
.rail-nav a[aria-current="page"] span { color: var(--zjs-red) !important; }
.site-rail nav a.active span,
.site-rail nav a[aria-current="page"] span,
.site-rail nav a:hover span,
.site-rail nav a:focus-visible span { color: var(--zjs-red) !important; }
.site-rail nav a.active,
.site-rail nav a[aria-current="page"],
.site-rail nav a:hover,
.site-rail nav a:focus-visible { color: var(--zjs-paper) !important; }

/* v1.5.0.9 shell nav/hover/alignment repair
   Hard normalization for black rail nav: only the numeric token may turn red. */
.site-rail nav a,
.site-rail .rail-nav a {
  color: #f4f4f1 !important;
  text-decoration: none !important;
}
.site-rail nav a .rail-label,
.site-rail .rail-nav a .rail-label {
  color: #f4f4f1 !important;
}
.site-rail nav a span:first-child,
.site-rail .rail-nav a span:first-child,
.site-rail nav a .rail-num,
.site-rail .rail-nav a .rail-num {
  color: rgba(244,244,241,.62) !important;
  transition: color 140ms ease;
}
.site-rail nav a:hover,
.site-rail nav a:focus-visible,
.site-rail nav a.active,
.site-rail nav a[aria-current="page"],
.site-rail .rail-nav a:hover,
.site-rail .rail-nav a:focus-visible,
.site-rail .rail-nav a.active,
.site-rail .rail-nav a[aria-current="page"] {
  color: #f4f4f1 !important;
}
.site-rail nav a:hover .rail-label,
.site-rail nav a:focus-visible .rail-label,
.site-rail nav a.active .rail-label,
.site-rail nav a[aria-current="page"] .rail-label,
.site-rail .rail-nav a:hover .rail-label,
.site-rail .rail-nav a:focus-visible .rail-label,
.site-rail .rail-nav a.active .rail-label,
.site-rail .rail-nav a[aria-current="page"] .rail-label {
  color: #f4f4f1 !important;
}
.site-rail nav a:hover span:first-child,
.site-rail nav a:focus-visible span:first-child,
.site-rail nav a.active span:first-child,
.site-rail nav a[aria-current="page"] span:first-child,
.site-rail .rail-nav a:hover span:first-child,
.site-rail .rail-nav a:focus-visible span:first-child,
.site-rail .rail-nav a.active span:first-child,
.site-rail .rail-nav a[aria-current="page"] span:first-child,
.site-rail nav a:hover .rail-num,
.site-rail nav a:focus-visible .rail-num,
.site-rail nav a.active .rail-num,
.site-rail nav a[aria-current="page"] .rail-num,
.site-rail .rail-nav a:hover .rail-num,
.site-rail .rail-nav a:focus-visible .rail-num,
.site-rail .rail-nav a.active .rail-num,
.site-rail .rail-nav a[aria-current="page"] .rail-num {
  color: #b7261e !important;
}
.site-rail nav a::first-letter,
.site-rail .rail-nav a::first-letter,
.site-rail nav a.active::first-letter,
.site-rail nav a:hover::first-letter,
.site-rail nav a[aria-current="page"]::first-letter,
.site-rail .rail-nav a.active::first-letter,
.site-rail .rail-nav a:hover::first-letter,
.site-rail .rail-nav a[aria-current="page"]::first-letter {
  color: inherit !important;
}
