:root {
  --navy: #07182b;
  --navy-2: #0d233b;
  --blue: #174f7d;
  --red: #9e2a2b;
  --red-bright: #c53737;
  --gold: #c7a558;
  --ink: #14202b;
  --muted: #5d6975;
  --paper: #f6f4ef;
  --white: #ffffff;
  --line: #d8dde2;
  --max: 1200px;
}

* { box-sizing: border-box; }

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: "Inter", Arial, sans-serif;
  color: var(--ink);
  background: var(--paper);
  line-height: 1.55;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

.container {
  width: min(calc(100% - 48px), var(--max));
  margin-inline: auto;
}

/* Header */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(7, 24, 43, .97);
  border-bottom: 1px solid rgba(255,255,255,.08);
  backdrop-filter: blur(10px);
}

.header-inner {
  width: min(calc(100% - 48px), 1320px);
  min-height: 84px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}

.brand {
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--white);
}

.brand img {
  width: 58px;
  height: 58px;
  object-fit: cover;
  object-position: 50% 43%;
  border-radius: 4px;
}

.brand-name {
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 800;
  line-height: 1.25;
}

.primary-nav {
  display: flex;
  align-items: center;
  gap: 26px;
}

.primary-nav a {
  position: relative;
  padding: 31px 0 27px;
  color: rgba(255,255,255,.82);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  transition: color .2s ease;
}

.primary-nav a:hover,
.primary-nav a.active {
  color: var(--white);
}

.primary-nav a.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px;
  height: 2px;
  background: var(--red-bright);
}

.nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  padding: 10px;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.nav-toggle span {
  display: block;
  height: 2px;
  background: white;
  margin: 6px 0;
}

/* Type */
.eyebrow {
  margin: 0 0 14px;
  color: rgba(255,255,255,.72);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.eyebrow.dark { color: var(--blue); }

h1, h2, h3, p { margin-top: 0; }

h1, h2, h3 {
  font-family: "Libre Franklin", "Inter", sans-serif;
  letter-spacing: -.045em;
}

.section {
  padding: 110px 0;
}

/* Hero */
.hero {
  position: relative;
  min-height: 700px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--navy);
}

.hero-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3,13,24,.93) 0%, rgba(3,13,24,.76) 43%, rgba(3,13,24,.23) 70%, rgba(3,13,24,.25) 100%),
    linear-gradient(0deg, rgba(3,13,24,.62), rgba(3,13,24,0) 42%);
}

.hero-content {
  position: relative;
  z-index: 3;
  padding: 110px 0 120px;
}

.hero h1 {
  max-width: 870px;
  margin: 0 0 28px;
  color: var(--white);
  font-size: clamp(48px, 6vw, 82px);
  line-height: .98;
  font-weight: 900;
}

.hero h1 span {
  color: #f4d37f;
}

.hero-copy {
  max-width: 760px;
  margin-bottom: 34px;
  color: rgba(255,255,255,.84);
  font-size: 19px;
  line-height: 1.65;
}

.hero-rule {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 6px;
  background: linear-gradient(90deg, var(--red) 0 26%, var(--gold) 26% 38%, transparent 38%);
}

.button {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-height: 50px;
  padding: 0 22px;
  border: 1px solid transparent;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: all .2s ease;
}

.button-light {
  background: var(--white);
  color: var(--navy);
}

.button-light:hover {
  background: #f4d37f;
}

.button-outline {
  border-color: rgba(255,255,255,.5);
  color: white;
}

.button-outline:hover {
  background: white;
  color: var(--navy);
}

/* Numbers */
.numbers {
  background: var(--paper);
}

.section-heading {
  max-width: 760px;
  margin-bottom: 54px;
}

.section-heading h2 {
  font-size: clamp(34px, 4vw, 56px);
  line-height: 1.04;
  margin: 0;
}

.numbers-layout {
  display: grid;
  grid-template-columns: .9fr 1.5fr;
  gap: 22px;
}

.stat {
  min-height: 245px;
  padding: 34px;
  background: var(--white);
  border-top: 4px solid var(--navy);
  box-shadow: 0 10px 28px rgba(11,29,48,.06);
}

.stat-feature {
  min-height: 100%;
  padding: 46px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--navy);
  color: white;
  border-top-color: var(--red-bright);
}

.stat-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
}

.stat-number {
  margin-bottom: 14px;
  color: var(--blue);
  font-size: clamp(54px, 6vw, 86px);
  line-height: .9;
  font-weight: 900;
  letter-spacing: -.065em;
}

.stat-number span {
  font-size: .42em;
  letter-spacing: -.02em;
}

.stat-feature .stat-number {
  color: #f4d37f;
  font-size: clamp(88px, 10vw, 150px);
}

.stat p {
  margin: 0 0 20px;
  max-width: 390px;
  font-size: 16px;
  font-weight: 700;
}

.stat small {
  margin-top: auto;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.stat-feature small {
  color: rgba(255,255,255,.54);
}

/* Revolving door */
.section-dark {
  padding: 100px 0;
  background: var(--navy);
  color: white;
}

.door-grid {
  display: grid;
  grid-template-columns: .72fr 1.28fr;
  gap: 70px;
  align-items: center;
}

.door-grid h2 {
  margin-bottom: 20px;
  font-size: clamp(38px, 4.5vw, 62px);
  line-height: 1.02;
}

.door-grid p:not(.eyebrow) {
  max-width: 540px;
  color: rgba(255,255,255,.72);
  font-size: 18px;
}

.cycle {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: 8px;
}

.cycle-stage {
  flex: 1;
  min-height: 128px;
  padding: 20px 14px;
  border: 1px solid rgba(255,255,255,.15);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: rgba(255,255,255,.035);
}

.cycle-stage strong {
  color: #f4d37f;
  font-size: 11px;
  letter-spacing: .14em;
}

.cycle-stage span {
  font-size: 15px;
  font-weight: 800;
}

.cycle-stage.accent {
  background: var(--red);
  border-color: var(--red);
}

.cycle-stage.accent strong { color: white; }

.cycle-arrow {
  display: grid;
  place-items: center;
  color: rgba(255,255,255,.4);
  font-size: 20px;
}

/* Image split */
.image-split {
  padding: 0;
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  min-height: 650px;
  background: white;
}

.split-image {
  min-height: 650px;
}

.split-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.split-content {
  padding: 100px clamp(48px, 7vw, 110px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.split-content h2 {
  margin-bottom: 28px;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1;
}

.split-content p {
  max-width: 640px;
  font-size: 18px;
  color: #46515c;
}

.split-content h3 {
  margin: 20px 0 0;
  color: var(--red);
  font-size: clamp(30px, 3.5vw, 48px);
  line-height: 1.05;
  text-transform: uppercase;
}

/* LE banner */
.law-enforcement-banner {
  position: relative;
  min-height: 480px;
  overflow: hidden;
  background: var(--navy);
}

.law-enforcement-banner > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.law-enforcement-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(5,18,31,.92), rgba(5,18,31,.58) 55%, rgba(5,18,31,.24));
}

.banner-copy {
  position: relative;
  z-index: 2;
  padding-top: 125px;
  padding-bottom: 125px;
  color: white;
}

.banner-copy p {
  margin-bottom: 4px;
  font-size: clamp(28px, 3.7vw, 52px);
  font-weight: 800;
  letter-spacing: -.04em;
}

.banner-copy h2 {
  margin-bottom: 26px;
  color: #f4d37f;
  font-size: clamp(58px, 7vw, 96px);
  line-height: .9;
  font-weight: 900;
}

.text-link {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  color: white;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* Closing */
.closing {
  background: #030e1a;
  color: white;
}

.closing-inner {
  padding-top: 105px;
  padding-bottom: 110px;
  text-align: center;
}

.closing p {
  margin-bottom: 8px;
  color: rgba(255,255,255,.6);
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 800;
}

.closing h2 {
  margin-bottom: 36px;
  font-size: clamp(48px, 6vw, 84px);
  line-height: .96;
}

/* Footer */
.site-footer {
  padding: 48px 0 28px;
  background: var(--navy);
  color: rgba(255,255,255,.7);
}

.footer-inner {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: center;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 14px;
}

.footer-brand img {
  width: 60px;
  height: 60px;
  object-fit: cover;
  object-position: 50% 43%;
}

.footer-brand strong {
  display: block;
  color: white;
  font-size: 13px;
}

.footer-brand span {
  display: block;
  margin-top: 3px;
  font-size: 11px;
}

.footer-contact {
  text-align: right;
}

.footer-contact span {
  display: block;
  margin-bottom: 3px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.footer-contact a {
  color: white;
  font-weight: 700;
}

.footer-bottom {
  grid-column: 1 / -1;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,.1);
  font-size: 10px;
}

/* Responsive */
@media (max-width: 980px) {
  .brand-name { display: none; }

  .nav-toggle { display: block; }

  .primary-nav {
    position: absolute;
    left: 0;
    right: 0;
    top: 84px;
    padding: 18px 24px 26px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    background: var(--navy);
    border-top: 1px solid rgba(255,255,255,.08);
  }

  .primary-nav.open { display: flex; }

  .primary-nav a {
    padding: 15px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .primary-nav a.active::after { display: none; }

  .numbers-layout,
  .door-grid,
  .image-split {
    grid-template-columns: 1fr;
  }

  .stat-feature { min-height: 330px; }
  .split-image { min-height: 460px; }
  .split-content { padding: 70px 48px; }

  .cycle {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cycle-arrow {
    transform: rotate(90deg);
    height: 24px;
  }
}

@media (max-width: 640px) {
  .container,
  .header-inner {
    width: min(calc(100% - 32px), var(--max));
  }

  .site-header,
  .header-inner { min-height: 72px; }

  .primary-nav { top: 72px; }

  .brand img {
    width: 50px;
    height: 50px;
  }

  .hero {
    min-height: 720px;
    align-items: end;
  }

  .hero-image { object-position: 62% center; }

  .hero-content {
    padding: 150px 0 84px;
  }

  .hero-copy {
    font-size: 16px;
  }

  .section { padding: 78px 0; }

  .stat-grid {
    grid-template-columns: 1fr;
  }

  .stat {
    min-height: 210px;
    padding: 28px;
  }

  .stat-feature {
    min-height: 290px;
    padding: 32px;
  }

  .section-dark { padding: 78px 0; }

  .split-image { min-height: 360px; }

  .split-content {
    padding: 65px 24px;
  }

  .law-enforcement-banner {
    min-height: 500px;
  }

  .law-enforcement-banner > img {
    object-position: 57% center;
  }

  .banner-copy {
    padding-top: 110px;
    padding-bottom: 110px;
  }

  .footer-inner {
    grid-template-columns: 1fr;
  }

  .footer-contact {
    text-align: left;
  }
}


/* =========================================================
   THE ISSUE
   ========================================================= */

.issue-hero {
  position: relative;
  min-height: 650px;
  display: flex;
  align-items: end;
  overflow: hidden;
  background: var(--navy);
}

.issue-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.issue-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3,13,24,.94) 0%, rgba(3,13,24,.73) 48%, rgba(3,13,24,.20) 78%),
    linear-gradient(0deg, rgba(3,13,24,.68), transparent 48%);
}

.issue-hero-content {
  position: relative;
  z-index: 2;
  padding-top: 160px;
  padding-bottom: 90px;
}

.issue-hero h1 {
  max-width: 900px;
  margin-bottom: 28px;
  color: white;
  font-size: clamp(48px, 6vw, 82px);
  line-height: .98;
  font-weight: 900;
}

.issue-hero h1 span { color: #f4d37f; }

.issue-hero p {
  max-width: 740px;
  margin: 0;
  color: rgba(255,255,255,.83);
  font-size: 19px;
  line-height: 1.65;
}

.issue-statement { background: var(--paper); }

.issue-statement-grid {
  display: grid;
  grid-template-columns: .32fr 1fr;
  gap: 70px;
  align-items: start;
}

.issue-kicker {
  padding-top: 8px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
}

.red-rule {
  width: 70px;
  height: 4px;
  margin-top: 18px;
  background: var(--red);
}

.issue-statement-copy h2 {
  max-width: 820px;
  margin-bottom: 30px;
  font-size: clamp(42px, 5vw, 68px);
  line-height: 1;
}

.issue-statement-copy p {
  max-width: 850px;
  color: #46515c;
  font-size: 18px;
}

.issue-statement-copy .lead {
  color: var(--ink);
  font-size: 23px;
  font-weight: 700;
  line-height: 1.5;
}

.power-section {
  padding: 100px 0 115px;
  background: white;
}

.power-heading {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 60px;
  align-items: end;
  margin-bottom: 55px;
}

.power-heading h2 {
  margin: 0;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
}

.power-heading p {
  margin: 0 0 6px;
  color: #53606c;
  font-size: 18px;
}

.power-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.power-grid article {
  min-height: 275px;
  padding: 34px 28px;
  border-right: 1px solid var(--line);
}

.power-grid article:last-child { border-right: 0; }

.power-grid strong {
  color: var(--red);
  font-size: 11px;
  letter-spacing: .16em;
}

.power-grid h3 {
  margin: 55px 0 12px;
  font-size: 22px;
  line-height: 1.1;
}

.power-grid p {
  color: var(--muted);
  font-size: 14px;
}

.issue-cycle-heading {
  max-width: 780px;
  margin-bottom: 50px;
}

.issue-cycle-heading h2 {
  margin-bottom: 16px;
  color: white;
  font-size: clamp(48px, 6vw, 80px);
  line-height: .95;
}

.issue-cycle-heading p {
  color: rgba(255,255,255,.7);
  font-size: 18px;
}

.cycle-large .cycle-stage {
  min-height: 155px;
}

.consequence-split {
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  min-height: 660px;
  background: var(--paper);
}

.consequence-copy {
  display: flex;
  align-items: center;
  padding: 90px max(48px, calc((100vw - 1200px)/2));
  padding-right: clamp(55px, 7vw, 105px);
}

.consequence-copy > div { max-width: 620px; }

.consequence-copy h2 {
  margin-bottom: 28px;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
}

.consequence-copy p {
  color: #4f5a65;
  font-size: 18px;
}

.consequence-image {
  min-height: 660px;
}

.consequence-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.election-section {
  padding: 115px 0 125px;
  background: white;
}

.election-grid {
  display: grid;
  grid-template-columns: .3fr 1fr;
  gap: 70px;
}

.election-small {
  padding-top: 9px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
}

.election-line {
  margin-bottom: 3px;
  color: #69737c;
  font-size: clamp(28px, 3.4vw, 45px);
  font-weight: 800;
  letter-spacing: -.04em;
}

.election-grid h2 {
  margin: 18px 0 0;
  color: var(--red);
  font-size: clamp(50px, 6vw, 84px);
  line-height: .95;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .issue-statement-grid,
  .power-heading,
  .consequence-split,
  .election-grid {
    grid-template-columns: 1fr;
  }

  .issue-statement-grid,
  .election-grid { gap: 35px; }

  .power-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .power-grid article:nth-child(2) { border-right: 0; }

  .consequence-copy {
    padding: 75px 48px;
  }

  .consequence-image { min-height: 480px; }
}

@media (max-width: 640px) {
  .issue-hero { min-height: 690px; }
  .issue-hero-content { padding-bottom: 70px; }
  .issue-hero p { font-size: 16px; }

  .power-grid { grid-template-columns: 1fr; }
  .power-grid article {
    min-height: 220px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .power-grid h3 { margin-top: 34px; }

  .consequence-copy { padding: 65px 24px; }
  .consequence-image { min-height: 390px; }
}


/* THE ISSUE v2 — approved copy/layout refinements */
.issue-statement-grid {
  grid-template-columns: 1fr;
}

.power-heading {
  display: block;
  text-align: center;
}

.power-heading h2 {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

.power-grid h3 {
  margin-top: 55px;
}

.election-grid {
  grid-template-columns: 1fr;
  text-align: center;
}

.election-line {
  color: var(--ink);
}


/* THE ISSUE v3 — approved centering and crisp closing treatment */
.issue-statement-grid {
  display: block;
}

.issue-statement-copy {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
}

.issue-statement-copy h2,
.issue-statement-copy p,
.issue-statement-copy .lead {
  margin-left: auto;
  margin-right: auto;
}

.election-section {
  padding-top: 105px;
  padding-bottom: 110px;
}

.election-grid {
  display: block;
  text-align: center;
}

.election-grid > div {
  max-width: 1000px;
  margin: 0 auto;
}

.election-line {
  margin: 0;
  color: #111820;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 1.16;
  font-weight: 900;
  letter-spacing: -.045em;
}

.election-line + .election-line {
  margin-top: 4px;
}


/* =========================================================
   THE DATA
   ========================================================= */

.data-hero {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: end;
  overflow: hidden;
  background: var(--navy);
}

.data-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .9;
}

.data-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3,13,24,.95), rgba(3,13,24,.73) 50%, rgba(3,13,24,.4)),
    linear-gradient(0deg, rgba(3,13,24,.55), transparent 50%);
}

.data-hero-content {
  position: relative;
  z-index: 2;
  padding-top: 150px;
  padding-bottom: 85px;
}

.data-hero h1 {
  max-width: 900px;
  margin-bottom: 20px;
  color: white;
  font-size: clamp(52px, 6vw, 82px);
  line-height: .98;
  font-weight: 900;
}

.data-hero h1 span { color: #f4d37f; }

.data-hero p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.8);
  font-size: 19px;
}

.data-section {
  padding: 105px 0;
  background: var(--paper);
}

.data-section:nth-of-type(even) { background: white; }

.data-section-heading {
  margin-bottom: 50px;
}

.data-section-heading.centered {
  text-align: center;
}

.data-section-heading h2 {
  margin: 0;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
}

.data-feature-layout {
  display: grid;
  grid-template-columns: .9fr 1.4fr;
  gap: 24px;
}

.data-feature-card {
  min-height: 520px;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: var(--navy);
  color: white;
  border-top: 5px solid var(--red);
}

.mega-number {
  margin-bottom: 24px;
  color: #f4d37f;
  font-size: clamp(110px, 12vw, 175px);
  line-height: .82;
  font-weight: 900;
  letter-spacing: -.075em;
}

.mega-number span {
  font-size: .38em;
}

.data-feature-card p {
  max-width: 420px;
  margin-bottom: 24px;
  font-size: 19px;
  font-weight: 700;
}

.data-feature-card small,
.data-card small {
  color: rgba(255,255,255,.5);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.data-support-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
}

.data-card {
  min-height: 248px;
  padding: 32px;
  background: white;
  border-top: 4px solid var(--navy);
  box-shadow: 0 10px 28px rgba(11,29,48,.06);
}

.data-number {
  margin-bottom: 18px;
  color: var(--blue);
  font-size: clamp(58px, 6vw, 86px);
  line-height: .86;
  font-weight: 900;
  letter-spacing: -.06em;
}

.data-number span { font-size: .4em; }

.data-card p {
  margin-bottom: 20px;
  font-weight: 700;
}

.data-card small {
  color: var(--muted);
}

.data-dark-strip {
  padding: 100px 0 90px;
  background: var(--navy);
  color: white;
}

.data-dark-heading {
  text-align: center;
  margin-bottom: 55px;
}

.data-dark-heading h2 {
  margin-bottom: 10px;
  font-size: clamp(48px, 6vw, 76px);
  line-height: .95;
}

.data-dark-heading p {
  color: rgba(255,255,255,.64);
  font-size: 16px;
}

.triple-stat {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  border-top: 1px solid rgba(255,255,255,.14);
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.triple-stat article {
  padding: 44px 28px;
  text-align: center;
  border-right: 1px solid rgba(255,255,255,.14);
}

.triple-stat article:last-child { border-right: 0; }

.triple-number {
  color: #f4d37f;
  font-size: clamp(76px, 8vw, 122px);
  line-height: .85;
  font-weight: 900;
  letter-spacing: -.07em;
}

.triple-number span { font-size: .38em; }

.triple-stat p {
  margin: 22px 0 0;
  color: rgba(255,255,255,.82);
  font-weight: 700;
}

.data-source-note {
  margin-top: 20px;
  text-align: center;
  color: rgba(255,255,255,.48);
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.four-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.data-card.crisp {
  min-height: 285px;
  box-shadow: none;
  border: 1px solid var(--line);
  border-top: 4px solid var(--navy);
}

.policy-change {
  padding: 105px 0 115px;
  background: #eef1f3;
}

.policy-title {
  text-align: center;
  margin-bottom: 58px;
}

.policy-title h2 {
  margin-bottom: 10px;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
}

.policy-title p {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.policy-grid {
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  gap: 48px;
  align-items: stretch;
}

.policy-divider {
  background: #c6cdd3;
}

.policy-column article {
  display: grid;
  grid-template-columns: 170px 1fr;
  gap: 24px;
  align-items: center;
  padding: 24px 0;
  border-bottom: 1px solid #ccd3d8;
}

.policy-column article:last-child { border-bottom: 0; }

.policy-column span {
  font-size: clamp(40px, 4vw, 60px);
  font-weight: 900;
  letter-spacing: -.05em;
}

.reductions span { color: var(--red); }
.diversions span { color: var(--blue); }

.policy-column p {
  margin: 0;
  font-weight: 700;
}

.retail-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 760px;
  background: white;
}

.retail-copy {
  display: flex;
  align-items: center;
  padding: 90px max(48px, calc((100vw - 1200px)/2));
  padding-right: clamp(55px, 7vw, 105px);
}

.retail-copy > div { width: 100%; max-width: 590px; }

.retail-copy h2 {
  margin-bottom: 40px;
  font-size: clamp(42px, 5vw, 66px);
  line-height: 1;
}

.retail-stat {
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 24px;
  align-items: center;
  padding: 18px 0;
  border-top: 1px solid var(--line);
}

.retail-stat span {
  color: var(--red);
  font-size: clamp(36px, 4vw, 54px);
  font-weight: 900;
  letter-spacing: -.05em;
}

.retail-stat p {
  margin: 0;
  color: #46515c;
  font-weight: 700;
}

.retail-image {
  min-height: 760px;
}

.retail-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.data-closing {
  padding: 115px 0 125px;
  text-align: center;
  background: var(--navy);
  color: white;
}

.closing-number {
  color: #f4d37f;
  font-size: clamp(120px, 16vw, 225px);
  line-height: .77;
  font-weight: 900;
  letter-spacing: -.08em;
}

.closing-number span { font-size: .34em; }

.data-closing > .container > p {
  max-width: 760px;
  margin: 30px auto 48px;
  color: rgba(255,255,255,.75);
  font-size: 19px;
  font-weight: 700;
}

.data-closing h2 {
  margin-bottom: 6px;
  color: rgba(255,255,255,.72);
  font-size: clamp(28px, 3.5vw, 44px);
}

.data-closing h3 {
  margin: 0;
  color: white;
  font-size: clamp(60px, 8vw, 110px);
  line-height: .9;
  text-transform: uppercase;
}

.sources {
  padding: 70px 0;
  background: #ece9e1;
}

.sources h2 {
  margin-bottom: 30px;
  font-size: 28px;
}

.sources-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px 45px;
}

.sources-grid p {
  margin: 0;
  color: #5d6570;
  font-size: 12px;
  line-height: 1.6;
}

.sources-grid strong {
  color: var(--ink);
}

@media (max-width: 980px) {
  .data-feature-layout,
  .retail-split {
    grid-template-columns: 1fr;
  }

  .four-stat-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .data-feature-card { min-height: 390px; }
  .retail-copy { padding: 75px 48px; }
  .retail-image { min-height: 500px; }
}

@media (max-width: 720px) {
  .data-support-grid,
  .four-stat-grid,
  .triple-stat,
  .sources-grid {
    grid-template-columns: 1fr;
  }

  .triple-stat article {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .triple-stat article:last-child { border-bottom: 0; }

  .policy-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .policy-divider { display: none; }

  .policy-column article {
    grid-template-columns: 120px 1fr;
  }

  .retail-copy { padding: 65px 24px; }
  .retail-stat { grid-template-columns: 110px 1fr; }
  .retail-image { min-height: 390px; }
}


/* THE DATA v2 — Chesa Boudin section */
.policy-title .policy-name {
  margin: 22px 0 2px;
  color: var(--ink);
  font-size: clamp(23px, 2.5vw, 34px);
  font-weight: 900;
  letter-spacing: -.035em;
  text-transform: none;
}

.policy-title .policy-subtitle {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.policy-source {
  margin-top: 38px;
  text-align: center;
  color: var(--muted);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}


/* =========================================================
   LEADERSHIP
   ========================================================= */

.leadership-hero {
  padding: 120px 0 105px;
  background:
    linear-gradient(135deg, #07182b 0%, #0e2c49 100%);
  color: white;
  border-bottom: 6px solid var(--red);
}

.leadership-hero h1 {
  margin: 0;
  font-size: clamp(56px, 7vw, 96px);
  line-height: .95;
  font-weight: 900;
}

.leadership-hero h1 span {
  color: #f4d37f;
}

.board-section {
  padding: 95px 0 105px;
  background: var(--paper);
}

.board-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.board-card {
  min-height: 320px;
  padding: 38px 34px;
  background: white;
  border-top: 5px solid var(--navy);
  box-shadow: 0 12px 32px rgba(11,29,48,.06);
}

.board-role {
  margin-bottom: 52px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.board-card h2 {
  margin-bottom: 18px;
  color: var(--navy);
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1;
}

.board-rank {
  margin-bottom: 4px;
  color: var(--ink);
  font-size: 16px;
  font-weight: 800;
}

.board-agency {
  margin: 0;
  max-width: 280px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.5;
}

.executive-section {
  padding: 115px 0 130px;
  background: white;
}

.executive-label {
  margin-bottom: 38px;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.executive-profile {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: 0;
  margin-bottom: 34px;
  min-height: 610px;
  background: var(--paper);
  overflow: hidden;
}

.executive-profile.reverse {
  grid-template-columns: 1.22fr .78fr;
}

.executive-image {
  min-height: 610px;
  background: #d8dde2;
}

.executive-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center top;
}

.executive-copy {
  padding: 70px 70px 66px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.executive-title {
  margin-bottom: 10px;
  color: var(--red);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.executive-copy h2 {
  margin-bottom: 26px;
  color: var(--navy);
  font-size: clamp(42px, 5vw, 64px);
  line-height: .95;
}

.executive-copy p {
  margin-bottom: 16px;
  color: #46515c;
  font-size: 16px;
  line-height: 1.65;
}

.executive-copy p:last-child {
  margin-bottom: 0;
}

@media (max-width: 980px) {
  .board-grid,
  .executive-profile,
  .executive-profile.reverse {
    grid-template-columns: 1fr;
  }

  .executive-profile.reverse .executive-copy {
    order: 2;
  }

  .executive-profile.reverse .executive-image {
    order: 1;
  }

  .executive-image {
    min-height: 520px;
  }

  .executive-copy {
    padding: 60px 48px;
  }
}

@media (max-width: 640px) {
  .leadership-hero {
    padding: 90px 0 80px;
  }

  .board-section,
  .executive-section {
    padding-top: 75px;
    padding-bottom: 85px;
  }

  .board-card {
    min-height: 260px;
    padding: 30px 28px;
  }

  .board-role {
    margin-bottom: 36px;
  }

  .executive-image {
    min-height: 420px;
  }

  .executive-copy {
    padding: 48px 24px;
  }
}


/* =========================================================
   ABOUT
   ========================================================= */

.about-hero {
  position: relative;
  min-height: 650px;
  display: flex;
  align-items: end;
  overflow: hidden;
  background: var(--navy);
}

.about-hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.about-hero-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(3,13,24,.95), rgba(3,13,24,.72) 50%, rgba(3,13,24,.28)),
    linear-gradient(0deg, rgba(3,13,24,.67), transparent 48%);
}

.about-hero-content {
  position: relative;
  z-index: 2;
  padding-top: 160px;
  padding-bottom: 88px;
}

.about-hero h1 {
  max-width: 900px;
  margin-bottom: 26px;
  color: white;
  font-size: clamp(50px, 6vw, 82px);
  line-height: .98;
  font-weight: 900;
}

.about-hero h1 span { color: #f4d37f; }

.about-hero p {
  max-width: 860px;
  margin: 0;
  color: rgba(255,255,255,.86);
  font-size: 20px;
  line-height: 1.6;
  font-weight: 700;
}

.about-consequences {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 690px;
  background: white;
}

.about-copy {
  display: flex;
  align-items: center;
  padding: 90px max(48px, calc((100vw - 1200px)/2));
  padding-right: clamp(55px, 7vw, 105px);
}

.about-copy > div {
  max-width: 610px;
}

.about-copy p {
  color: #4e5964;
  font-size: 18px;
  line-height: 1.72;
}

.about-copy h2 {
  margin: 30px 0;
  color: var(--navy);
  font-size: clamp(42px, 5vw, 68px);
  line-height: .98;
}

.about-image {
  min-height: 690px;
}

.about-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.expose-section {
  padding: 110px 0 120px;
  background: var(--paper);
}

.expose-section h2 {
  max-width: 950px;
  margin: 0 auto 55px;
  text-align: center;
  color: var(--navy);
  font-size: clamp(48px, 5.5vw, 74px);
  line-height: .95;
}

.expose-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-bottom: 38px;
}

.expose-grid div {
  min-height: 145px;
  padding: 30px;
  display: flex;
  align-items: end;
  background: white;
  border-top: 4px solid var(--navy);
  color: var(--ink);
  font-size: 22px;
  font-weight: 900;
  line-height: 1.1;
  box-shadow: 0 10px 24px rgba(11,29,48,.05);
}

.expose-grid div:nth-child(2),
.expose-grid div:nth-child(5) {
  border-top-color: var(--red);
}

.expose-copy {
  max-width: 850px;
  margin: 0 auto;
  text-align: center;
  color: #4f5a65;
  font-size: 18px;
  font-weight: 700;
}

.about-fight-banner {
  position: relative;
  min-height: 560px;
  display: flex;
  align-items: center;
  overflow: hidden;
  background: var(--navy);
}

.about-fight-banner > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.about-fight-overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5,18,31,.95), rgba(5,18,31,.67) 58%, rgba(5,18,31,.28));
}

.fight-copy {
  position: relative;
  z-index: 2;
  padding-top: 110px;
  padding-bottom: 110px;
  color: white;
}

.fight-copy h2 {
  max-width: 850px;
  margin-bottom: 24px;
  font-size: clamp(52px, 6vw, 82px);
  line-height: .95;
}

.fight-copy p {
  max-width: 760px;
  margin: 0;
  color: rgba(255,255,255,.77);
  font-size: 18px;
  line-height: 1.65;
}

.about-escalation {
  padding: 120px 0 130px;
  background: white;
  text-align: center;
}

.escalation-inner {
  max-width: 1100px;
}

.think-tank {
  margin-bottom: 22px;
  color: #4d5964;
  font-size: clamp(24px, 3vw, 36px);
  font-weight: 800;
}

.about-escalation h2 {
  margin-bottom: 24px;
  color: var(--navy);
  font-size: clamp(58px, 7vw, 96px);
  line-height: .92;
}

.about-escalation h3 {
  margin: 0;
  color: var(--red);
  font-size: clamp(70px, 9vw, 122px);
  line-height: .86;
  text-transform: uppercase;
}

.about-final {
  padding: 115px 0 125px;
  background: var(--navy);
  color: white;
}

.final-three {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-bottom: 85px;
}

.final-three div {
  min-height: 180px;
  padding: 28px;
  border-top: 1px solid rgba(255,255,255,.2);
}

.final-three span {
  display: block;
  margin-bottom: 8px;
  color: rgba(255,255,255,.57);
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.final-three strong {
  display: block;
  color: white;
  font-size: clamp(30px, 3.4vw, 46px);
  line-height: 1;
}

.about-final h2 {
  margin: 0;
  text-align: center;
  color: #f4d37f;
  font-size: clamp(90px, 12vw, 170px);
  line-height: .78;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .about-consequences {
    grid-template-columns: 1fr;
  }

  .about-copy {
    padding: 75px 48px;
  }

  .about-image {
    min-height: 480px;
  }

  .expose-grid,
  .final-three {
    grid-template-columns: 1fr;
  }

  .final-three {
    gap: 0;
  }

  .final-three div {
    min-height: auto;
    padding: 25px 0;
  }
}

@media (max-width: 640px) {
  .about-hero {
    min-height: 700px;
  }

  .about-hero-content {
    padding-bottom: 70px;
  }

  .about-hero p {
    font-size: 16px;
  }

  .about-copy {
    padding: 65px 24px;
  }

  .about-image {
    min-height: 390px;
  }

  .expose-section {
    padding: 80px 0 90px;
  }

  .expose-grid div {
    min-height: 120px;
  }

  .fight-copy {
    padding-top: 90px;
    padding-bottom: 90px;
  }

  .about-escalation {
    padding: 90px 0 100px;
  }

  .about-final {
    padding: 90px 0 100px;
  }
}


/* =========================================================
   CONTACT
   ========================================================= */

.contact-page {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  min-height: calc(100vh - 84px);
  background: white;
}

.contact-copy {
  display: flex;
  align-items: center;
  padding: 100px max(48px, calc((100vw - 1200px)/2));
  padding-right: clamp(55px, 7vw, 110px);
  background: var(--paper);
}

.contact-copy > div {
  max-width: 620px;
}

.contact-copy h1 {
  margin-bottom: 24px;
  color: var(--navy);
  font-size: clamp(58px, 7vw, 94px);
  line-height: .92;
}

.contact-copy p {
  max-width: 540px;
  margin-bottom: 34px;
  color: #4e5964;
  font-size: 20px;
  line-height: 1.6;
}

.contact-email {
  display: inline-block;
  color: var(--red);
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 900;
  letter-spacing: -.045em;
  border-bottom: 3px solid var(--red);
  padding-bottom: 6px;
}

.contact-image {
  min-height: 680px;
}

.contact-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 980px) {
  .contact-page {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .contact-copy {
    padding: 85px 48px;
  }

  .contact-image {
    min-height: 480px;
  }
}

@media (max-width: 640px) {
  .contact-copy {
    padding: 70px 24px;
  }

  .contact-copy p {
    font-size: 17px;
  }

  .contact-email {
    font-size: 30px;
  }

  .contact-image {
    min-height: 380px;
  }
}

/* =========================================================
   NEW CPSLE HOMEPAGE — 2026 UMBRELLA / CENTERS MODEL
   ========================================================= */
.new-home-hero .hero-content { max-width: 980px; }
.new-home-hero .hero-copy-secondary { max-width: 800px; margin-bottom: 0; color: rgba(255,255,255,.68); }
.voice-section { background: var(--paper); }
.voice-grid,.policy-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:start; }
.voice-grid h2,.policy-grid h2 { font-size:clamp(44px,5vw,70px); line-height:.98; color:var(--navy); }
.voice-copy p,.policy-list p { font-size:18px; color:#46515c; }
.voice-copy .statement { margin:30px 0; color:var(--red); font-family:"Libre Franklin",sans-serif; font-size:clamp(28px,3vw,42px); font-weight:900; letter-spacing:-.04em; }
.three-lines { margin-top:38px; padding-top:30px; border-top:1px solid var(--line); display:grid; gap:8px; color:var(--navy); font-size:20px; }
.centers-section { background:var(--navy); color:white; }
.centers-intro { max-width:850px; margin-bottom:55px; }
.centers-intro h2 { font-size:clamp(48px,5.5vw,76px); line-height:.96; }
.centers-intro > p:last-child { max-width:760px; color:rgba(255,255,255,.7); font-size:18px; }
.center-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.center-card { position:relative; min-height:720px; padding:48px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.045); display:flex; flex-direction:column; }
.center-card::before { content:""; position:absolute; top:0; left:0; width:110px; height:4px; background:var(--gold); }
.center-prosecutor::before { background:var(--red-bright); }
.center-number { position:absolute; right:35px; top:25px; color:rgba(255,255,255,.08); font-size:88px; font-weight:900; line-height:1; }
.center-label { color:#f4d37f; font-size:11px!important; font-weight:900; letter-spacing:.14em; text-transform:uppercase; }
.center-card h3 { max-width:520px; margin:18px 0 30px; font-size:clamp(32px,3.2vw,48px); line-height:1.02; }
.center-card p { position:relative; z-index:1; color:rgba(255,255,255,.72); font-size:16px; }
.center-punch { margin:8px 0 24px; color:white!important; font-size:20px!important; }
.center-punch strong { color:#f4d37f; }
.accountability-lines { display:grid; gap:4px; margin:8px 0 28px; color:white; font-size:18px; }
.center-link { margin-top:auto; padding-top:24px; border-top:1px solid rgba(255,255,255,.12); color:white; font-size:12px; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.national-network .split-image img { object-position:center; }
.policy-section { background:white; }
.policy-list { border-left:1px solid var(--line); padding-left:55px; }
.policy-list p { padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid #e7e9eb; }
.policy-punch { margin:34px 0; color:var(--navy); font-family:"Libre Franklin",sans-serif; font-size:clamp(28px,3vw,42px); font-weight:800; line-height:1.12; letter-spacing:-.04em; }
.policy-punch strong { color:var(--red); }
.new-closing .closing-inner { max-width:1050px; }
.new-closing h2 { color:#f4d37f; }
.closing-copy { max-width:850px; margin:0 auto 42px; color:rgba(255,255,255,.7); font-size:18px; line-height:1.7; }
.closing-mission { padding-top:34px; border-top:1px solid rgba(255,255,255,.12); display:flex; flex-wrap:wrap; justify-content:center; gap:10px 30px; color:rgba(255,255,255,.58); font-size:15px; }
.closing-mission strong { width:100%; margin-top:12px; color:white; font-size:20px; }
@media(max-width:980px){.voice-grid,.policy-grid,.center-grid{grid-template-columns:1fr}.voice-grid,.policy-grid{gap:35px}.center-card{min-height:auto}.policy-list{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:35px}}
@media(max-width:640px){.center-card{padding:34px 26px}.center-number{font-size:64px}.new-home-hero .hero-content{padding-bottom:72px}.closing-mission{display:grid}}


/* =========================================================
   CPSLE NAV DROPDOWN + AI & PUBLIC SAFETY CENTER
   ========================================================= */
.nav-dropdown { position:relative; display:flex; align-items:center; }
.nav-dropdown-toggle { appearance:none; border:0; background:transparent; color:inherit; font:inherit; font-weight:700; cursor:pointer; padding:10px 0; }
.nav-dropdown-toggle span { margin-left:4px; font-size:10px; }
.nav-dropdown-menu { position:absolute; top:calc(100% + 12px); left:-22px; width:390px; padding:10px; background:#fff; border-top:3px solid var(--gold); box-shadow:0 18px 40px rgba(0,0,0,.18); opacity:0; visibility:hidden; transform:translateY(-5px); transition:.18s ease; z-index:100; }
.nav-dropdown-menu a { display:block!important; padding:14px 16px!important; color:var(--navy)!important; font-size:13px!important; line-height:1.35; border-bottom:1px solid #eceff1; }
.nav-dropdown-menu a:last-child { border-bottom:0; }
.nav-dropdown-menu a:hover,.nav-dropdown-menu a.active { background:#f5f2e9; color:var(--red)!important; }
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown.open .nav-dropdown-menu { opacity:1; visibility:visible; transform:none; }
.nav-dropdown.active-parent > .nav-dropdown-toggle { color:var(--gold); }
.center-link { text-decoration:none; }

.ai-hero { position:relative; min-height:760px; display:flex; align-items:flex-end; overflow:hidden; background:var(--navy); }
.ai-hero > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.ai-hero-overlay { position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,20,35,.96) 0%,rgba(5,20,35,.84) 48%,rgba(5,20,35,.30) 100%),linear-gradient(0deg,rgba(5,20,35,.75),transparent 55%); }
.ai-hero-content { position:relative; z-index:2; padding-top:150px; padding-bottom:90px; max-width:1200px; }
.ai-hero h1 { max-width:980px; margin:0 0 30px; color:#fff; font-size:clamp(58px,7.2vw,100px); line-height:.91; letter-spacing:-.055em; }
.ai-hero h1 span { color:#f4d37f; }
.ai-hero p { max-width:800px; color:rgba(255,255,255,.78); font-size:18px; line-height:1.65; }
.ai-hero-punch { margin-top:30px; padding-top:26px; border-top:1px solid rgba(255,255,255,.2); color:#fff!important; font-size:21px!important; }
.ai-hero-punch strong { color:#f4d37f; }
.ai-two-col { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:start; }
.ai-two-col h2,.ai-action-wrap > h2,.ai-table-wrap > h2 { color:var(--navy); font-size:clamp(44px,5vw,72px); line-height:.96; letter-spacing:-.045em; }
.ai-body p,.ai-action-grid p,.ai-table-copy p,.ai-split-copy p { color:#46515c; font-size:18px; line-height:1.7; }
.ai-lines { display:grid; gap:10px; margin:34px 0; padding:28px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--navy); font-size:19px; line-height:1.45; }
.ai-dark-section { background:var(--navy); }
.ai-dark-section h2 { color:#fff; }
.ai-body.light p { color:rgba(255,255,255,.72); }
.ai-values { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:34px 0; border-top:1px solid rgba(255,255,255,.14); border-left:1px solid rgba(255,255,255,.14); }
.ai-values span { padding:18px 20px; border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); color:#fff; font-weight:800; }
.ai-callout { margin:32px 0!important; padding-left:25px; border-left:4px solid var(--gold); color:#fff!important; font-weight:700; }
.ai-action-section { background:#f4f1e9; }
.ai-action-wrap { max-width:1120px; }
.ai-action-wrap > h2 { margin-bottom:18px; }
.ai-lede { max-width:800px; color:#46515c; font-size:21px; }
.ai-action-wrap > h3 { margin:26px 0 45px; color:var(--red); font-size:clamp(32px,4vw,52px); }
.ai-action-grid { display:grid; grid-template-columns:1fr 1fr; gap:70px; }
.ai-operational { margin-top:55px; padding:45px; background:var(--navy); color:#fff; }
.ai-operational p { color:rgba(255,255,255,.75); font-size:18px; line-height:1.7; }
.ai-operational strong { display:block; margin:28px 0 10px; color:#f4d37f; font-size:clamp(24px,3vw,36px); line-height:1.2; }
.ai-operational span { font-weight:800; }
.ai-split { display:grid; grid-template-columns:.9fr 1.1fr; background:#fff; }
.ai-split-image { min-height:860px; }
.ai-split-image img { width:100%; height:100%; object-fit:cover; }
.ai-split-copy { padding:90px max(55px,calc((100vw - 1200px)/2)); padding-left:clamp(55px,7vw,110px); }
.ai-split-copy h2 { color:var(--navy); font-size:clamp(44px,5vw,70px); line-height:.96; }
.ai-chain { display:grid; gap:0; margin:35px 0; border-top:1px solid var(--line); }
.ai-chain strong { padding:16px 0; border-bottom:1px solid var(--line); color:var(--navy); font-size:16px; }
.ai-table-section { background:var(--navy); color:#fff; }
.ai-table-wrap { max-width:1100px; }
.ai-table-wrap > h2 { color:#fff; max-width:850px; }
.ai-table-lines { display:grid; grid-template-columns:1fr 1fr; margin:45px 0 35px; border-top:1px solid rgba(255,255,255,.14); border-left:1px solid rgba(255,255,255,.14); }
.ai-table-lines span { padding:22px; border-right:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.72); }
.ai-table-wrap > h3 { max-width:850px; margin-bottom:35px; color:#f4d37f; font-size:clamp(32px,4vw,52px); line-height:1.05; }
.ai-table-copy { columns:2; column-gap:70px; }
.ai-table-copy p { break-inside:avoid; color:rgba(255,255,255,.72); }
.ai-before-crisis { margin-top:50px; padding-top:35px; border-top:1px solid rgba(255,255,255,.15); color:#fff; font-size:clamp(26px,3vw,40px); font-weight:900; line-height:1.15; }
.ai-closing h2 { color:#f4d37f; }
.ai-closing .closing-copy p { color:inherit; }
.ai-final-lines { display:grid; gap:8px; max-width:900px; margin:35px auto; padding:30px 0; border-top:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.62); }
.ai-final-lines strong { margin-top:8px; color:#fff; font-size:19px; line-height:1.5; }
.ai-final { color:#f4d37f; font-size:21px; font-weight:900; }
@media(max-width:980px){
  .nav-dropdown{display:block}.nav-dropdown-menu{position:static;width:auto;padding:4px 0 4px 18px;box-shadow:none;border-top:0;background:transparent;display:none;opacity:1;visibility:visible;transform:none}.nav-dropdown.open .nav-dropdown-menu{display:block}.nav-dropdown-menu a{color:inherit!important;border-bottom:0!important;background:transparent!important;padding:9px 0!important}.nav-dropdown-toggle{width:100%;text-align:left}
  .ai-two-col,.ai-action-grid,.ai-split{grid-template-columns:1fr}.ai-two-col{gap:35px}.ai-split-image{min-height:500px}.ai-split-copy{padding:70px 48px}.ai-table-copy{columns:1}.ai-hero{min-height:700px}
}
@media(max-width:640px){
  .ai-hero-content{padding-top:130px;padding-bottom:65px}.ai-hero h1{font-size:50px}.ai-values,.ai-table-lines{grid-template-columns:1fr}.ai-operational{padding:30px 24px}.ai-split-copy{padding:60px 24px}.ai-body p,.ai-action-grid p,.ai-table-copy p,.ai-split-copy p{font-size:17px}
}

/* Navigation operational fixes — 2026-09-15 */
.primary-nav .nav-dropdown-toggle {
  position: relative;
  padding: 31px 0 27px;
  color: rgba(255,255,255,.82);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: inherit;
  transition: color .2s ease;
}
.primary-nav .nav-dropdown-toggle:hover,
.nav-dropdown.active-parent > .nav-dropdown-toggle {
  color: var(--white);
}
.primary-nav .nav-dropdown-menu a.active::after {
  display: none !important;
  content: none !important;
}
@media (max-width: 980px) {
  .primary-nav .nav-dropdown-toggle {
    padding: 15px 0;
    color: rgba(255,255,255,.82);
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
}

/* =========================================================
   CENTER FOR PROSECUTOR ACCOUNTABILITY — OPERATIONAL BUILD
   ========================================================= */
.pa-hero{padding:130px 0 115px;background:linear-gradient(135deg,#07182b 0%,#0d233b 100%);color:#fff;border-bottom:6px solid var(--red)}
.pa-hero-content{max-width:980px}.pa-hero h1{margin-bottom:32px;font-size:clamp(54px,7vw,92px);line-height:.94;font-weight:900}.pa-hero h1 span{color:#f4d37f}.pa-hero p{max-width:850px;color:rgba(255,255,255,.82);font-size:18px}.pa-hero-punch{margin-top:28px;color:#fff!important;font-size:22px!important}
.pa-two-col{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px;align-items:start}.pa-two-col h2{font-size:clamp(42px,5vw,68px);line-height:.98}.pa-body p{font-size:18px;color:#46515c}.pa-lede{font-size:22px!important;font-weight:800;color:var(--ink)!important}
.pa-questions{margin:30px 0;padding:30px 34px;border-left:5px solid var(--red);background:#fff;box-shadow:0 10px 28px rgba(11,29,48,.06)}.pa-questions strong,.pa-questions span,.pa-questions small{display:block}.pa-questions strong{font-size:24px;color:var(--navy)}.pa-questions span{margin:8px 0 22px;font-size:17px}.pa-questions small{margin-bottom:5px;color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.pa-operational{margin-top:30px;padding:22px 26px;background:var(--red);color:#fff;font-size:18px;font-weight:900;letter-spacing:-.01em}.pa-dark-section{background:var(--navy);color:#fff}.pa-dark-section h2{color:#fff}.pa-body.light p{color:rgba(255,255,255,.72)}.pa-lines{margin-bottom:30px}.pa-lines strong{display:block;margin-bottom:10px;color:#f4d37f;font-size:20px}.pa-callout{margin-top:28px;color:#fff!important;font-size:22px!important}
.pa-expose-section{background:#fff}.pa-expose-wrap{max-width:1050px}.pa-expose-wrap h2{font-size:clamp(48px,6vw,78px);line-height:.94}.pa-expose-wrap h2 span{color:var(--red)}.pa-records{margin:36px 0;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--navy);font-size:20px;font-weight:800;line-height:1.65}.pa-expose-wrap>p{font-size:18px}.pa-expose-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:35px 0}.pa-expose-grid p{margin:0;padding:28px;background:var(--paper);border-top:4px solid var(--navy);font-size:16px}.pa-expose-grid p:last-child{border-top-color:var(--red)}.pa-operational.dark{background:var(--navy)}
.pa-closing-copy{max-width:760px;margin:0 auto 35px}.pa-closing-copy p{font-size:17px!important;color:rgba(255,255,255,.72)!important}.pa-final-lines{max-width:800px;margin:0 auto 35px;padding:30px 0;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15)}.pa-final-lines span,.pa-final-lines strong{display:block;margin:8px 0;font-size:20px}.pa-final-lines strong{color:#f4d37f}.pa-final{font-size:18px!important;color:#fff!important;font-weight:900!important}
@media(max-width:980px){.pa-two-col{grid-template-columns:1fr;gap:35px}.pa-expose-grid{grid-template-columns:1fr}}
@media(max-width:640px){.pa-hero{padding:95px 0 80px}.pa-body p{font-size:16px}.pa-questions{padding:24px}.pa-expose-grid p{padding:24px}}


/* Leadership — Board of Advisors statement */
.leadership-advisors {
  padding: 92px 0 96px;
  background: var(--paper);
}
.leadership-advisors-inner {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 72px;
  align-items: start;
}
.leadership-advisors-heading h2 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(38px, 4.6vw, 62px);
  line-height: .98;
  letter-spacing: -.045em;
}
.leadership-advisors-copy p {
  margin: 0 0 20px;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.75;
}
.leadership-advisors-copy .leadership-advisors-punch {
  margin-top: 30px;
  padding-top: 24px;
  border-top: 3px solid var(--red);
  color: var(--navy);
  font-size: 20px;
  line-height: 1.45;
}
@media (max-width: 800px) {
  .leadership-advisors { padding: 64px 0 70px; }
  .leadership-advisors-inner { grid-template-columns: 1fr; gap: 32px; }
}

/* =========================================================
   ABOUT — 2026 ORGANIZATIONAL BUILD
   ========================================================= */
.about-new-hero{position:relative;min-height:760px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}.about-new-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.about-new-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,43,.97) 0%,rgba(7,24,43,.90) 48%,rgba(7,24,43,.55) 100%)}.about-new-hero-content{position:relative;z-index:2;padding-top:95px;padding-bottom:90px;max-width:1050px}.about-new-kicker{margin:0 0 18px!important;color:#f4d37f!important;font-size:12px!important;font-weight:900;text-transform:uppercase;letter-spacing:.13em}.about-new-hero h1{margin:0 0 30px;max-width:950px;font-size:clamp(54px,7vw,90px);line-height:.94;letter-spacing:-.055em}.about-new-hero h1 span{color:#f4d37f}.about-new-hero-content>p{max-width:830px;color:rgba(255,255,255,.82);font-size:18px;line-height:1.72}.about-new-belief{max-width:830px;margin:30px 0;padding:24px 28px;border-left:5px solid var(--red);background:rgba(255,255,255,.07)}.about-new-belief span,.about-new-belief strong{display:block}.about-new-belief span{margin-bottom:7px;color:rgba(255,255,255,.58);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.about-new-belief strong{font-size:22px;line-height:1.4}.about-new-punch{color:#fff!important;font-size:22px!important}
.about-new-section{background:var(--paper)}.about-new-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.about-new-grid h2{margin:0;color:var(--navy);font-size:clamp(42px,5.2vw,70px);line-height:.98;letter-spacing:-.045em}.about-new-copy p{font-size:18px;line-height:1.75;color:#46515c}.about-new-lines{margin:30px 0;padding:28px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.about-new-lines strong{display:block;margin:0 0 12px;color:var(--navy);font-size:18px}.about-new-lines strong:last-child{margin-bottom:0}.about-new-callout{color:var(--red)!important;font-size:24px!important}
.about-new-split{display:grid;grid-template-columns:1fr 1fr;min-height:680px;background:var(--navy)}.about-new-image{min-height:600px}.about-new-image img{width:100%;height:100%;object-fit:cover}.about-new-split-copy{display:flex;flex-direction:column;justify-content:center;padding:85px clamp(45px,7vw,110px);color:#fff}.about-new-split-copy h2{margin:0 0 32px;color:#fff;font-size:clamp(42px,5vw,66px);line-height:.98}.about-new-split-copy p{color:rgba(255,255,255,.72);font-size:17px;line-height:1.72}.about-new-split-copy .about-new-punch{margin:6px 0 18px;color:#f4d37f!important}
.about-centers{background:#fff}.about-centers-intro{max-width:900px;margin-bottom:55px}.about-centers-intro h2{margin-bottom:28px;font-size:clamp(48px,6vw,78px);line-height:.95}.about-centers-intro h2 span{color:var(--red)}.about-centers-intro p{font-size:18px;line-height:1.7}.about-center-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.about-center-grid article{padding:42px;background:var(--paper);border-top:5px solid var(--navy)}.about-center-grid article:last-child{border-top-color:var(--red)}.about-center-grid article>span{display:block;margin-bottom:25px;color:var(--red);font-size:13px;font-weight:900;letter-spacing:.1em}.about-center-grid h3{margin-bottom:22px;color:var(--navy);font-size:30px;line-height:1.08}.about-center-grid p{font-size:16px;line-height:1.7}.about-center-grid a{display:inline-block;margin-top:12px;color:var(--navy);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.about-one-mission{margin:42px 0 0;padding-top:30px;border-top:1px solid var(--line);color:var(--navy);font-size:21px}
.about-sidelines{background:var(--paper)}.about-sidelines .about-new-copy strong{color:var(--navy)}
.about-force{position:relative;min-height:700px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}.about-force>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.about-force-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,43,.97),rgba(7,24,43,.83) 60%,rgba(7,24,43,.55))}.about-force-content{position:relative;z-index:2;padding-top:100px;padding-bottom:100px}.about-force-content>p{margin:0 0 5px;color:rgba(255,255,255,.68);font-size:22px;font-weight:800}.about-force h2{margin:0 0 40px;color:#f4d37f;font-size:clamp(58px,7vw,92px);line-height:.95}.about-force-copy{max-width:820px}.about-force-copy p{color:rgba(255,255,255,.76);font-size:18px;line-height:1.72}.about-force-final{max-width:900px;margin-top:38px;padding-top:30px;border-top:1px solid rgba(255,255,255,.2)}.about-force-final strong{display:block;margin:8px 0;color:#fff;font-size:21px;line-height:1.45}.about-force-final strong:last-child{color:#f4d37f;font-size:25px}
@media(max-width:980px){.about-new-grid,.about-new-split,.about-center-grid{grid-template-columns:1fr}.about-new-grid{gap:38px}.about-new-split-copy{padding:70px 48px}.about-new-image{min-height:500px}.about-new-hero{min-height:auto}.about-new-hero-content{padding-top:120px;padding-bottom:75px}}
@media(max-width:640px){.about-new-hero-content{padding-top:100px;padding-bottom:65px}.about-new-hero h1{font-size:49px}.about-new-split-copy{padding:60px 24px}.about-center-grid article{padding:30px 24px}.about-new-copy p,.about-new-split-copy p,.about-centers-intro p,.about-force-copy p{font-size:16px}.about-force{min-height:650px}}

/* =========================================================
   CONTACT — 2026 ORGANIZATIONAL BUILD
   ========================================================= */
.contact-new-hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}.contact-new-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.contact-new-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,43,.97) 0%,rgba(7,24,43,.89) 52%,rgba(7,24,43,.55) 100%)}.contact-new-hero-content{position:relative;z-index:2;padding-top:105px;padding-bottom:90px;max-width:980px}.contact-new-hero h1{margin:0 0 34px;font-size:clamp(62px,8vw,102px);line-height:.92;letter-spacing:-.06em}.contact-new-hero h1 span{color:#f4d37f}.contact-new-hero-content p{max-width:820px;color:rgba(255,255,255,.82);font-size:18px;line-height:1.72}.contact-new-hero-content p+p{margin-top:18px}.contact-new-hero-content strong{color:#fff}
.contact-conversation{background:var(--paper)}.contact-conversation-intro{max-width:900px;margin-bottom:50px}.contact-conversation-intro h2{margin:0;color:var(--navy);font-size:clamp(48px,6vw,78px);line-height:.96;letter-spacing:-.045em}.contact-conversation-intro h2 span{color:var(--red)}.contact-paths{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-paths article{padding:36px 38px;background:#fff;border-top:4px solid var(--navy);box-shadow:0 8px 24px rgba(11,29,48,.04)}.contact-paths article:nth-child(2),.contact-paths article:nth-child(4){border-top-color:var(--red)}.contact-paths h3{margin:0 0 15px;color:var(--navy);font-size:24px;line-height:1.15}.contact-paths p{margin:0;color:#46515c;font-size:16px;line-height:1.68}.contact-direct{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:42px;padding:34px 38px;background:var(--navy);color:#fff}.contact-direct span{font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.contact-direct a{color:#f4d37f;font-size:clamp(24px,3vw,38px);font-weight:900;letter-spacing:-.03em}.contact-final{padding:75px 0;background:var(--red);color:#fff}.contact-final p{max-width:980px;margin:0;font-size:clamp(32px,4.2vw,56px);font-weight:900;line-height:1.05;letter-spacing:-.04em}
@media(max-width:800px){.contact-new-hero{min-height:auto}.contact-new-hero-content{padding-top:120px;padding-bottom:75px}.contact-paths{grid-template-columns:1fr}.contact-direct{align-items:flex-start;flex-direction:column}.contact-paths article{padding:30px 26px}}
@media(max-width:640px){.contact-new-hero h1{font-size:58px}.contact-new-hero-content p{font-size:16px}.contact-final{padding:58px 0}}

/* Homepage refinement pass — 2026-09-15 */
.new-home-hero .hero-line-one { white-space: nowrap; }

.voice-grid-photo { grid-template-columns: 1fr 1fr; gap: 64px; align-items: center; }
.voice-photo { width: 100%; min-height: 520px; overflow: hidden; }
.voice-photo img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; display: block; }
.voice-grid-photo .voice-copy h2 { margin: 0 0 34px; color: var(--navy); font-size: clamp(44px,5vw,70px); line-height: .98; }

.centers-intro { max-width: 1000px; margin: 0 auto 55px; text-align: center; }
.centers-intro > p:last-child { max-width: 900px; margin-left: auto; margin-right: auto; }

.national-network .split-content .network-heading { margin: 0 0 30px; color: #111; font-size: clamp(38px,4.2vw,58px); font-weight: 900; line-height: 1; letter-spacing: -.04em; white-space: nowrap; }

.policy-grid-revised { align-items: start; }
.policy-grid-revised .policy-list { border-left: 0; padding-left: 0; }
.policy-grid-revised .policy-list h2 { margin: 0 0 38px; color: var(--navy); font-size: clamp(44px,5vw,70px); line-height: .98; }
.policy-grid-revised .policy-list p { padding-bottom: 0; margin-bottom: 22px; border-bottom: 0; }
.policy-grid-revised .policy-punch strong { color: var(--navy); }

@media(max-width:1100px){
  .new-home-hero .hero-line-one { white-space: normal; }
  .national-network .split-content .network-heading { white-space: normal; }
}
@media(max-width:980px){
  .voice-grid-photo { grid-template-columns: 1fr; gap: 35px; }
  .voice-photo,.voice-photo img { min-height: 420px; }
  .policy-grid-revised .policy-spacer { display:none; }
}


/* Homepage refinement pass 2 — 2026-09-15 */
.new-home-hero h1 span { color: var(--white); }
.voice-split-full { grid-template-columns: 1fr 1fr; background: var(--paper); }
.voice-split-full .voice-photo { min-height: 650px; }
.voice-split-full .voice-photo img { min-height: 650px; }
.voice-split-full .voice-copy { padding: 100px clamp(48px,7vw,110px); }
.voice-split-full .voice-copy h2 { margin:0 0 34px; color:var(--navy); font-size:clamp(44px,5vw,70px); line-height:.98; }
.national-network .split-content .network-heading { white-space: normal; }
.national-network .split-content .real-world-heading { color:#111; margin:20px 0 22px; }
@media(max-width:980px){
  .voice-split-full { grid-template-columns:1fr; }
  .voice-split-full .voice-photo,.voice-split-full .voice-photo img { min-height:420px; }
  .voice-split-full .voice-copy { padding:70px 28px; }
}

/* Homepage refinement pass 3 — Policy Meets Reality split */
.policy-split-full {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 680px;
  padding: 0;
  background: #fff;
}
.policy-copy-side {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 90px clamp(48px, 7vw, 110px);
}
.policy-copy-side h2 {
  margin: 0 0 38px;
  color: var(--navy);
  font-size: clamp(44px, 5vw, 70px);
  line-height: .98;
  letter-spacing: -.04em;
}
.policy-copy-side p {
  margin: 0 0 22px;
  color: var(--ink);
  font-size: 17px;
  line-height: 1.65;
}
.policy-copy-side .policy-punch {
  margin-top: 12px;
  color: #111;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.45;
}
.policy-copy-side .policy-punch strong { color: #111; }
.policy-image-side { min-height: 680px; overflow: hidden; }
.policy-image-side img {
  width: 100%;
  height: 100%;
  min-height: 680px;
  object-fit: cover;
  display: block;
}
@media(max-width:980px){
  .policy-split-full { grid-template-columns: 1fr; min-height: auto; }
  .policy-copy-side { padding: 70px 28px; }
  .policy-image-side,.policy-image-side img { min-height: 440px; }
}

/* Homepage refinement V4 — center imagery and spacing */
.center-card.center-card-image {
  min-height: 0;
  padding-bottom: 38px;
}
.center-card.center-card-image h3 {
  margin-bottom: 26px;
}
.center-card.center-card-image .center-photo {
  width: 100%;
  height: 280px;
  margin: 0 0 28px;
  overflow: hidden;
  background: #0b1624;
}
.center-card.center-card-image .center-photo img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}
.center-card.center-ai .center-photo img { object-position: center center; }
.center-card.center-prosecutor .center-photo img { object-position: 42% center; }
.center-card.center-card-image .center-link { margin-top: 0; }

.national-network .split-content .real-world-heading {
  font-size: 17px;
  line-height: 1.75;
  font-weight: 800;
  letter-spacing: 0;
  margin: 20px 0 28px;
}
.policy-copy-side .policy-punch {
  margin-top: 30px;
  font-size: inherit;
  line-height: inherit;
  letter-spacing: 0;
  font-weight: 800;
}
.policy-copy-side .policy-punch strong {
  display: block;
  margin-top: 18px;
}
@media (max-width: 640px) {
  .center-card.center-card-image .center-photo { height: 220px; }
}


/* Homepage refinement V6 — align Center cards */
@media (min-width: 981px) {
  .center-card.center-card-image h3 {
    min-height: 100px;
    display: flex;
    align-items: flex-end;
  }
}

/* Homepage refinement V7 — lock Center image/link alignment */
@media (min-width: 981px) {
  .center-grid {
    align-items: stretch;
  }
  .center-card.center-card-image {
    display: grid;
    grid-template-rows: 126px 280px auto;
    align-content: start;
  }
  .center-card.center-card-image h3 {
    min-height: 0;
    height: 126px;
    margin: 0;
    padding: 0 0 26px;
    display: flex;
    align-items: flex-end;
  }
  .center-card.center-card-image .center-photo {
    height: 280px;
    margin: 0;
  }
  .center-card.center-card-image .center-link {
    margin: 0;
    padding-top: 28px;
    align-self: start;
  }
}

/* AI Center page refinement — approved photography and layout */
.ai-hero h1 span{color:#fff!important}.ai-hero p{color:#fff!important;margin:0 0 18px}.ai-hero p strong{color:#fff!important}.ai-hero-punch{border:0!important;padding-top:0!important}
.ai-photo-split{display:grid!important;grid-template-columns:1fr 1fr!important;padding:0!important;min-height:720px;align-items:stretch}.ai-section-photo{min-height:720px;overflow:hidden}.ai-section-photo img{width:100%;height:100%;object-fit:cover;display:block}.ai-section-copy{padding:85px clamp(50px,6vw,100px);align-self:center}.ai-section-copy h2{margin:0 0 34px;color:var(--navy);font-size:clamp(38px,4.2vw,62px);line-height:.98;letter-spacing:-.04em}.ai-section-copy p{margin:0 0 20px;color:#46515c;font-size:18px;line-height:1.7}.ai-section-copy p:last-child{margin-bottom:0}.ai-intro .ai-section-copy h2{font-size:clamp(36px,3.8vw,56px)}
.ai-innovation{background:var(--navy)}.ai-innovation .ai-section-copy h2{color:#fff}.ai-innovation .ai-section-copy p{color:rgba(255,255,255,.78)}
.ai-action-section{background:#f4f1e9}.ai-action-section .ai-section-copy>p:first-of-type{color:#1c252d;font-size:18px;font-weight:400}
.ai-split-copy p{margin:0 0 20px}.ai-chain{border:0!important;margin:0!important}.ai-chain strong{border:0!important;padding:0!important}
.ai-table-section{background:var(--navy)}.ai-table-section .ai-section-copy h2{color:#fff}.ai-table-section .ai-section-copy p{color:rgba(255,255,255,.78)}
.ai-closing-condensed{max-width:850px;margin-left:auto;margin-right:auto}.ai-closing-condensed p{font-size:18px;line-height:1.7}.ai-closing .closing-inner{padding-top:80px;padding-bottom:80px}
@media(max-width:980px){.ai-photo-split{grid-template-columns:1fr!important;min-height:0}.ai-section-photo{min-height:460px}.ai-photo-right .ai-section-photo{order:-1}.ai-section-copy{padding:65px 42px}}
@media(max-width:600px){.ai-section-photo{min-height:340px}.ai-section-copy{padding:52px 24px}.ai-section-copy h2{font-size:38px}.ai-intro .ai-section-copy h2{font-size:36px}}

/* AI Center final section orientation — text left, image right */
.ai-split-text-left .ai-split-copy{grid-column:1;grid-row:1}
.ai-split-text-left .ai-split-image{grid-column:2;grid-row:1}
.ai-table-text-left .ai-section-copy{grid-column:1;grid-row:1}
.ai-table-text-left .ai-section-photo{grid-column:2;grid-row:1}
@media(max-width:980px){.ai-split-text-left .ai-split-copy,.ai-split-text-left .ai-split-image,.ai-table-text-left .ai-section-copy,.ai-table-text-left .ai-section-photo{grid-column:1;grid-row:auto}.ai-split-text-left .ai-split-image,.ai-table-text-left .ai-section-photo{order:-1}}

/* AI Center — maintain equal 50/50 text/image proportions through remaining sections */
@media (min-width: 981px) {
  .ai-split.ai-split-text-left {
    grid-template-columns: 1fr 1fr;
    align-items: stretch;
  }
  .ai-split.ai-split-text-left .ai-split-copy,
  .ai-split.ai-split-text-left .ai-split-image,
  .ai-table-section.ai-table-text-left .ai-section-copy,
  .ai-table-section.ai-table-text-left .ai-section-photo {
    width: 100%;
    min-width: 0;
  }
  .ai-split.ai-split-text-left .ai-split-image {
    min-height: 720px;
    overflow: hidden;
  }
  .ai-split.ai-split-text-left .ai-split-image img,
  .ai-table-section.ai-table-text-left .ai-section-photo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }
}

/* Prosecutor Accountability — approved photography layout */
.pa-hero{
  position:relative;
  background:
    linear-gradient(90deg,rgba(7,24,43,.88) 0%,rgba(7,24,43,.78) 48%,rgba(7,24,43,.42) 100%),
    url('../images/prosecutor-hero.png') center center/cover no-repeat;
}
.pa-photo-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;padding:0!important;min-height:680px}
.pa-photo-split>.pa-photo-side,.pa-photo-split>.pa-text-side{width:100%;min-width:0}
.pa-photo-side{position:relative;overflow:hidden;min-height:680px}
.pa-photo-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.pa-text-side{display:flex;flex-direction:column;justify-content:center;padding:86px clamp(42px,6vw,110px)}
.pa-text-side h2{font-size:clamp(42px,4.7vw,68px);line-height:.98}
.pa-expose-section .pa-expose-wrap{max-width:none}
@media(max-width:980px){
  .pa-photo-split{grid-template-columns:1fr;min-height:0}
  .pa-photo-side{min-height:460px}
  .pa-photo-right>.pa-photo-side{order:1}
  .pa-photo-right>.pa-text-side{order:2}
  .pa-text-side{padding:64px 7vw}
}
@media(max-width:640px){.pa-photo-side{min-height:340px}.pa-text-side{padding:50px 24px}}

/* Prosecutor Accountability — copy/layout refinement */
.pa-hero h1,.pa-hero h1 span{color:#fff!important}
.pa-hero p{color:#fff!important}
.pa-after-arrest .pa-body p,
.pa-dark-section .pa-body p,
.pa-expose-copy p,
.pa-closing-copy p{font-size:18px!important;line-height:1.72!important;margin:0 0 20px!important}
.pa-expose-wrap h2,.pa-expose-wrap h2 span{color:var(--navy)!important}
.pa-expose-copy{margin-top:34px;color:var(--ink)}
.pa-expose-copy p{color:var(--ink)!important}
.pa-expose-section .pa-photo-side{background:#0b1521}
.pa-expose-section .pa-photo-side img{object-fit:contain!important;object-position:center center!important}
.pa-closing-copy{max-width:820px;margin:30px auto 0}
.pa-closing-copy p{color:rgba(255,255,255,.9)!important}

/* Prosecutor Accountability — balanced closing typography */
.pa-closing .closing-inner{max-width:980px;padding-top:88px;padding-bottom:92px}
.pa-closing .closing-inner>p,
.pa-closing .closing-inner>h2{margin:0 auto;color:#fff;font-size:clamp(34px,4.2vw,54px);font-weight:900;line-height:1.05;letter-spacing:-.035em}
.pa-closing .closing-inner>p{margin-bottom:8px}
.pa-closing .closing-inner>h2{margin-bottom:36px}
.pa-closing .pa-closing-copy{max-width:820px;margin:0 auto}
.pa-closing .pa-closing-copy p{margin:0 0 18px!important;color:rgba(255,255,255,.9)!important;font-size:18px!important;font-weight:400!important;line-height:1.72!important;letter-spacing:0!important}
.pa-closing .pa-closing-copy p:last-child{margin-bottom:0!important}

/* Leadership advisors — approved courtroom split layout */
.leadership-advisors-inner {
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: stretch;
}
.leadership-advisors-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.leadership-advisors-heading {
  margin-bottom: 30px;
}
.leadership-advisors-copy .leadership-advisors-punch {
  margin-top: 20px;
  padding-top: 0;
  border-top: 0;
}
.leadership-advisors-image {
  min-height: 500px;
  overflow: hidden;
}
.leadership-advisors-image img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
}
@media (max-width: 800px) {
  .leadership-advisors-inner { grid-template-columns: 1fr; gap: 36px; }
  .leadership-advisors-image { min-height: 360px; }
}

/* About page — approved photography integration */
.about-new-hero>img{object-position:center center}
.about-photo-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:680px;background:var(--paper)}
.about-photo-side{min-width:0;min-height:680px;overflow:hidden}
.about-photo-side img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-photo-copy{display:flex;flex-direction:column;justify-content:center;padding:85px clamp(50px,6vw,100px);min-width:0}
.about-photo-copy h2{margin:0 0 34px;color:var(--navy);font-size:clamp(42px,5.2vw,70px);line-height:.98;letter-spacing:-.045em}
.about-why-section .about-photo-side img{object-position:center}
.about-new-split .about-new-image img{object-position:center}
.about-centers-feature{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;margin-bottom:55px;background:var(--paper)}
.about-centers-feature .about-centers-intro{max-width:none;margin:0;padding:64px 58px}
.about-centers-photo{min-height:520px;overflow:hidden}
.about-centers-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-sidelines{background:var(--paper)}
@media(max-width:980px){
  .about-photo-split,.about-centers-feature{grid-template-columns:1fr}
  .about-photo-side{min-height:460px}
  .about-photo-right .about-photo-side{order:-1}
  .about-photo-copy{padding:65px 42px}
  .about-centers-photo{min-height:440px;order:-1}
  .about-centers-feature .about-centers-intro{padding:55px 42px}
}
@media(max-width:640px){
  .about-photo-side{min-height:360px}
  .about-photo-copy{padding:55px 24px}
  .about-centers-feature .about-centers-intro{padding:48px 24px}
  .about-centers-photo{min-height:360px}
}


/* About page clean editorial system — 2026-09-15 */
.about-clean-hero{position:relative;min-height:720px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}
.about-clean-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.about-clean-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,24,43,.94) 0%,rgba(7,24,43,.82) 48%,rgba(7,24,43,.38) 100%)}
.about-clean-hero-content{position:relative;z-index:2;padding-top:110px;padding-bottom:95px;max-width:1080px}
.about-clean-hero-content>p{margin:0 0 20px;color:#fff;font-size:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.about-clean-hero h1{max-width:900px;margin:0 0 34px;color:#fff;font-size:clamp(52px,6.7vw,86px);line-height:.96;letter-spacing:-.05em}
.about-clean-body{max-width:820px}
.about-clean-body p{margin:0 0 20px;color:#fff;font-size:18px;line-height:1.72}
.about-clean-body strong{color:#fff;font-weight:800}
.about-clean-split{display:grid;grid-template-columns:1fr 1fr;min-height:650px;background:#fff}
.about-clean-image{min-width:0;min-height:650px;overflow:hidden}
.about-clean-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.about-clean-copy{display:flex;flex-direction:column;justify-content:center;padding:78px clamp(48px,6vw,96px);background:#fff}
.about-clean-copy h2{margin:0 0 30px;color:var(--navy);font-size:clamp(40px,4.6vw,62px);line-height:1;letter-spacing:-.04em}
.about-clean-copy p{margin:0 0 20px;color:#36424d;font-size:18px;line-height:1.72}
.about-clean-copy p:last-child{margin-bottom:0}
.about-clean-copy strong{color:inherit;font-size:inherit;font-weight:800}
@media(max-width:980px){
  .about-clean-hero{min-height:auto}
  .about-clean-hero-content{padding-top:120px;padding-bottom:80px}
  .about-clean-split{grid-template-columns:1fr;min-height:0}
  .about-clean-image{min-height:470px}
  .about-clean-split.image-right .about-clean-image{order:-1}
  .about-clean-copy{padding:64px 42px}
}
@media(max-width:640px){
  .about-clean-hero h1{font-size:48px}
  .about-clean-body p,.about-clean-copy p{font-size:16px}
  .about-clean-image{min-height:360px}
  .about-clean-copy{padding:54px 24px}
}

/* Contact page color refinements — 2026-09-15 */
.contact-new-hero h1 span { color: #fff; }
.contact-conversation-intro h2 span { color: var(--navy); }
.contact-direct a { color: #fff; }

/* Final site review adjustments — 2026-09-15 */
/* Homepage: keep the two Center image/text panels exactly equal */
@media (min-width: 981px) {
  .center-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
  .center-card.center-card-image { width: 100%; height: 100%; box-sizing: border-box; }
  .center-card.center-card-image .center-photo { width: 100%; height: 280px; }
}
.new-closing h2 { color: #fff; }
.ai-closing h2 { color: #fff; }
.leadership-hero h1 span { color: #fff; }
.contact-final { background: var(--navy); }


/* Organized Retail Crime Center — 2026-09-15 */
.orc-hero{position:relative;min-height:800px;display:flex;align-items:flex-end;overflow:hidden;background:var(--navy);color:#fff}
.orc-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.orc-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,35,.96) 0%,rgba(5,20,35,.86) 50%,rgba(5,20,35,.30) 100%),linear-gradient(0deg,rgba(5,20,35,.72),transparent 58%)}
.orc-hero-content{position:relative;z-index:2;padding-top:150px;padding-bottom:86px;max-width:1200px}
.orc-kicker{margin:0 0 22px!important;color:#fff!important;font-size:13px!important;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.orc-hero h1{max-width:1000px;margin:0 0 32px;color:#fff;font-size:clamp(56px,6.8vw,94px);line-height:.93;letter-spacing:-.05em}
.orc-hero-copy{max-width:820px}.orc-hero-copy p{margin:0 0 18px;color:#fff;font-size:18px;line-height:1.68}.orc-hero-copy p:last-child{margin-bottom:0}.orc-hero-copy strong{color:#fff}
.orc-source{display:inline-block;margin-left:5px;color:rgba(255,255,255,.64);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none}.orc-source:hover{color:#fff}
.orc-split{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:720px;background:#fff}
.orc-image{min-width:0;min-height:720px;overflow:hidden}.orc-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.orc-copy{display:flex;flex-direction:column;justify-content:center;padding:82px clamp(48px,6vw,100px);min-width:0}
.orc-copy h2{margin:0 0 34px;color:var(--navy);font-size:clamp(40px,4.7vw,64px);line-height:.98;letter-spacing:-.045em}
.orc-copy p{margin:0 0 19px;color:#3d4954;font-size:18px;line-height:1.7}.orc-copy p:last-child{margin-bottom:0}.orc-copy strong{color:inherit;font-weight:800}
.orc-dark,.orc-final{background:var(--navy)}.orc-dark .orc-copy h2,.orc-final .orc-copy h2{color:#fff}.orc-dark .orc-copy p,.orc-final .orc-copy p{color:rgba(255,255,255,.84)}.orc-dark .orc-source{color:rgba(255,255,255,.62)}
.orc-final .orc-copy p strong{color:#fff}
/* Homepage: three equal Center panels */
@media(min-width:981px){.center-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.center-card.center-card-image{grid-template-rows:150px 280px auto}.center-card.center-card-image h3{height:150px;font-size:clamp(27px,2.3vw,38px)}.center-orc::before{background:#f4d37f}}
@media(max-width:980px){.orc-split{grid-template-columns:1fr;min-height:0}.orc-image{min-height:460px}.orc-split.image-right .orc-image{order:-1}.orc-copy{padding:64px 42px}}
@media(max-width:640px){.orc-hero{min-height:auto}.orc-hero-content{padding-top:125px;padding-bottom:70px}.orc-hero h1{font-size:48px}.orc-hero-copy p,.orc-copy p{font-size:16px}.orc-image{min-height:350px}.orc-copy{padding:54px 24px}.orc-copy h2{font-size:38px}.center-card.center-card-image h3{height:auto}}

/* Final homepage alignment correction — 2026-09-16
   Keep homepage photography and adjacent text panels flush at the bottom,
   matching the split-section treatment used throughout the rest of the site. */
@media (min-width: 981px) {
  .voice-split-full,
  .national-network,
  .policy-split-full {
    align-items: stretch;
  }

  .voice-split-full > .split-image,
  .voice-split-full > .split-content,
  .national-network > .split-image,
  .national-network > .split-content,
  .policy-split-full > .policy-copy-side,
  .policy-split-full > .policy-image-side {
    height: 100%;
    box-sizing: border-box;
  }

  .voice-split-full > .split-image img,
  .national-network > .split-image img,
  .policy-split-full > .policy-image-side img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 100%;
    object-fit: cover;
  }
}


/* FINAL homepage split alignment fix — 2026-09-16 */
@media (min-width: 981px) {
  .voice-split-full,
  .national-network,
  .policy-split-full {
    display: grid;
    align-items: stretch;
  }

  .voice-split-full > .split-image,
  .national-network > .split-image,
  .policy-split-full > .policy-image-side {
    position: relative;
    min-height: 0;
    height: auto;
    overflow: hidden;
    align-self: stretch;
  }

  .voice-split-full > .split-image img,
  .national-network > .split-image img,
  .policy-split-full > .policy-image-side img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    object-fit: cover;
    display: block;
  }

  .voice-split-full > .split-content,
  .national-network > .split-content,
  .policy-split-full > .policy-copy-side {
    align-self: stretch;
    box-sizing: border-box;
  }
}


/* HOMEPAGE 2x2 CENTER INTERSECTION FIX — 2026-09-16
   Both split rows use the exact same 50/50 columns, so the two photos
   and two white text panels meet at one common center point. */
@media (min-width: 981px) {
  .voice-split-full,
  .national-network,
  .policy-split-full {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    width: 100% !important;
  }

  .voice-split-full > *,
  .national-network > *,
  .policy-split-full > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .voice-split-full > .split-image,
  .national-network > .split-image,
  .policy-split-full > .policy-image-side {
    grid-column: auto !important;
  }

  .voice-split-full > .split-content,
  .national-network > .split-content,
  .policy-split-full > .policy-copy-side {
    grid-column: auto !important;
  }
}
