:root {
  --ink: #0f172a;
  --ink-2: #1e293b;
  --slate: #334155;
  --muted: #64748b;
  --muted-2: #8191a6;
  --line: #dbe5ef;
  --line-strong: #c2d0df;
  --paper: #f8fafc;
  --paper-2: #ffffff;
  --paper-3: #eef5fb;
  --blue: #2563eb;
  --blue-2: #1d4ed8;
  --blue-3: #0f4c81;
  --sky: #38bdf8;
  --steel: #e6eef7;
  --ready: #0f766e;
  --shadow-soft: 0 18px 50px rgba(15, 23, 42, 0.08);
  --shadow-panel: 0 28px 70px rgba(15, 23, 42, 0.14);
  --max: 1180px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: Inter, "IBM Plex Sans", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  line-height: 1.5;
}

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

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

.skip-link {
  position: absolute;
  left: 1rem;
  top: -4rem;
  z-index: 1000;
  padding: 0.65rem 0.9rem;
  color: #fff;
  background: var(--blue);
  font-weight: 800;
  transition: top 160ms ease;
}

.skip-link:focus {
  top: 1rem;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 1.25rem;
  align-items: center;
  min-height: 68px;
  padding: 0 5vw;
  color: var(--ink);
  background: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid rgba(194, 208, 223, 0.82);
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.04);
  backdrop-filter: blur(18px);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 0.7rem;
  font-size: 1.2rem;
  font-weight: 850;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.brand-mark {
  width: 28px;
  height: 24px;
  position: relative;
  display: inline-block;
}

.brand-mark::before,
.brand-mark::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 3px solid var(--blue-2);
  transform: skew(-18deg) rotate(30deg);
  border-radius: 3px;
}

.brand-mark::after {
  inset: 8px 6px 4px 8px;
  border-width: 2px;
  opacity: 0.72;
}

.nav-links {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: clamp(0.75rem, 1.7vw, 1.55rem);
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.065em;
}

.nav-links a {
  color: var(--slate);
  transition: color 160ms ease;
}

.nav-links a:hover,
.nav-links a:focus-visible {
  color: var(--blue-2);
}

.header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 1rem;
  color: var(--blue-2);
  border: 1px solid rgba(37, 99, 235, 0.32);
  background: rgba(37, 99, 235, 0.04);
  font-size: 0.72rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.header-cta:hover,
.header-cta:focus-visible {
  color: #fff;
  background: var(--blue);
  border-color: var(--blue);
}

.section-dark,
.section-light,
.section-mixed {
  color: var(--ink);
  background: var(--paper-2);
}

.hero {
  min-height: 650px;
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(470px, 0.92fr) minmax(520px, 1.08fr);
  align-items: stretch;
  padding: 0;
  background:
    linear-gradient(115deg, rgba(255,255,255,0.96) 0 39%, rgba(239,246,255,0.92) 39% 66%, rgba(226,236,247,0.96) 66% 100%),
    radial-gradient(circle at 78% 16%, rgba(56, 189, 248, 0.2), transparent 32rem);
  border-bottom: 1px solid var(--line);
}

.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(15, 76, 129, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 76, 129, 0.055) 1px, transparent 1px),
    linear-gradient(118deg, transparent 0 47.8%, rgba(37, 99, 235, 0.14) 47.8% 48%, transparent 48% 100%);
  background-size: 56px 56px, 56px 56px, auto;
  pointer-events: none;
}

.hero-copy {
  position: relative;
  z-index: 2;
  align-self: center;
  max-width: 720px;
  padding: clamp(4.6rem, 7vw, 6.8rem) clamp(2rem, 4vw, 4.8rem) clamp(3rem, 5vw, 4.4rem) 5vw;
}

.eyebrow {
  margin: 0 0 1rem;
  color: var(--blue-3);
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

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

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

h1 {
  max-width: 680px;
  margin-bottom: 1.1rem;
  color: var(--ink);
  font-size: clamp(3rem, 5vw, 5.25rem);
  font-weight: 760;
  line-height: 0.98;
  letter-spacing: -0.065em;
  text-transform: none;
}

h1 span {
  display: block;
  color: inherit;
}

.hero-lede-group {
  max-width: 620px;
  padding: 1rem 1.15rem 1rem 1.2rem;
  border-left: 3px solid var(--blue);
  background: rgba(255, 255, 255, 0.58);
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.06);
  backdrop-filter: blur(10px);
}

.hero-lede,
.hero-lede-group p {
  margin-bottom: 0.72rem;
  color: var(--slate);
  font-size: clamp(0.98rem, 1.08vw, 1.12rem);
  line-height: 1.52;
}

.hero-lede-group p:last-child {
  margin-bottom: 0;
}

.hero-lede-group .hero-lede {
  color: var(--ink);
  font-weight: 680;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
  margin: 1.55rem 0 1.8rem;
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.7rem;
  min-height: 44px;
  padding: 0 1.08rem;
  border: 1px solid transparent;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.045em;
  text-transform: uppercase;
  transition: transform 160ms ease, background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.button:hover,
.button:focus-visible {
  transform: translateY(-1px);
}

.button-primary {
  color: #fff;
  background: linear-gradient(180deg, #2f73ee, var(--blue));
  box-shadow: 0 14px 34px rgba(37, 99, 235, 0.22);
}

.button-primary:hover,
.button-primary:focus-visible {
  background: var(--blue-2);
}

.button-secondary {
  color: var(--blue-2);
  background: rgba(255, 255, 255, 0.7);
  border-color: rgba(37, 99, 235, 0.26);
}

.button-secondary:hover,
.button-secondary:focus-visible {
  background: #fff;
  border-color: var(--blue);
}

.hero-facts {
  max-width: 690px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin: 0;
  border: 1px solid rgba(194, 208, 223, 0.92);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: var(--shadow-soft);
  backdrop-filter: blur(10px);
}

.hero-facts div {
  min-height: 126px;
  padding: 1rem 1.05rem;
  border-right: 1px solid var(--line);
}

.hero-facts div:last-child {
  border-right: 0;
}

.hero-facts dt {
  color: var(--ink);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.hero-facts dd {
  margin: 0.26rem 0 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.45;
}

.hero-visual {
  position: relative;
  z-index: 1;
  min-height: 100%;
  display: grid;
  align-items: stretch;
  overflow: hidden;
  border-left: 1px solid rgba(194, 208, 223, 0.9);
}

.hero-visual::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(248,250,252,0.96), rgba(248,250,252,0.28) 24%, rgba(248,250,252,0.02) 54%),
    linear-gradient(180deg, rgba(255,255,255,0.08), rgba(226,236,247,0.88));
  pointer-events: none;
}

.hero-visual::after {
  content: "";
  position: absolute;
  inset: 2.25rem 4vw 2.25rem 0;
  z-index: 3;
  border: 1px solid rgba(15, 76, 129, 0.16);
  pointer-events: none;
}

.hero-visual img {
  width: 100%;
  height: 100%;
  min-height: 650px;
  object-fit: cover;
  object-position: 52% center;
  filter: saturate(0.7) contrast(1.04) brightness(1.08);
  transform: scale(1.015);
}

.hero-callout {
  position: absolute;
  z-index: 4;
  right: 4.6vw;
  bottom: 3rem;
  width: min(320px, 72%);
  padding: 1.05rem 1.15rem;
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(194, 208, 223, 0.95);
  box-shadow: var(--shadow-panel);
  backdrop-filter: blur(12px);
}

.hero-callout::after {
  content: "";
  display: block;
  width: 72%;
  height: 2px;
  margin-top: 1rem;
  background: linear-gradient(90deg, var(--blue), rgba(56, 189, 248, 0.6));
}

.hero-callout p {
  margin: 0;
  color: var(--slate);
  font-size: 0.95rem;
  line-height: 1.38;
}

.readiness-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 0 5vw;
  color: var(--ink);
  background: #fff;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.readiness-item {
  position: relative;
  min-height: 118px;
  padding: 1.15rem 1.15rem 1.05rem;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.95), rgba(248,250,252,0.98));
}

.readiness-item:first-child {
  border-left: 1px solid var(--line);
}

.readiness-item::before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  margin-bottom: 0.55rem;
  border: 1px solid rgba(37, 99, 235, 0.42);
  background:
    linear-gradient(135deg, transparent 0 47%, rgba(37,99,235,0.48) 47% 53%, transparent 53% 100%);
}

.readiness-item span {
  position: absolute;
  top: 1.15rem;
  right: 1.1rem;
  color: #94a3b8;
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.11em;
}

.readiness-item h2 {
  margin-bottom: 0.34rem;
  font-size: 0.83rem;
  line-height: 1.15;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.readiness-item p {
  margin: 0;
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.38;
}

.pressure,
.industries,
.deliverables,
.reports,
.before-after {
  padding: clamp(3.8rem, 6vw, 5.6rem) 5vw;
}

.section-heading {
  max-width: var(--max);
  margin: 0 auto 2.2rem;
}

.section-heading.compact {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  column-gap: 3rem;
  align-items: end;
}

.section-heading.compact .eyebrow,
.section-heading.compact h2 {
  grid-column: 1;
}

.section-heading.compact p:last-child {
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
}

.section-heading h2,
.diagnostic h2,
.deliverables h2,
.final-cta h2 {
  margin-bottom: 0.85rem;
  color: var(--ink);
  font-size: clamp(2rem, 4vw, 3.75rem);
  line-height: 1;
  letter-spacing: -0.055em;
}

.section-heading > p:not(.eyebrow),
.deliverables-lead p,
.diagnostic-copy p,
.final-cta p {
  max-width: 820px;
  color: var(--muted);
  font-size: clamp(1rem, 1.12vw, 1.1rem);
}

.deadpan {
  margin-top: 1rem;
  font-weight: 700;
  color: var(--slate) !important;
}

.question-grid {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.75rem;
}

.question-grid article {
  min-height: 210px;
  padding: 1.25rem;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.045);
}

.question-grid span,
.step,
.timeline-item span {
  display: inline-block;
  margin-bottom: 0.72rem;
  color: var(--blue-2);
  font-size: 0.78rem;
  font-weight: 950;
  letter-spacing: 0.08em;
}

.question-grid h3,
.industry-card h3,
.deliverable-grid h3,
.comparison-card h3,
.report-grid article,
.timeline-item h3,
.capability-card h3 {
  margin-bottom: 0.48rem;
  color: var(--ink);
  font-size: 1.03rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.question-grid p,
.industry-card p,
.comparison-card li,
.timeline-item p,
.capability-card p {
  margin-bottom: 0;
  color: var(--muted);
  font-size: 0.92rem;
}

.capabilities {
  padding: clamp(3.4rem, 6vw, 5.5rem) 5vw;
  background:
    linear-gradient(180deg, #f8fafc, #eef5fb);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.capability-grid {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.9rem;
}

.capability-card {
  position: relative;
  min-height: 330px;
  padding: 0 1.35rem 1.4rem;
  overflow: hidden;
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.055);
}

.capability-media {
  height: 76px;
  margin: 0 -1.35rem 1.25rem;
  border-bottom: 1px solid var(--line);
  background:
    linear-gradient(rgba(15,76,129,0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15,76,129,0.08) 1px, transparent 1px),
    linear-gradient(135deg, rgba(37,99,235,0.16), rgba(255,255,255,0.82));
  background-size: 26px 26px, 26px 26px, auto;
}

.capability-card::before {
  content: "";
  position: absolute;
  left: 1.35rem;
  right: 1.35rem;
  bottom: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--blue), rgba(56, 189, 248, 0.55));
  opacity: 0;
  transform: translateY(3px);
  transition: opacity 160ms ease, transform 160ms ease;
}

.capability-card:hover::before {
  opacity: 1;
  transform: translateY(0);
}

.capability-card h3 {
  font-size: 1.2rem;
  text-transform: uppercase;
}

.capability-subline {
  color: var(--blue-3) !important;
  font-weight: 760;
}

.capability-card a {
  display: inline-flex;
  gap: 0.55rem;
  margin-top: 1.05rem;
  color: var(--blue-2);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.industries {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 30%, rgba(37,99,235,0.06), transparent 20rem),
    linear-gradient(180deg, #fff, #f8fafc);
}

.industries::before {
  content: "";
  position: absolute;
  left: -6rem;
  top: 12rem;
  width: 24rem;
  height: 24rem;
  border: 1px solid rgba(15, 76, 129, 0.12);
  border-radius: 50%;
  pointer-events: none;
}

.industry-grid {
  position: relative;
  z-index: 1;
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

.industry-card {
  min-height: 178px;
  padding: 1.2rem;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.045);
}

.industry-card.primary {
  min-height: 218px;
  color: var(--ink);
  border-color: rgba(37, 99, 235, 0.24);
  background:
    linear-gradient(180deg, rgba(239,246,255,0.92), rgba(255,255,255,0.98)),
    radial-gradient(circle at 100% 0, rgba(56, 189, 248, 0.16), transparent 13rem);
}

.industry-card.primary h3,
.industry-card.primary p {
  color: var(--ink);
}

.diagnostic {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(420px, 1.05fr);
  gap: 3rem;
  align-items: center;
  padding: clamp(4.6rem, 7vw, 6.6rem) 5vw;
  color: #fff;
  background:
    linear-gradient(135deg, #10233a, #193b5c 56%, #0f4c81);
}

.diagnostic h2,
.final-cta h2 {
  color: #fff;
}

.diagnostic-copy {
  max-width: 680px;
  justify-self: end;
}

.diagnostic-copy p,
.diagnostic .section-heading > p:not(.eyebrow) {
  color: rgba(255,255,255,0.78);
}

.diagnostic .eyebrow,
.final-cta .eyebrow {
  color: #bfdbfe;
}

.diagnostic-panel {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  max-width: 610px;
  background: rgba(255, 255, 255, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.22);
  box-shadow: var(--shadow-panel);
}

.timeline-item {
  min-height: 200px;
  padding: 1.35rem;
  background: rgba(255, 255, 255, 0.08);
}

.timeline-item h3 {
  color: #fff;
  text-transform: uppercase;
}

.timeline-item p {
  color: rgba(255,255,255,0.72);
}

.deliverables {
  background: #fff;
}

.deliverables-lead {
  max-width: var(--max);
  margin: 0 auto 2rem;
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
  gap: 2.5rem;
  align-items: center;
}

.deliverables-lead img {
  width: 100%;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: var(--shadow-soft);
}

.deliverable-grid {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
}

.deliverable-grid article {
  min-height: 106px;
  display: flex;
  align-items: flex-end;
  padding: 1rem;
  border: 1px solid var(--line);
  background: linear-gradient(180deg, #fff, #f8fafc);
}

.deliverable-grid article::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  margin-right: 0.7rem;
  margin-bottom: 0.25rem;
  border: 2px solid var(--blue-2);
  border-radius: 50%;
  flex: 0 0 auto;
}

.deliverable-grid h3 {
  margin-bottom: 0;
  font-size: 0.98rem;
}

.reports {
  padding-top: 1rem;
  background: #f8fafc;
}

.report-grid {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.75rem;
}

.report-grid article {
  min-height: 86px;
  display: flex;
  align-items: center;
  padding: 1rem 1.1rem;
  border: 1px solid var(--line);
  background: #fff;
  font-weight: 850;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.035);
}

.boundaries {
  padding: clamp(4rem, 7vw, 6rem) 5vw;
  background: #eef5fb;
}

.boundary-panel {
  max-width: var(--max);
  margin: 0 auto;
  padding: 1.3rem 1.5rem;
  border: 1px solid var(--line-strong);
  border-left: 4px solid var(--blue);
  background: #fff;
  box-shadow: var(--shadow-soft);
}

.boundary-panel p {
  margin: 0;
  color: var(--slate);
  font-size: 1.06rem;
}

.comparison-grid {
  max-width: var(--max);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 1rem;
}

.comparison-card {
  padding: 1.5rem;
  border: 1px solid var(--line);
  background: #fff;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.045);
}

.comparison-card.before {
  background: linear-gradient(180deg, #fff, #f8fafc);
}

.comparison-card.after {
  color: var(--ink);
  border-color: rgba(37, 99, 235, 0.24);
  background:
    linear-gradient(180deg, rgba(239,246,255,0.95), rgba(255,255,255,0.98)),
    radial-gradient(circle at 100% 0, rgba(56, 189, 248, 0.15), transparent 18rem);
}

.comparison-card h3 {
  margin-bottom: 1rem;
  font-size: 1.2rem;
  text-transform: uppercase;
}

.comparison-card ul {
  margin: 0;
  padding-left: 1.1rem;
}

.comparison-card li + li {
  margin-top: 0.38rem;
}

.comparison-card.after li {
  color: var(--slate);
}

.final-line {
  max-width: var(--max);
  margin: 1.4rem auto 0;
  padding: 1.1rem 1.2rem;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line);
  border-left: 4px solid var(--ready);
  font-size: 1.05rem;
  font-weight: 800;
  box-shadow: var(--shadow-soft);
}

.final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2rem;
  align-items: center;
  padding: clamp(4rem, 7vw, 5.5rem) 5vw;
  color: #fff;
  background:
    linear-gradient(135deg, #10233a, #183b5d 54%, #0f4c81);
}

.final-cta > div {
  max-width: 850px;
}

.final-cta p {
  color: rgba(255,255,255,0.78);
}

.final-cta .button {
  align-self: center;
  min-width: 190px;
}

.site-footer {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.25rem 5vw;
  color: var(--muted);
  background: #fff;
  border-top: 1px solid var(--line);
  font-size: 0.82rem;
}

.site-footer p {
  margin: 0;
}

:focus-visible {
  outline: 3px solid rgba(37, 99, 235, 0.62);
  outline-offset: 3px;
}

@media (max-width: 1080px) {
  .site-header {
    grid-template-columns: auto auto;
  }

  .nav-links {
    grid-column: 1 / -1;
    grid-row: 2;
    justify-content: flex-start;
    padding-bottom: 0.9rem;
    overflow-x: auto;
  }

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

  .hero-copy {
    padding-right: 5vw;
  }

  .hero-visual {
    min-height: 420px;
    border-left: 0;
    border-top: 1px solid var(--line);
  }

  .hero-visual img {
    min-height: 420px;
  }

  .readiness-strip,
  .question-grid,
  .capability-grid,
  .industry-grid,
  .deliverable-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .readiness-item:nth-child(2n),
  .readiness-item:last-child {
    border-right: 1px solid var(--line);
  }

  .section-heading.compact,
  .diagnostic,
  .deliverables-lead,
  .final-cta {
    grid-template-columns: 1fr;
  }

  .section-heading.compact .eyebrow,
  .section-heading.compact h2,
  .section-heading.compact p:last-child {
    grid-column: auto;
    grid-row: auto;
  }

  .diagnostic-copy {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .site-header {
    position: static;
    padding: 1rem 1.1rem;
  }

  .brand {
    font-size: 1rem;
  }

  .header-cta {
    min-height: 36px;
    padding: 0 0.75rem;
  }

  .nav-links {
    gap: 1rem;
    font-size: 0.68rem;
  }

  .hero,
  .pressure,
  .industries,
  .deliverables,
  .reports,
  .before-after,
  .capabilities,
  .diagnostic,
  .boundaries,
  .final-cta {
    padding-left: 1.1rem;
    padding-right: 1.1rem;
  }

  .hero-copy {
    padding-top: 3.8rem;
    padding-right: 0;
    padding-left: 1.1rem;
  }

  h1 {
    font-size: clamp(2.55rem, 13vw, 4.2rem);
  }

  .hero-facts,
  .readiness-strip,
  .question-grid,
  .capability-grid,
  .industry-grid,
  .diagnostic-panel,
  .deliverable-grid,
  .report-grid,
  .comparison-grid {
    grid-template-columns: 1fr;
  }

  .hero-facts div,
  .readiness-item {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .hero-facts div:last-child,
  .readiness-item:last-child {
    border-bottom: 0;
  }

  .hero-callout {
    left: 1rem;
    right: 1rem;
    width: auto;
    bottom: 1rem;
  }

  .report-grid article,
  .deliverable-grid article {
    min-height: 76px;
  }

  .site-footer {
    flex-direction: column;
  }
}


/* POINTSTATE V2 PRODUCTION POLISH START */

*,
*::before,
*::after {
  box-sizing: border-box;
}

main {
  background:
    radial-gradient(circle at 14% 12%, rgba(37,99,235,.045), transparent 24rem),
    radial-gradient(circle at 88% 38%, rgba(14,165,233,.04), transparent 28rem),
    linear-gradient(90deg, rgba(37,99,235,.022) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.022) 1px, transparent 1px),
    #ffffff;
  background-size: auto, auto, 44px 44px, 44px 44px, auto;
}

.hero {
  background:
    linear-gradient(90deg, rgba(37,99,235,.032) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.032) 1px, transparent 1px),
    radial-gradient(circle at 31% 78%, transparent 0 98px, rgba(37,99,235,.075) 99px 100px, transparent 101px),
    radial-gradient(circle at 38% 84%, transparent 0 158px, rgba(37,99,235,.052) 159px 160px, transparent 161px),
    #ffffff !important;
  background-size: 42px 42px, 42px 42px, auto, auto, auto !important;
}

.hero,
.pressure,
.capabilities,
.industries,
.diagnostic,
.deliverables,
.reports,
.boundaries,
.before-after,
.final-cta {
  position: relative;
  overflow: hidden;
}

.hero::before,
.pressure::before,
.capabilities::before,
.industries::before,
.deliverables::before,
.reports::before,
.boundaries::before,
.before-after::before {
  content: "";
  position: absolute;
  pointer-events: none;
  inset: 0;
  z-index: 0;
  opacity: 0.22;
  background:
    linear-gradient(135deg, transparent 0 61%, rgba(37,99,235,.10) 61.2% 61.6%, transparent 61.8%),
    radial-gradient(circle at 84% 24%, transparent 0 118px, rgba(37,99,235,.065) 119px 120px, transparent 121px);
}

.hero > *,
.pressure > *,
.capabilities > *,
.industries > *,
.diagnostic > *,
.deliverables > *,
.reports > *,
.boundaries > *,
.before-after > *,
.final-cta > * {
  position: relative;
  z-index: 1;
}

.hero-visual::before,
.hero-visual::after {
  display: none !important;
  content: none !important;
}

.hero-visual img {
  filter: grayscale(.08) saturate(.92) contrast(1.03) brightness(1.06) !important;
  opacity: .94 !important;
}

.hero-lede-group {
  box-shadow: 0 18px 40px rgba(15,23,42,.06) !important;
}

.hero-facts div,
.readiness-item {
  background:
    linear-gradient(90deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.045) 1px, transparent 1px),
    rgba(255,255,255,.76) !important;
  background-size: 20px 20px, 20px 20px, auto !important;
}

.readiness-strip {
  position: relative;
}

.readiness-strip::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1px;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(37,99,235,.42), transparent);
  pointer-events: none;
}

.question-grid article,
.capability-card,
.industry-card,
.deliverable-grid article,
.report-grid article,
.comparison-grid article {
  border-color: rgba(148,163,184,.46) !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,250,252,.92)) !important;
  background-size: 22px 22px, 22px 22px, auto !important;
  box-shadow: 0 12px 32px rgba(15,23,42,.055) !important;
}

.question-grid article:hover,
.capability-card:hover,
.industry-card:hover,
.deliverable-grid article:hover,
.report-grid article:hover,
.comparison-grid article:hover {
  transform: translateY(-2px);
  border-color: rgba(37,99,235,.34) !important;
  box-shadow: 0 18px 44px rgba(15,23,42,.09) !important;
}

.question-grid article::before,
.capability-card::before,
.industry-card::before,
.deliverable-grid article::before,
.report-grid article::before,
.comparison-grid article::before,
.timeline-item::before,
.readiness-item::before {
  content: "";
  position: absolute;
  top: .9rem;
  right: .9rem;
  width: 14px;
  height: 14px;
  opacity: .36;
  background:
    linear-gradient(90deg, #2563eb 0 1.5px, transparent 1.5px),
    linear-gradient(180deg, #2563eb 0 1.5px, transparent 1.5px),
    linear-gradient(90deg, transparent 0 9px, #2563eb 9px 10.5px, transparent 10.5px),
    linear-gradient(180deg, transparent 0 9px, #2563eb 9px 10.5px, transparent 10.5px);
}

.question-grid article::after,
.capability-card::after,
.industry-card::after,
.deliverable-grid article::after,
.report-grid article::after,
.comparison-grid article::after {
  content: "";
  position: absolute;
  left: .95rem;
  right: .95rem;
  bottom: .85rem;
  height: 1px;
  opacity: .28;
  background: linear-gradient(90deg, rgba(37,99,235,.42), transparent 72%);
}

.question-grid article strong::before,
.industry-card strong::before,
.deliverable-grid article strong::before,
.report-grid article strong::before,
.comparison-grid article strong::before {
  content: "";
  display: inline-block;
  width: .42rem;
  height: .42rem;
  margin-right: .45rem;
  border: 1.5px solid rgba(37,99,235,.8);
  transform: rotate(45deg) translateY(-1px);
  vertical-align: middle;
}

.pressure,
.deliverables,
.reports,
.before-after,
.boundaries {
  background:
    radial-gradient(circle at 83% 12%, rgba(37,99,235,.05), transparent 18rem),
    linear-gradient(90deg, rgba(37,99,235,.018) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.018) 1px, transparent 1px),
    #ffffff !important;
  background-size: auto, 40px 40px, 40px 40px, auto !important;
}

.capabilities {
  background:
    radial-gradient(circle at 78% 30%, rgba(37,99,235,.075), transparent 20rem),
    linear-gradient(90deg, rgba(37,99,235,.022) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.022) 1px, transparent 1px),
    #f8fbff !important;
  background-size: auto, 40px 40px, 40px 40px, auto !important;
}

.industries {
  background:
    radial-gradient(circle at 12% 18%, rgba(37,99,235,.045), transparent 18rem),
    radial-gradient(circle at 88% 72%, rgba(14,165,233,.04), transparent 18rem),
    linear-gradient(90deg, rgba(37,99,235,.018) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.018) 1px, transparent 1px),
    #ffffff !important;
  background-size: auto, auto, 40px 40px, 40px 40px, auto !important;
}

.pressure .section-heading,
.capabilities .section-heading,
.industries .section-heading,
.deliverables .section-heading,
.reports .section-heading,
.boundaries .section-heading,
.before-after .section-heading {
  position: relative;
}

.pressure .section-heading::after,
.capabilities .section-heading::after,
.industries .section-heading::after,
.deliverables .section-heading::after,
.reports .section-heading::after,
.boundaries .section-heading::after,
.before-after .section-heading::after {
  content: "";
  position: absolute;
  right: 0;
  top: .2rem;
  width: min(34vw, 390px);
  height: 108px;
  pointer-events: none;
  opacity: .36;
  background:
    linear-gradient(90deg, rgba(37,99,235,.19) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.15) 1px, transparent 1px),
    radial-gradient(circle at 74% 46%, transparent 0 30px, rgba(37,99,235,.34) 31px 32px, transparent 33px),
    linear-gradient(135deg, transparent 0 52%, rgba(37,99,235,.34) 52.5% 53%, transparent 53.5%);
  background-size: 20px 20px, 20px 20px, auto, auto;
}

.capability-media {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, rgba(37,99,235,.075) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.075) 1px, transparent 1px),
    radial-gradient(circle at 68% 34%, rgba(37,99,235,.14), transparent 34%),
    linear-gradient(135deg, rgba(37,99,235,.08), rgba(255,255,255,0)) !important;
  background-size: 18px 18px, 18px 18px, auto, auto !important;
}

.diagnostic {
  background:
    radial-gradient(circle at 77% 32%, rgba(59,130,246,.20), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.045) 1px, transparent 1px),
    #0e3456 !important;
  background-size: auto, 34px 34px, 34px 34px, auto !important;
}

.final-cta,
.cta-band {
  background:
    linear-gradient(135deg, rgba(15,52,86,.98), rgba(14,49,81,.98)),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.045) 1px, transparent 1px) !important;
  background-size: auto, 36px 36px, 36px 36px !important;
}

.deliverables-lead {
  border-top: 1px solid rgba(37,99,235,.16);
  padding-top: 1.2rem;
}

.deliverables-lead img {
  border: 1px solid rgba(37,99,235,.16);
  box-shadow: 0 20px 50px rgba(15,23,42,.11);
}

@media (min-width: 761px) and (max-width: 1080px) {
  .nav-links,
  .site-header nav {
    display: none !important;
  }

  .site-header {
    grid-template-columns: auto auto !important;
    justify-content: space-between !important;
  }
}

@media (max-width: 760px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body > *,
  main,
  section,
  .hero,
  .hero-copy,
  .hero-visual,
  .readiness-strip,
  .pressure,
  .capabilities,
  .industries,
  .diagnostic,
  .deliverables,
  .reports,
  .boundaries,
  .before-after,
  .final-cta {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .site-header {
    position: sticky !important;
    top: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: .55rem !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: .65rem .82rem !important;
  }

  .site-header nav,
  .nav-links,
  .main-nav,
  .primary-nav,
  .desktop-nav,
  .mobile-nav,
  .site-nav {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  .brand {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    font-size: .68rem !important;
    letter-spacing: .06em !important;
    gap: .42rem !important;
  }

  .brand-mark {
    width: 20px !important;
    height: 18px !important;
  }

  .header-cta,
  .site-header .button,
  .site-header a[href*="contact"],
  .site-header a[href*="Contact"] {
    flex: 0 0 auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 29px !important;
    max-width: 74px !important;
    padding: 0 .5rem !important;
    font-size: .5rem !important;
    letter-spacing: .03em !important;
    white-space: nowrap !important;
  }

  .hero {
    display: flex !important;
    flex-direction: column !important;
    min-height: auto !important;
    background:
      linear-gradient(90deg, rgba(37,99,235,.025) 1px, transparent 1px),
      linear-gradient(180deg, rgba(37,99,235,.025) 1px, transparent 1px),
      #ffffff !important;
    background-size: 32px 32px, 32px 32px, auto !important;
  }

  .hero::before {
    opacity: .08 !important;
  }

  .hero-copy {
    display: block !important;
    padding: 2.05rem 1rem 1rem !important;
    max-width: none !important;
  }

  .eyebrow {
    margin-bottom: .65rem !important;
    font-size: .56rem !important;
    line-height: 1.25 !important;
    letter-spacing: .085em !important;
  }

  h1,
  .hero h1,
  .hero-copy h1 {
    display: block !important;
    width: 100% !important;
    max-width: calc(100vw - 2rem) !important;
    margin: 0 0 .9rem !important;
    padding: 0 !important;
    font-size: 2.02rem !important;
    line-height: 1.035 !important;
    letter-spacing: -.03em !important;
    word-spacing: 0 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
    overflow: visible !important;
  }

  .hero-lede-group {
    width: 100% !important;
    max-width: calc(100vw - 2rem) !important;
    margin: 0 !important;
    padding: .78rem .82rem !important;
    border-left-width: 3px !important;
  }

  .hero-lede,
  .hero-lede-group p {
    margin-bottom: .58rem !important;
    font-size: .79rem !important;
    line-height: 1.45 !important;
    overflow-wrap: break-word !important;
  }

  .hero-actions,
  .hero-facts,
  .readiness-strip,
  .question-grid,
  .capability-grid,
  .industry-grid,
  .diagnostic-panel,
  .deliverable-grid,
  .report-grid,
  .comparison-grid,
  .final-cta {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: .72rem !important;
  }

  .hero-actions {
    max-width: calc(100vw - 2rem) !important;
    margin: .92rem 0 1rem !important;
    gap: .55rem !important;
  }

  .hero-actions .button {
    width: 100% !important;
    min-height: 38px !important;
    font-size: .56rem !important;
    letter-spacing: .03em !important;
  }

  .hero-facts div,
  .readiness-item,
  article,
  .industry-card,
  .capability-card,
  .timeline-item {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .hero-facts div {
    min-height: auto !important;
    padding: .88rem .95rem !important;
  }

  .hero-visual {
    height: 220px !important;
    min-height: 220px !important;
    margin: 0 !important;
    border-top: 1px solid var(--line) !important;
  }

  .hero-visual img {
    width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: .98 !important;
  }

  .readiness-strip {
    padding: 0 1rem !important;
    background: #f8fafc !important;
  }

  .readiness-item {
    min-height: auto !important;
    padding: .95rem 0 !important;
    border-right: 0 !important;
  }

  .pressure,
  .capabilities,
  .industries,
  .diagnostic,
  .deliverables,
  .reports,
  .boundaries,
  .before-after,
  .final-cta {
    padding: 3.25rem 1rem !important;
  }

  .section-heading {
    margin-bottom: 1.35rem !important;
  }

  .section-heading h2,
  .diagnostic h2,
  .deliverables h2,
  .final-cta h2 {
    max-width: 100% !important;
    font-size: 1.88rem !important;
    line-height: 1.075 !important;
    letter-spacing: -.028em !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
  }

  .industry-card,
  .question-grid article,
  .capability-card,
  .deliverable-grid article,
  .report-grid article,
  .comparison-grid article,
  .timeline-item {
    padding: 1.05rem !important;
    min-height: auto !important;
    background-size: 18px 18px, 18px 18px, auto !important;
  }

  .capability-media {
    height: 58px !important;
  }

  .diagnostic {
    display: block !important;
  }

  .diagnostic-panel {
    margin-top: 1.5rem !important;
  }

  .deliverables-lead {
    display: block !important;
  }

  .deliverables-lead img {
    margin-top: 1.2rem !important;
  }

  p,
  li,
  dd {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  img,
  video,
  svg {
    max-width: 100% !important;
  }
}

/* POINTSTATE V2 PRODUCTION POLISH END */


/* POINTSTATE V2 SWISS PRECISION SYSTEM START */

:root {
  --ps-rail: rgba(37,99,235,.42);
  --ps-rail-soft: rgba(37,99,235,.13);
  --ps-blue-deep: #0b3154;
  --ps-grid-soft: rgba(37,99,235,.034);
}

/* global custody rail */
main {
  position: relative;
}

main::after {
  content: "";
  position: fixed;
  left: clamp(12px, 1.25vw, 24px);
  top: 78px;
  bottom: 28px;
  width: 1px;
  z-index: 30;
  pointer-events: none;
  background:
    linear-gradient(180deg,
      transparent,
      rgba(37,99,235,.18) 8%,
      rgba(37,99,235,.46) 18%,
      rgba(37,99,235,.18) 80%,
      transparent);
}

/* measurement ticks on the custody rail */
body::after {
  content: "";
  position: fixed;
  left: calc(clamp(12px, 1.25vw, 24px) - 3px);
  top: 96px;
  bottom: 40px;
  width: 7px;
  z-index: 31;
  pointer-events: none;
  opacity: .62;
  background:
    repeating-linear-gradient(
      180deg,
      transparent 0 34px,
      rgba(37,99,235,.42) 34px 35px,
      transparent 35px 68px
    );
}

/* page precision grid, quieter but more deliberate */
main {
  background:
    radial-gradient(circle at 14% 12%, rgba(37,99,235,.045), transparent 24rem),
    radial-gradient(circle at 88% 38%, rgba(14,165,233,.04), transparent 28rem),
    linear-gradient(90deg, var(--ps-grid-soft) 1px, transparent 1px),
    linear-gradient(180deg, var(--ps-grid-soft) 1px, transparent 1px),
    #ffffff !important;
  background-size: auto, auto, 44px 44px, 44px 44px, auto !important;
}

/* hero: precision instrument, not brochure art */
.hero {
  border-bottom: 1px solid rgba(37,99,235,.18);
}

.hero-copy::before {
  content: "STATE / EVIDENCE / DECISION";
  display: block;
  width: fit-content;
  margin-bottom: .85rem;
  padding: .28rem .52rem;
  border: 1px solid rgba(37,99,235,.22);
  background: rgba(255,255,255,.72);
  color: #1d4ed8;
  font-size: .56rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.hero-visual {
  isolation: isolate;
}

.hero-visual::before {
  content: "";
  display: block !important;
  position: absolute;
  inset: 1rem;
  z-index: 2;
  pointer-events: none;
  opacity: .42;
  border: 1px solid rgba(37,99,235,.16);
  background:
    linear-gradient(90deg, rgba(37,99,235,.22) 0 16px, transparent 16px calc(100% - 16px), rgba(37,99,235,.22) calc(100% - 16px)),
    linear-gradient(180deg, rgba(37,99,235,.22) 0 16px, transparent 16px calc(100% - 16px), rgba(37,99,235,.22) calc(100% - 16px));
}

.hero-visual::after {
  content: "VERIFIED SURFACE";
  display: block !important;
  position: absolute;
  right: 1.8rem;
  bottom: 1.8rem;
  z-index: 3;
  padding: .48rem .62rem;
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(255,255,255,.80);
  color: #1e40af;
  font-size: .56rem;
  font-weight: 800;
  letter-spacing: .105em;
  text-transform: uppercase;
  box-shadow: 0 14px 30px rgba(15,23,42,.08);
}

/* evidence custody rail through section headings */
.pressure .section-heading,
.capabilities .section-heading,
.industries .section-heading,
.deliverables .section-heading,
.reports .section-heading,
.boundaries .section-heading,
.before-after .section-heading {
  padding-left: 1.25rem;
  border-left: 2px solid rgba(37,99,235,.48);
}

.pressure .section-heading::before,
.capabilities .section-heading::before,
.industries .section-heading::before,
.deliverables .section-heading::before,
.reports .section-heading::before,
.boundaries .section-heading::before,
.before-after .section-heading::before {
  position: absolute;
  left: -2px;
  top: -.75rem;
  min-width: 2.2rem;
  padding: .22rem .34rem;
  border: 1px solid rgba(37,99,235,.24);
  background: rgba(255,255,255,.86);
  color: #1d4ed8;
  font-size: .56rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.pressure .section-heading::before { content: "01"; }
.capabilities .section-heading::before { content: "02"; }
.industries .section-heading::before { content: "03"; }
.diagnostic .section-heading::before { content: "04"; }
.deliverables .section-heading::before { content: "05"; }
.reports .section-heading::before { content: "06"; }
.boundaries .section-heading::before { content: "07"; }
.before-after .section-heading::before { content: "08"; }

/* calibration marks around card fields */
.question-grid,
.capability-grid,
.industry-grid,
.deliverable-grid,
.report-grid,
.comparison-grid {
  position: relative;
}

.question-grid::before,
.capability-grid::before,
.industry-grid::before,
.deliverable-grid::before,
.report-grid::before,
.comparison-grid::before {
  content: "";
  position: absolute;
  left: 0;
  top: -.85rem;
  width: 100%;
  height: 1px;
  opacity: .46;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(37,99,235,.36) 0 1px,
      transparent 1px 24px
    );
}

/* cards become measured record units */
.question-grid article,
.capability-card,
.industry-card,
.deliverable-grid article,
.report-grid article,
.comparison-grid article {
  position: relative;
  border-radius: 0 !important;
  border-color: rgba(148,163,184,.54) !important;
}

.question-grid article::before,
.capability-card::before,
.industry-card::before,
.deliverable-grid article::before,
.report-grid article::before,
.comparison-grid article::before {
  opacity: .46 !important;
}

.question-grid article::after,
.capability-card::after,
.industry-card::after,
.deliverable-grid article::after,
.report-grid article::after,
.comparison-grid article::after {
  left: 1rem !important;
  right: 1rem !important;
  bottom: .72rem !important;
  opacity: .38 !important;
}

/* tiny state labels on key cards */
.capability-card:nth-child(1)::marker { content: ""; }

.capability-card:nth-child(1) h3::before,
.capability-card:nth-child(2) h3::before,
.capability-card:nth-child(3) h3::before,
.capability-card:nth-child(4) h3::before {
  display: block;
  margin-bottom: .42rem;
  color: #2563eb;
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .13em;
}

.capability-card:nth-child(1) h3::before { content: "STATE"; }
.capability-card:nth-child(2) h3::before { content: "CONTROL"; }
.capability-card:nth-child(3) h3::before { content: "STABILITY"; }
.capability-card:nth-child(4) h3::before { content: "DEPLOY"; }

/* stronger dossier artifact */
.deliverables-lead {
  position: relative;
  align-items: center;
}

.deliverables-lead::after {
  content: "CUSTODY PACKAGE / DECISION RECORD / EXECUTION PATH";
  position: absolute;
  right: 0;
  bottom: -1.15rem;
  padding: .38rem .55rem;
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(255,255,255,.88);
  color: #1e40af;
  font-size: .55rem;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.deliverables-lead img {
  transform: translateY(-.25rem);
  filter: saturate(.9) contrast(1.04);
}

/* dark diagnostic band as control-state moment */
.diagnostic {
  border-top: 1px solid rgba(255,255,255,.16);
  border-bottom: 1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at 78% 28%, rgba(59,130,246,.22), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,.052) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.052) 1px, transparent 1px),
    linear-gradient(135deg, #092844, #0e3456 58%, #0a2b49) !important;
  background-size: auto, 34px 34px, 34px 34px, auto !important;
}

.diagnostic::after {
  content: "CONTROL STATE";
  position: absolute;
  right: 2.2rem;
  top: 2.2rem;
  color: rgba(255,255,255,.22);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}

.diagnostic-panel article,
.diagnostic-panel div {
  border: 1px solid rgba(255,255,255,.14) !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.045) 1px, transparent 1px),
    rgba(255,255,255,.075) !important;
  background-size: 22px 22px, 22px 22px, auto !important;
}

/* before after contrast */
.before-after .comparison-grid article:first-child,
.before-after .comparison-grid article:nth-child(1) {
  background:
    linear-gradient(90deg, rgba(148,163,184,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(148,163,184,.06) 1px, transparent 1px),
    rgba(248,250,252,.94) !important;
}

.before-after .comparison-grid article:last-child,
.before-after .comparison-grid article:nth-child(2) {
  border-color: rgba(37,99,235,.32) !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.06) 1px, transparent 1px),
    rgba(239,246,255,.82) !important;
}

/* footer CTA gets executive-board energy */
.final-cta,
.cta-band {
  border-top: 1px solid rgba(255,255,255,.16);
  background:
    radial-gradient(circle at 84% 26%, rgba(59,130,246,.20), transparent 18rem),
    linear-gradient(135deg, rgba(15,52,86,.98), rgba(14,49,81,.98)),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.045) 1px, transparent 1px) !important;
  background-size: auto, auto, 36px 36px, 36px 36px !important;
}

/* mobile discipline */
@media (max-width: 760px) {
  main::after,
  body::after {
    display: none !important;
  }

  .hero-copy::before {
    font-size: .48rem;
    letter-spacing: .09em;
    margin-bottom: .7rem;
  }

  .hero-visual::before {
    inset: .7rem;
    opacity: .24;
  }

  .hero-visual::after {
    display: none !important;
  }

  .pressure .section-heading,
  .capabilities .section-heading,
  .industries .section-heading,
  .deliverables .section-heading,
  .reports .section-heading,
  .boundaries .section-heading,
  .before-after .section-heading {
    padding-left: .85rem;
  }

  .pressure .section-heading::before,
  .capabilities .section-heading::before,
  .industries .section-heading::before,
  .deliverables .section-heading::before,
  .reports .section-heading::before,
  .boundaries .section-heading::before,
  .before-after .section-heading::before {
    top: -1rem;
    font-size: .48rem;
  }

  .deliverables-lead::after {
    position: static;
    display: block;
    width: fit-content;
    margin-top: .75rem;
    font-size: .47rem;
  }

  .diagnostic::after {
    right: 1rem;
    top: 1rem;
    font-size: .5rem;
    opacity: .6;
  }
}

/* POINTSTATE V2 SWISS PRECISION SYSTEM END */


/* POINTSTATE V2 MOBILE FINAL FIT START */

@media (max-width: 760px) {
  .hero-copy {
    padding: 1.8rem 1.05rem 1rem !important;
  }

  h1,
  .hero h1,
  .hero-copy h1 {
    max-width: 100% !important;
    font-size: 1.72rem !important;
    line-height: 1.075 !important;
    letter-spacing: -0.018em !important;
    word-spacing: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .hero-copy::before {
    max-width: 100% !important;
    font-size: 0.44rem !important;
    letter-spacing: 0.075em !important;
    white-space: normal !important;
  }

  .hero-lede-group {
    max-width: 100% !important;
    padding: 0.74rem 0.78rem !important;
  }

  .hero-lede,
  .hero-lede-group p {
    font-size: 0.76rem !important;
    line-height: 1.43 !important;
  }

  .hero-actions {
    max-width: 100% !important;
  }

  .hero-visual {
    height: 205px !important;
    min-height: 205px !important;
  }

  .hero-visual img {
    height: 205px !important;
    min-height: 205px !important;
  }

  .hero-visual::before {
    inset: 0.55rem !important;
    opacity: 0.18 !important;
  }

  .section-heading h2,
  .diagnostic h2,
  .deliverables h2,
  .final-cta h2 {
    font-size: 1.72rem !important;
    line-height: 1.09 !important;
    letter-spacing: -0.02em !important;
  }

  .question-grid article,
  .capability-card,
  .industry-card,
  .deliverable-grid article,
  .report-grid article,
  .comparison-grid article {
    padding: 0.98rem !important;
  }

  .pressure,
  .capabilities,
  .industries,
  .diagnostic,
  .deliverables,
  .reports,
  .boundaries,
  .before-after,
  .final-cta {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }

  .diagnostic::after {
    opacity: 0.32 !important;
  }

  .deliverables-lead::after {
    max-width: 100% !important;
    white-space: normal !important;
  }
}

/* POINTSTATE V2 MOBILE FINAL FIT END */


/* POINTSTATE V2 FINAL LOCK START */

:root {
  --ps-display-font: "Ubuntu", "Aptos Display", "Segoe UI Variable Display", "Inter Tight", "Arial Rounded MT Bold", ui-rounded, system-ui, sans-serif;
  --ps-stone: #35414b;
  --ps-stone-dark: #202a33;
}

h1,
.hero h1,
.hero-copy h1,
.section-heading h2,
.diagnostic h2,
.deliverables h2,
.final-cta h2,
.boundaries h2,
.reports h2 {
  font-family: var(--ps-display-font) !important;
  font-weight: 800 !important;
}

h1,
.hero h1,
.hero-copy h1 {
  letter-spacing: -0.037em !important;
  line-height: 0.98 !important;
}

.section-heading h2,
.diagnostic h2,
.deliverables h2,
.final-cta h2,
.boundaries h2,
.reports h2 {
  letter-spacing: -0.032em !important;
}

.reports {
  color: #f8fafc !important;
  background:
    radial-gradient(circle at 78% 18%, rgba(148,163,184,.15), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(135deg, #35414b, #202a33) !important;
  background-size: auto, 34px 34px, 34px 34px, auto !important;
}

.reports h2,
.reports .section-heading h2 {
  color: #ffffff !important;
}

.reports p,
.reports li,
.reports dd {
  color: rgba(226,232,240,.84) !important;
}

.reports .eyebrow,
.reports .section-heading .eyebrow {
  color: #93c5fd !important;
}

.reports .report-grid article,
.reports .deliverable-grid article,
.reports article {
  color: #e5edf6 !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.052) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.042) 1px, transparent 1px),
    rgba(255,255,255,.082) !important;
  background-size: 20px 20px, 20px 20px, auto !important;
  border-color: rgba(226,232,240,.18) !important;
  box-shadow: 0 18px 48px rgba(0,0,0,.15) !important;
}

.reports article strong,
.reports .report-grid article strong,
.reports .deliverable-grid article strong {
  color: #ffffff !important;
}

.boundaries {
  background:
    radial-gradient(circle at 84% 22%, rgba(37,99,235,.07), transparent 18rem),
    linear-gradient(90deg, rgba(37,99,235,.018) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.018) 1px, transparent 1px),
    #f8fbff !important;
  background-size: auto, 40px 40px, 40px 40px, auto !important;
  color: #0f172a !important;
}

.boundaries h2,
.boundaries .section-heading h2 {
  color: #0f172a !important;
}

.boundaries p,
.boundaries li,
.boundaries dd {
  color: #475569 !important;
}

.boundaries article,
.boundaries .callout,
.boundaries .boundary-note,
.boundaries .note {
  color: #0f172a !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.045) 1px, transparent 1px),
    rgba(255,255,255,.86) !important;
  background-size: 20px 20px, 20px 20px, auto !important;
  border-color: rgba(37,99,235,.18) !important;
  box-shadow: 0 18px 46px rgba(15,23,42,.08) !important;
}

.before-after .section-heading p,
.before-after > p {
  max-width: 74rem !important;
  font-size: 1rem !important;
  line-height: 1.62 !important;
  font-weight: 700 !important;
  color: #263445 !important;
  border-left: 4px solid rgba(37,99,235,.78) !important;
  padding: 0.85rem 1rem !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.07), rgba(255,255,255,.72)) !important;
  box-shadow: 0 12px 32px rgba(15,23,42,.05) !important;
}

@media (max-width: 760px) {
  html,
  body,
  main,
  .hero,
  .hero-copy,
  section {
    overflow-x: hidden !important;
  }

  .hero-copy {
    padding-left: 0.92rem !important;
    padding-right: 0.92rem !important;
  }

  h1,
  .hero h1,
  .hero-copy h1 {
    width: 100% !important;
    max-width: calc(100vw - 1.84rem) !important;
    font-size: 1.86rem !important;
    line-height: 1.055 !important;
    letter-spacing: -0.018em !important;
    word-spacing: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .hero-lede-group,
  .hero-actions,
  .hero-facts {
    max-width: calc(100vw - 1.84rem) !important;
  }

  .section-heading h2,
  .diagnostic h2,
  .deliverables h2,
  .final-cta h2,
  .boundaries h2,
  .reports h2 {
    font-size: 1.78rem !important;
    line-height: 1.09 !important;
    letter-spacing: -0.018em !important;
  }

  .before-after .section-heading p,
  .before-after > p {
    font-size: 0.82rem !important;
    line-height: 1.5 !important;
    padding: 0.7rem 0.75rem !important;
  }

  .header-cta,
  .site-header .button,
  .site-header a[href*="contact"],
  .site-header a[href*="Contact"] {
    max-width: 68px !important;
    font-size: 0.47rem !important;
  }

  .brand {
    font-size: 0.64rem !important;
    letter-spacing: 0.045em !important;
  }
}

/* POINTSTATE V2 FINAL LOCK END */

/* POINTSTATE V2 FINAL MOBILE SAFETY START */

@media (max-width: 760px) {
  .hero-copy {
    padding-left: 1rem !important;
    padding-right: 1.18rem !important;
  }

  h1,
  .hero h1,
  .hero-copy h1 {
    max-width: calc(100vw - 2.35rem) !important;
    font-size: 1.76rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.012em !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  .hero-lede-group,
  .hero-actions,
  .hero-facts {
    max-width: calc(100vw - 2.35rem) !important;
  }
}

/* POINTSTATE V2 FINAL MOBILE SAFETY END */

/* POINTSTATE V2 BLUEPRINT FINAL START */

:root {
  --bp-blue: #2563eb;
  --bp-blue-dark: #0b2f78;
  --bp-ink: #07152f;
  --bp-muted: #4b5f80;
  --bp-line: rgba(37, 99, 235, 0.20);
  --bp-line-soft: rgba(37, 99, 235, 0.075);
  --bp-card: rgba(255, 255, 255, 0.86);
  --bp-shadow: 0 22px 58px rgba(15, 23, 42, 0.105);
}

main {
  background:
    radial-gradient(circle at 85% 8%, rgba(37,99,235,.08), transparent 22rem),
    radial-gradient(circle at 8% 38%, rgba(37,99,235,.04), transparent 24rem),
    linear-gradient(90deg, rgba(37,99,235,.026) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.026) 1px, transparent 1px),
    #ffffff !important;
  background-size: auto, auto, 40px 40px, 40px 40px, auto !important;
}

.hero,
.pressure,
.capabilities,
.industries,
.diagnostic,
.deliverables,
.reports,
.boundaries,
.before-after,
.final-cta {
  position: relative;
  overflow: hidden;
}

.hero::before,
.pressure::before,
.capabilities::before,
.industries::before,
.deliverables::before,
.reports::before,
.boundaries::before,
.before-after::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.48;
  background:
    radial-gradient(circle at 86% 13%, transparent 0 88px, rgba(37,99,235,.18) 89px 90px, transparent 91px),
    radial-gradient(circle at 86% 13%, transparent 0 148px, rgba(37,99,235,.10) 149px 150px, transparent 151px),
    linear-gradient(90deg, transparent 0 79%, rgba(37,99,235,.16) 79.05% 79.18%, transparent 79.25%),
    linear-gradient(180deg, transparent 0 18%, rgba(37,99,235,.14) 18.05% 18.18%, transparent 18.25%),
    linear-gradient(135deg, transparent 0 66%, rgba(37,99,235,.12) 66.08% 66.28%, transparent 66.48%);
}

.hero > *,
.pressure > *,
.capabilities > *,
.industries > *,
.diagnostic > *,
.deliverables > *,
.reports > *,
.boundaries > *,
.before-after > *,
.final-cta > * {
  position: relative;
  z-index: 1;
}

.section-heading,
.industries .section-heading,
.capabilities .section-heading,
.pressure .section-heading,
.deliverables .section-heading,
.reports .section-heading,
.before-after .section-heading,
.boundaries .section-heading {
  position: relative;
  padding-left: 4.35rem;
  padding-top: 0.15rem;
  margin-bottom: 2.35rem;
}

.section-heading::before,
.industries .section-heading::before,
.capabilities .section-heading::before,
.pressure .section-heading::before,
.deliverables .section-heading::before,
.reports .section-heading::before,
.before-after .section-heading::before,
.boundaries .section-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.35rem;
  width: 2.15rem;
  height: 2.15rem;
  background:
    linear-gradient(90deg, transparent 0 44%, var(--bp-blue) 44% 56%, transparent 56%),
    linear-gradient(180deg, transparent 0 44%, var(--bp-blue) 44% 56%, transparent 56%),
    radial-gradient(circle, transparent 0 28%, var(--bp-blue) 29% 34%, transparent 35% 100%);
  opacity: 0.78;
}

.section-heading::after,
.industries .section-heading::after,
.capabilities .section-heading::after,
.pressure .section-heading::after,
.deliverables .section-heading::after,
.reports .section-heading::after,
.before-after .section-heading::after,
.boundaries .section-heading::after {
  content: "";
  position: absolute;
  left: 4.35rem;
  right: 0;
  top: 1.15rem;
  width: auto !important;
  height: 1px !important;
  opacity: 0.5 !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.55), rgba(37,99,235,.18) 50%, transparent) !important;
}

.section-heading h2,
.industries h2,
.capabilities h2,
.pressure h2,
.deliverables h2,
.reports h2,
.boundaries h2,
.before-after h2 {
  max-width: 66rem;
  color: var(--bp-ink);
  font-weight: 850 !important;
  letter-spacing: -0.045em !important;
  line-height: 0.96 !important;
}

.section-heading p {
  max-width: 58rem;
}

.eyebrow,
.section-heading .eyebrow {
  color: var(--bp-blue) !important;
  letter-spacing: 0.15em !important;
}

.industries::after,
.capabilities::after,
.pressure::after,
.deliverables::after,
.before-after::after {
  position: absolute;
  right: 4.6rem;
  top: 4.2rem;
  z-index: 0;
  white-space: pre;
  color: rgba(37,99,235,.48);
  font-size: 0.92rem;
  line-height: 1.5;
  font-weight: 800;
  letter-spacing: 0.035em;
  pointer-events: none;
}

.industries::after {
  content: "40.7128 N\A 74.0060 W";
}

.capabilities::after {
  content: "CONTROL STATE\A 04 AXES";
}

.pressure::after {
  content: "REQUIREMENT\A BEFORE ACTION";
}

.deliverables::after {
  content: "EVIDENCE\A MOVES WORK";
}

.before-after::after {
  content: "CLOUD PATH\A CURRENT STATE";
}

.question-grid article,
.capability-card,
.industry-card,
.deliverable-grid article,
.report-grid article,
.comparison-grid article,
.hero-facts div,
.readiness-item {
  position: relative;
  border: 1px solid rgba(37,99,235,.22) !important;
  border-radius: 4px !important;
  background:
    linear-gradient(90deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(248,251,255,.88)) !important;
  background-size: 22px 22px, 22px 22px, auto !important;
  box-shadow: var(--bp-shadow) !important;
}

.question-grid article,
.capability-card,
.industry-card,
.deliverable-grid article,
.report-grid article,
.comparison-grid article {
  padding: 2.15rem 1.55rem 1.55rem 5.4rem !important;
  min-height: 150px;
}

.question-grid article::before,
.capability-card::before,
.industry-card::before,
.deliverable-grid article::before,
.report-grid article::before,
.comparison-grid article::before {
  content: "";
  position: absolute;
  left: 1.35rem;
  top: 2.05rem;
  width: 2.45rem;
  height: 2.45rem;
  opacity: 0.95;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='32' cy='32' r='17'/%3E%3Cpath d='M32 4v13M32 47v13M4 32h13M47 32h13M22 32h20M32 22v20'/%3E%3C/svg%3E") !important;
}

.question-grid article::after,
.capability-card::after,
.industry-card::after,
.deliverable-grid article::after,
.report-grid article::after,
.comparison-grid article::after,
.hero-facts div::after,
.readiness-item::after {
  content: "";
  position: absolute;
  right: 0.8rem;
  bottom: 0.8rem;
  width: 1.1rem;
  height: 1.1rem;
  opacity: 0.76;
  border-right: 2px solid var(--bp-blue);
  border-bottom: 2px solid var(--bp-blue);
}

.question-grid article h3,
.capability-card h3,
.industry-card h3,
.deliverable-grid article h3,
.report-grid article h3,
.comparison-grid article h3,
.question-grid article strong,
.industry-card strong,
.report-grid article strong,
.deliverable-grid article strong {
  color: var(--bp-ink) !important;
  font-weight: 850 !important;
}

.question-grid article p,
.capability-card p,
.industry-card p,
.deliverable-grid article p,
.report-grid article p,
.comparison-grid article p {
  color: #334155 !important;
  line-height: 1.55;
}

.industry-card:nth-child(1)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 52h48M12 52V28l10 7V25l10 7V20l10 8v24'/%3E%3Cpath d='M18 45h4M30 45h4M42 45h4M48 22l4-10h4'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(2)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='32' cy='32' r='15'/%3E%3Ccircle cx='32' cy='32' r='6'/%3E%3Cpath d='M32 4v12M32 48v12M4 32h12M48 32h12'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(3)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 6l22 13v26L32 58 10 45V19L32 6z'/%3E%3Cpath d='M10 19l22 13 22-13M32 32v26'/%3E%3Ccircle cx='32' cy='32' r='7'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(4)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M10 20h44v24H10zM16 28h32M16 36h32M22 20v24M42 20v24'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(5)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 8l20 12v24L32 56 12 44V20L32 8z'/%3E%3Ccircle cx='32' cy='32' r='8'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(6)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 48V28a14 14 0 0 1 28 0v20M12 48h40M22 36h20M26 20h12'/%3E%3Ccircle cx='20' cy='52' r='3'/%3E%3Ccircle cx='44' cy='52' r='3'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(7)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 8v48M16 16l32 32M48 16L16 48M10 32h44'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(8)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 24h40v28H12zM18 24V14h28v10M20 32h24M20 40h24'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(9)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='16' cy='48' r='5'/%3E%3Ccircle cx='32' cy='16' r='5'/%3E%3Ccircle cx='48' cy='48' r='5'/%3E%3Cpath d='M20 44l9-23M35 21l9 23M21 48h22'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(10)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 46h36M18 38h28M22 30h20M26 22h12M10 52h44'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(11)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M16 20h32v28H16zM24 20v-6h16v6M22 32h20M22 40h14'/%3E%3C/svg%3E") !important; }
.industry-card:nth-child(12)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 48h36M18 48V18h10v30M36 48V26h10v22M22 24h2M22 32h2M22 40h2M40 32h2M40 40h2'/%3E%3C/svg%3E") !important; }

.capability-card:nth-child(1)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='32' cy='32' r='18'/%3E%3Cpath d='M32 12v40M12 32h40M22 22l20 20M42 22L22 42'/%3E%3C/svg%3E") !important; }
.capability-card:nth-child(2)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M32 8l20 8v16c0 14-8 22-20 26-12-4-20-12-20-26V16l20-8z'/%3E%3Cpath d='M24 32h16M32 24v16'/%3E%3C/svg%3E") !important; }
.capability-card:nth-child(3)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 44a16 16 0 1 1 28-10M46 20v14H32'/%3E%3Cpath d='M14 50h36M20 50v-8M32 50V34M44 50V28'/%3E%3C/svg%3E") !important; }
.capability-card:nth-child(4)::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64' fill='none' stroke='%232563eb' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 44l20 12 20-12V20L32 8 12 20v24z'/%3E%3Cpath d='M12 20l20 12 20-12M32 32v24'/%3E%3C/svg%3E") !important; }

.hero-visual img {
  filter: grayscale(.05) saturate(.96) contrast(1.04) brightness(1.04) !important;
}

.hero-visual {
  box-shadow: inset 0 0 0 1px rgba(37,99,235,.16);
}

.reports {
  background:
    radial-gradient(circle at 82% 18%, rgba(147,197,253,.13), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(135deg, #26333d, #17212b) !important;
  background-size: auto, 34px 34px, 34px 34px, auto !important;
}

.reports .section-heading::before,
.reports .section-heading::after {
  filter: brightness(1.55);
}

.reports article,
.reports .report-grid article,
.reports .deliverable-grid article {
  background:
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.048) 1px, transparent 1px),
    rgba(255,255,255,.082) !important;
  background-size: 20px 20px, 20px 20px, auto !important;
  border-color: rgba(226,232,240,.20) !important;
}

.reports article::before,
.reports .report-grid article::before,
.reports .deliverable-grid article::before {
  filter: brightness(1.8);
}

@media (max-width: 760px) {
  .section-heading,
  .industries .section-heading,
  .capabilities .section-heading,
  .pressure .section-heading,
  .deliverables .section-heading,
  .reports .section-heading,
  .before-after .section-heading,
  .boundaries .section-heading {
    padding-left: 2.2rem !important;
    margin-bottom: 1.55rem !important;
  }

  .section-heading::before,
  .industries .section-heading::before,
  .capabilities .section-heading::before,
  .pressure .section-heading::before,
  .deliverables .section-heading::before,
  .reports .section-heading::before,
  .before-after .section-heading::before,
  .boundaries .section-heading::before {
    width: 1.25rem !important;
    height: 1.25rem !important;
    top: 0.45rem !important;
  }

  .section-heading::after,
  .industries .section-heading::after,
  .capabilities .section-heading::after,
  .pressure .section-heading::after,
  .deliverables .section-heading::after,
  .reports .section-heading::after,
  .before-after .section-heading::after,
  .boundaries .section-heading::after {
    left: 2.2rem !important;
  }

  .industries::after,
  .capabilities::after,
  .pressure::after,
  .deliverables::after,
  .before-after::after {
    display: none !important;
  }

  .question-grid article,
  .capability-card,
  .industry-card,
  .deliverable-grid article,
  .report-grid article,
  .comparison-grid article {
    padding: 1.45rem 1rem 1.1rem 3.95rem !important;
    min-height: auto !important;
  }

  .question-grid article::before,
  .capability-card::before,
  .industry-card::before,
  .deliverable-grid article::before,
  .report-grid article::before,
  .comparison-grid article::before {
    left: 1rem !important;
    top: 1.35rem !important;
    width: 1.9rem !important;
    height: 1.9rem !important;
  }

  main {
    background-size: auto, auto, 30px 30px, 30px 30px, auto !important;
  }
}

/* calmer blueprint system: strong section identity, less card noise */
.section-heading,
.industries .section-heading,
.capabilities .section-heading,
.pressure .section-heading,
.deliverables .section-heading,
.reports .section-heading,
.before-after .section-heading,
.boundaries .section-heading {
  padding-left: 4rem !important;
  margin-bottom: 2.6rem !important;
}

.section-heading h2,
.industries h2,
.capabilities h2,
.pressure h2,
.deliverables h2,
.reports h2,
.boundaries h2,
.before-after h2 {
  font-size: clamp(2.85rem, 5vw, 5.15rem) !important;
  line-height: 0.98 !important;
  letter-spacing: -0.046em !important;
}

.section-heading p {
  font-size: 1.04rem !important;
  line-height: 1.68 !important;
}

.question-grid,
.capability-grid,
.industry-grid,
.deliverable-grid,
.report-grid,
.comparison-grid {
  gap: 1.35rem !important;
}

.question-grid article,
.capability-card,
.industry-card,
.deliverable-grid article,
.report-grid article,
.comparison-grid article {
  padding: 2rem 1.55rem 1.55rem 4.85rem !important;
  min-height: 160px !important;
  border-radius: 7px !important;
  box-shadow: 0 18px 46px rgba(15,23,42,.082) !important;
}

.question-grid article::before,
.capability-card::before,
.industry-card::before,
.deliverable-grid article::before,
.report-grid article::before,
.comparison-grid article::before {
  left: 1.25rem !important;
  top: 1.85rem !important;
  width: 2.15rem !important;
  height: 2.15rem !important;
  opacity: 0.82 !important;
}

.question-grid article::after,
.capability-card::after,
.industry-card::after,
.deliverable-grid article::after,
.report-grid article::after,
.comparison-grid article::after,
.hero-facts div::after,
.readiness-item::after {
  width: 0.92rem !important;
  height: 0.92rem !important;
  opacity: 0.52 !important;
}

.question-grid article h3,
.capability-card h3,
.industry-card h3,
.deliverable-grid article h3,
.report-grid article h3,
.comparison-grid article h3,
.question-grid article strong,
.industry-card strong,
.report-grid article strong,
.deliverable-grid article strong {
  font-size: 1rem !important;
  line-height: 1.28 !important;
  margin-bottom: 0.52rem !important;
}

.question-grid article p,
.capability-card p,
.industry-card p,
.deliverable-grid article p,
.report-grid article p,
.comparison-grid article p {
  font-size: 0.9rem !important;
  line-height: 1.55 !important;
}

.hero-facts div,
.readiness-item {
  border-radius: 4px !important;
  box-shadow: 0 10px 28px rgba(15,23,42,.045) !important;
}

.industries::after,
.capabilities::after,
.pressure::after,
.deliverables::after,
.before-after::after {
  right: 5.2rem !important;
  top: 4.65rem !important;
  font-size: 0.78rem !important;
  opacity: 0.58 !important;
}

.hero {
  background:
    linear-gradient(90deg, rgba(37,99,235,.026) 1px, transparent 1px),
    linear-gradient(180deg, rgba(37,99,235,.026) 1px, transparent 1px),
    radial-gradient(circle at 32% 79%, transparent 0 108px, rgba(37,99,235,.065) 109px 110px, transparent 111px),
    radial-gradient(circle at 39% 85%, transparent 0 166px, rgba(37,99,235,.044) 167px 168px, transparent 169px),
    #ffffff !important;
  background-size: 42px 42px, 42px 42px, auto, auto, auto !important;
}

.hero::before,
.pressure::before,
.capabilities::before,
.industries::before,
.deliverables::before,
.reports::before,
.boundaries::before,
.before-after::before {
  opacity: 0.34 !important;
}

.hero-visual img {
  filter: grayscale(.04) saturate(.98) contrast(1.04) brightness(1.03) !important;
}

/* avoid dark section turning into a cave of tiny tiles */
.reports {
  background:
    radial-gradient(circle at 82% 18%, rgba(147,197,253,.13), transparent 18rem),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.038) 1px, transparent 1px),
    linear-gradient(135deg, #2e3a44, #1d2730) !important;
  background-size: auto, 36px 36px, 36px 36px, auto !important;
}

.reports article,
.reports .report-grid article,
.reports .deliverable-grid article {
  background:
    linear-gradient(90deg, rgba(255,255,255,.043) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.036) 1px, transparent 1px),
    rgba(255,255,255,.073) !important;
  background-size: 22px 22px, 22px 22px, auto !important;
}

.before-after .section-heading p,
.before-after > p {
  font-size: 1.03rem !important;
  line-height: 1.62 !important;
}

/* mobile: keep blueprint, stop the page becoming a receipt from a spaceship */
@media (max-width: 760px) {
  .section-heading,
  .industries .section-heading,
  .capabilities .section-heading,
  .pressure .section-heading,
  .deliverables .section-heading,
  .reports .section-heading,
  .before-after .section-heading,
  .boundaries .section-heading {
    padding-left: 2rem !important;
    margin-bottom: 1.45rem !important;
  }

  .section-heading h2,
  .industries h2,
  .capabilities h2,
  .pressure h2,
  .deliverables h2,
  .reports h2,
  .boundaries h2,
  .before-after h2 {
    font-size: 1.78rem !important;
    line-height: 1.08 !important;
    letter-spacing: -0.018em !important;
  }

  .section-heading p {
    font-size: 0.84rem !important;
    line-height: 1.52 !important;
  }

  .question-grid,
  .capability-grid,
  .industry-grid,
  .deliverable-grid,
  .report-grid,
  .comparison-grid {
    gap: 0.72rem !important;
  }

  .question-grid article,
  .capability-card,
  .industry-card,
  .deliverable-grid article,
  .report-grid article,
  .comparison-grid article {
    padding: 1.25rem 0.9rem 1rem 3.35rem !important;
    min-height: auto !important;
    border-radius: 5px !important;
  }

  .question-grid article::before,
  .capability-card::before,
  .industry-card::before,
  .deliverable-grid article::before,
  .report-grid article::before,
  .comparison-grid article::before {
    left: 0.85rem !important;
    top: 1.18rem !important;
    width: 1.6rem !important;
    height: 1.6rem !important;
    opacity: 0.76 !important;
  }

  .question-grid article h3,
  .capability-card h3,
  .industry-card h3,
  .deliverable-grid article h3,
  .report-grid article h3,
  .comparison-grid article h3,
  .question-grid article strong,
  .industry-card strong,
  .report-grid article strong,
  .deliverable-grid article strong {
    font-size: 0.82rem !important;
    line-height: 1.28 !important;
  }

  .question-grid article p,
  .capability-card p,
  .industry-card p,
  .deliverable-grid article p,
  .report-grid article p,
  .comparison-grid article p {
    font-size: 0.76rem !important;
    line-height: 1.48 !important;
  }

  .before-after .section-heading p,
  .before-after > p {
    font-size: 0.78rem !important;
    line-height: 1.46 !important;
  }
}

/* POINTSTATE V2 BLUEPRINT FINAL END */


/* PointState patch 20260629: keep new hero headline inside mobile viewport */
@media (max-width: 640px) {
  .hero-copy,
  .hero-lede-group,
  #hero-title {
    max-width: 100%;
    min-width: 0;
  }

  #hero-title {
    font-size: clamp(2.65rem, 10.8vw, 3.55rem);
    line-height: 0.98;
    letter-spacing: -0.055em;
    overflow-wrap: normal;
    word-break: normal;
  }

  #hero-title span {
    display: inline;
  }

  .hero-lede-group {
    overflow-wrap: break-word;
  }
}

@media (max-width: 420px) {
  #hero-title {
    font-size: clamp(2.35rem, 10.1vw, 3.05rem);
    line-height: 1.0;
    letter-spacing: -0.05em;
  }
}


/* PointState patch 20260629: hard mobile viewport containment */
@media (max-width: 480px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  .site-header,
  .hero,
  .hero-copy,
  .hero-lede-group,
  .hero-actions,
  .hero-facts,
  .hero-media {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero {
    display: block !important;
    overflow: hidden !important;
  }

  .hero-copy {
    padding-left: 1.35rem !important;
    padding-right: 1.35rem !important;
  }

  #hero-title {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(2.05rem, 8.75vw, 2.65rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.045em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  #hero-title span {
    display: inline !important;
  }

  .hero-lede-group {
    padding: 1rem 1rem 1rem 1.15rem !important;
    overflow-wrap: break-word !important;
  }

  .hero-lede-group p {
    max-width: 100% !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .hero-actions .button {
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-facts {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .hero-facts div,
  .hero-facts dd {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
  }

  .hero-media {
    overflow: hidden !important;
  }

  .hero-media img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }
}


/* PointState patch 20260629: PointState Diagnostics logo kit header insertion */
.site-header .ps-logo-link {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  line-height: 0;
  text-decoration: none;
}

.site-header .ps-logo {
  display: block;
  width: clamp(150px, 13vw, 205px);
  height: auto;
}

@media (max-width: 760px) {
  .site-header .ps-logo {
    width: clamp(132px, 38vw, 178px);
  }
}

@media (max-width: 420px) {
  .site-header .ps-logo {
    width: 132px;
  }
}


/* PointState patch 20260629: Precision Sans site typography system */
:root {
  --ps-font-display: "Sora", "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ps-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --ps-font-ui: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Body and general UI */
html,
body,
input,
textarea,
select,
button {
  font-family: var(--ps-font-body) !important;
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* Precise UI text */
.nav-links a,
.header-cta,
.button,
.button-primary,
.button-secondary,
.eyebrow,
.hero-facts dt,
.hero-facts dd,
.question-grid article h3,
.capability-card h3,
.industry-card h3,
.deliverable-grid article h3,
.report-grid article h3,
.comparison-grid article h3,
.question-grid article strong,
.industry-card strong,
.report-grid article strong,
.deliverable-grid article strong,
dt,
label {
  font-family: var(--ps-font-ui) !important;
}

/* Display type: align with PointState Diagnostics logo feel */
#hero-title,
.section-heading h2,
.before-after h2,
main h1,
main h2 {
  font-family: var(--ps-font-display) !important;
  color: #11182d;
  font-weight: 400 !important;
  letter-spacing: -0.055em !important;
  line-height: 0.98 !important;
}

/* Hero gets the light, strong, precise treatment */
#hero-title {
  font-weight: 400 !important;
  letter-spacing: -0.062em !important;
  line-height: 0.96 !important;
  text-wrap: balance;
}

/* Section heads should be precise, not blobby */
.section-heading h2,
.before-after h2,
main h2 {
  font-weight: 450 !important;
  letter-spacing: -0.048em !important;
  line-height: 1.02 !important;
}

/* Body copy stays readable and grounded */
p,
li,
dd,
.hero-lede-group p,
.question-grid article p,
.capability-card p,
.industry-card p,
.deliverable-grid article p,
.report-grid article p,
.comparison-grid article p {
  font-family: var(--ps-font-body) !important;
  font-weight: 400;
}

/* Strong lead sentence */
.hero-lede {
  font-family: var(--ps-font-body) !important;
  font-weight: 700 !important;
}

/* Refined label rhythm */
.eyebrow,
.nav-links a,
.header-cta,
.button,
.button-primary,
.button-secondary,
.hero-facts dt {
  letter-spacing: 0.105em !important;
}

/* Mobile precision correction: keep headline and cards inside viewport */
@media (max-width: 640px) {
  #hero-title {
    font-size: clamp(2.15rem, 8.8vw, 3.15rem) !important;
    line-height: 1.01 !important;
    letter-spacing: -0.052em !important;
    max-width: 100% !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  .hero-copy,
  .hero-lede-group,
  .hero-actions,
  .hero-facts {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .hero-copy {
    overflow: hidden !important;
  }
}

@media (max-width: 420px) {
  #hero-title {
    font-size: clamp(1.92rem, 8.1vw, 2.55rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.045em !important;
  }

  .hero-copy {
    padding-left: 1.1rem !important;
    padding-right: 1.1rem !important;
  }

  .hero-lede-group {
    padding-left: 1rem !important;
    padding-right: 0.9rem !important;
  }
}
/* end PointState precision typography system */


/* PointState patch 20260629: final mobile overflow kill */
@media (max-width: 520px) {
  html,
  body {
    width: 100vw !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  body > * {
    max-width: 100vw !important;
  }

  .site-header,
  main,
  section,
  .hero,
  .hero-copy,
  .hero-lede-group,
  .hero-actions,
  .hero-facts,
  .hero-media,
  .hero-media figure,
  .question-grid,
  .capability-grid,
  .industry-grid,
  .deliverable-grid,
  .report-grid,
  .comparison-grid {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .hero {
    display: block !important;
    grid-template-columns: 1fr !important;
    overflow-x: hidden !important;
  }

  .hero-copy {
    width: 100vw !important;
    max-width: 100vw !important;
    padding-left: 1.15rem !important;
    padding-right: 1.15rem !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  #hero-title {
    display: block !important;
    width: 100% !important;
    max-width: calc(100vw - 2.3rem) !important;
    font-size: clamp(2.05rem, 10.2vw, 2.9rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.055em !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  #hero-title span {
    display: inline !important;
  }

  .hero-lede-group {
    width: 100% !important;
    max-width: calc(100vw - 2.3rem) !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 1rem 0.95rem 1rem 1rem !important;
    overflow-x: hidden !important;
  }

  .hero-lede-group p,
  .hero-lede {
    width: 100% !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .hero-actions {
    width: 100% !important;
    max-width: calc(100vw - 2.3rem) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .hero-actions a,
  .hero-actions .button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .hero-facts {
    width: 100% !important;
    max-width: calc(100vw - 2.3rem) !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .hero-facts div,
  .hero-facts dt,
  .hero-facts dd {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  .hero-media,
  .hero-media img {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  .hero-media img {
    display: block !important;
    height: auto !important;
    object-fit: cover !important;
  }
}

@media (max-width: 390px) {
  #hero-title {
    font-size: clamp(1.92rem, 9.4vw, 2.45rem) !important;
    letter-spacing: -0.05em !important;
  }
}
/* end PointState final mobile overflow kill */


/* PointState patch 20260629: warm signal orange accent trial */
:root {
  --ps-signal-orange: #E58A1F;
  --ps-signal-orange-soft: rgba(229, 138, 31, 0.18);
  --ps-signal-orange-line: rgba(229, 138, 31, 0.62);
  --ps-soft-copper: #C9782A;
}

/* Keep orange tied to action/execution, not the whole brand. */
.hero-facts > div:nth-child(3),
.question-grid article:nth-child(3),
.capability-card:nth-of-type(3),
.deliverable-grid article:nth-child(3),
.report-grid article:nth-child(3),
.comparison-grid article:nth-child(3) {
  border-color: var(--ps-signal-orange-line) !important;
  box-shadow:
    inset 0 0 0 1px rgba(229, 138, 31, 0.10),
    0 18px 42px rgba(229, 138, 31, 0.055) !important;
}

.hero-facts > div:nth-child(3) dt,
.question-grid article:nth-child(3) h3,
.capability-card:nth-of-type(3) h3,
.deliverable-grid article:nth-child(3) h3,
.report-grid article:nth-child(3) h3,
.comparison-grid article:nth-child(3) h3 {
  color: #11182d !important;
}

/* Tiny signal marks only. The adults are still in charge. */
.hero-facts > div:nth-child(3)::after,
.question-grid article:nth-child(3)::after,
.deliverable-grid article:nth-child(3)::after,
.report-grid article:nth-child(3)::after,
.comparison-grid article:nth-child(3)::after {
  border-color: var(--ps-signal-orange) !important;
}

.hero-facts > div:nth-child(3)::before,
.question-grid article:nth-child(3)::before,
.deliverable-grid article:nth-child(3)::before,
.report-grid article:nth-child(3)::before,
.comparison-grid article:nth-child(3)::before {
  color: var(--ps-signal-orange) !important;
  border-color: var(--ps-signal-orange-line) !important;
}

/* Action-state micro accent */
a[href="#stabilize"],
a[href="#rebuild"] {
  text-decoration-color: var(--ps-signal-orange-line);
}

.nav-links a[href="#stabilize"]:hover,
.nav-links a[href="#rebuild"]:hover {
  color: var(--ps-signal-orange) !important;
}

/* Small orange underline on execution-related cards without turning the page into a traffic cone. */
.hero-facts > div:nth-child(3) {
  background:
    linear-gradient(90deg, rgba(229, 138, 31, 0.085), rgba(255,255,255,0) 42%),
    inherit !important;
}

@media (max-width: 640px) {
  .hero-facts > div:nth-child(3),
  .question-grid article:nth-child(3),
  .deliverable-grid article:nth-child(3) {
    box-shadow:
      inset 0 0 0 1px rgba(229, 138, 31, 0.10),
      0 10px 26px rgba(229, 138, 31, 0.045) !important;
  }
}
/* end PointState warm signal orange accent trial */


/* PointState patch 20260629: logo sanctuary and go-live hero image treatment */
.site-header {
  min-height: 96px !important;
  padding: 1.08rem clamp(2.4rem, 5vw, 5.8rem) 1.05rem !important;
  align-items: center !important;
  background: rgba(255,255,255,0.985) !important;
  border-bottom: 1px solid rgba(190, 207, 232, 0.74) !important;
}

.site-header .ps-logo-link {
  padding: 0.28rem 0.25rem 0.28rem 0 !important;
}

.site-header .ps-logo {
  width: clamp(190px, 15.8vw, 245px) !important;
  height: auto !important;
}

.nav-links {
  margin-left: auto !important;
}

.header-cta {
  margin-left: clamp(1rem, 2vw, 1.8rem) !important;
}

.hero {
  border-top: 0 !important;
}

.hero-visual img {
  object-fit: cover !important;
  object-position: 62% 50% !important;
  filter: saturate(0.94) contrast(1.03) brightness(1.02);
}

@media (min-width: 980px) {
  .hero {
    min-height: 720px !important;
  }

  .hero-copy {
    padding-top: clamp(5.7rem, 8vw, 8.4rem) !important;
  }
}

@media (max-width: 760px) {
  .site-header {
    min-height: 92px !important;
    padding: 1rem 1.25rem 0.95rem !important;
  }

  .site-header .ps-logo {
    width: clamp(160px, 45vw, 205px) !important;
  }
}

@media (max-width: 420px) {
  .site-header {
    min-height: 86px !important;
    padding: 0.85rem 1rem 0.8rem !important;
  }

  .site-header .ps-logo {
    width: 168px !important;
  }
}
/* end PointState logo sanctuary and go-live hero image treatment */


/* PointState patch 20260629: mobile text clipping kill */
@media (max-width: 520px) {
  .hero-copy {
    overflow: visible !important;
  }

  .hero-lede-group,
  .hero-facts,
  .hero-facts div,
  .readiness-strip,
  .readiness-item {
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .hero-lede-group {
    width: auto !important;
    max-width: none !important;
    margin-right: 1.15rem !important;
  }

  .hero-lede-group p,
  .hero-lede,
  .hero-facts dd,
  .readiness-item p,
  .readiness-item h2 {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    hyphens: auto !important;
  }

  .hero-lede {
    font-size: 0.92rem !important;
    line-height: 1.42 !important;
  }

  .hero-lede-group p {
    font-size: 0.88rem !important;
    line-height: 1.48 !important;
  }

  .hero-facts {
    width: auto !important;
    max-width: none !important;
    margin-right: 1.15rem !important;
  }

  .hero-facts div {
    padding-right: 1rem !important;
  }

  .hero-facts dt {
    font-size: 0.8rem !important;
    line-height: 1.25 !important;
  }

  .hero-facts dd {
    font-size: 0.78rem !important;
    line-height: 1.46 !important;
  }
}

@media (max-width: 390px) {
  .hero-lede {
    font-size: 0.86rem !important;
  }

  .hero-lede-group p {
    font-size: 0.82rem !important;
  }

  .hero-facts dd {
    font-size: 0.74rem !important;
  }
}
/* end PointState mobile text clipping kill */


/* PointState patch 20260629: mobile rail fix, stop text clipping */
@media (max-width: 520px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .hero {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  #hero-title,
  .eyebrow,
  .hero-lede-group,
  .hero-actions,
  .hero-facts {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  #hero-title {
    font-size: clamp(2rem, 9.2vw, 2.72rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -0.052em !important;
    white-space: normal !important;
    overflow: visible !important;
  }

  #hero-title span {
    display: inline !important;
  }

  .hero-lede-group {
    padding: 1rem 1rem 1rem 1.05rem !important;
    overflow: visible !important;
  }

  .hero-lede-group *,
  .hero-facts *,
  .readiness-strip *,
  .readiness-item * {
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    box-sizing: border-box !important;
  }

  .hero-lede {
    font-size: 0.84rem !important;
    line-height: 1.42 !important;
  }

  .hero-lede-group p {
    font-size: 0.82rem !important;
    line-height: 1.46 !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .hero-actions .button,
  .hero-actions a {
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-facts {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.7rem !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  .hero-facts div {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1rem 1rem 1rem 1rem !important;
    border: 1px solid rgba(174, 198, 238, 0.88) !important;
    background: rgba(255,255,255,0.78) !important;
  }

  .hero-facts div:nth-child(3) {
    border-color: rgba(229, 138, 31, 0.7) !important;
  }

  .hero-facts dt {
    font-size: 0.78rem !important;
    line-height: 1.22 !important;
  }

  .hero-facts dd {
    font-size: 0.76rem !important;
    line-height: 1.45 !important;
  }

  .hero-visual,
  .hero-visual img {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow: hidden !important;
  }

  .hero-callout {
    left: 1rem !important;
    right: 1rem !important;
    max-width: calc(100% - 2rem) !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 390px) {
  .hero-copy {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  #hero-title {
    font-size: clamp(1.88rem, 8.6vw, 2.38rem) !important;
  }

  .hero-lede {
    font-size: 0.8rem !important;
  }

  .hero-lede-group p {
    font-size: 0.78rem !important;
  }

  .hero-facts dd {
    font-size: 0.72rem !important;
  }
}
/* end PointState mobile rail fix */


/* PointState patch 20260629: go-live finish pass, mobile simplification and operating imagery */
:root {
  --ps-signal-orange: #E58A1F;
  --ps-soft-copper: #C9782A;
  --ps-live-navy: #0E1F3A;
  --ps-ice: #F7FAFF;
  --ps-blue-live: #2F66F3;
}

/* More deliberate header sanctuary */
.site-header {
  min-height: 102px !important;
  padding: 1.16rem clamp(2.7rem, 5vw, 6.4rem) 1.12rem !important;
}

.site-header .ps-logo {
  width: clamp(205px, 16.2vw, 255px) !important;
}

/* Lower visual operating span */
.operating-span {
  position: relative;
  overflow: hidden;
  padding: clamp(4.5rem, 7vw, 7rem) clamp(1.25rem, 4vw, 5.5rem);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.98), rgba(247,250,255,0.96)),
    radial-gradient(circle at 82% 12%, rgba(47,102,243,0.08), transparent 24rem);
  border-top: 1px solid rgba(188, 207, 236, 0.72);
  border-bottom: 1px solid rgba(188, 207, 236, 0.72);
}

.operating-span::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.46;
  background-image:
    linear-gradient(rgba(47,102,243,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(47,102,243,0.055) 1px, transparent 1px);
  background-size: 34px 34px;
}

.operating-span-inner {
  position: relative;
  z-index: 1;
  width: min(1180px, 100%);
  margin: 0 auto;
}

.operating-span-copy {
  max-width: 820px;
  margin-bottom: clamp(2rem, 4vw, 3.2rem);
}

.operating-span-copy h2 {
  max-width: 800px;
  margin: 0;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(2.3rem, 4.8vw, 4.25rem);
  line-height: 1.02;
  letter-spacing: -0.055em;
  font-weight: 400;
  color: #11182d;
}

.operating-span-copy p:not(.eyebrow) {
  max-width: 43rem;
  margin: 1.2rem 0 0;
  font-size: 1rem;
  line-height: 1.72;
  color: #33425a;
}

.operating-span-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1rem, 2.4vw, 1.75rem);
}

.operating-visual-card {
  position: relative;
  display: grid;
  grid-template-rows: minmax(280px, 0.95fr) auto;
  min-height: 560px;
  background: rgba(255,255,255,0.78);
  border: 1px solid rgba(174, 198, 238, 0.9);
  box-shadow: 0 24px 64px rgba(14, 31, 58, 0.08);
  overflow: hidden;
}

.operating-visual-card::after {
  content: "";
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 2.1rem;
  height: 2.1rem;
  border-right: 2px solid rgba(47,102,243,0.72);
  border-bottom: 2px solid rgba(47,102,243,0.72);
}

.operating-visual-card:nth-child(2)::after {
  border-color: rgba(229,138,31,0.72);
}

.operating-visual-card img {
  width: 100%;
  height: 100%;
  min-height: 300px;
  display: block;
  object-fit: cover;
}

.operating-visual-card:first-child img {
  object-position: 58% 50%;
}

.operating-visual-card:nth-child(2) img {
  object-position: 50% 50%;
}

.operating-visual-card > div {
  padding: clamp(1.35rem, 2.5vw, 2rem);
}

.visual-kicker {
  margin: 0 0 0.7rem;
  font-family: var(--ps-font-ui, "Inter", sans-serif);
  font-size: 0.72rem;
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-weight: 800;
  color: var(--ps-blue-live);
}

.operating-visual-card:nth-child(2) .visual-kicker {
  color: var(--ps-signal-orange);
}

.operating-visual-card h3 {
  margin: 0;
  max-width: 32rem;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.35rem, 2.1vw, 2rem);
  line-height: 1.1;
  letter-spacing: -0.04em;
  font-weight: 500;
  color: #11182d;
}

.operating-visual-card p:last-child {
  margin: 0.9rem 0 0;
  max-width: 34rem;
  font-size: 0.95rem;
  line-height: 1.62;
  color: #40506a;
}

/* Mobile: stop pretending a phone is a blueprint table */
@media (max-width: 760px) {
  .site-header {
    min-height: 96px !important;
    padding: 1rem 1.25rem 0.95rem !important;
  }

  .site-header .ps-logo {
    width: clamp(170px, 46vw, 212px) !important;
  }

  .hero {
    min-height: auto !important;
  }

  .hero-copy {
    padding: 2.85rem 1.15rem 1.35rem !important;
  }

  #hero-title {
    font-size: clamp(2.35rem, 9.4vw, 3.55rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -0.052em !important;
  }

  .hero-lede-group {
    margin-top: 1.05rem !important;
    padding: 1rem 1rem 1rem 1rem !important;
    background: rgba(255,255,255,0.84) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  .hero-lede {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
  }

  .hero-lede-group p {
    font-size: 0.88rem !important;
    line-height: 1.5 !important;
  }

  .hero-facts {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .hero-facts div {
    border: 1px solid rgba(174,198,238,0.9) !important;
    background: rgba(255,255,255,0.82) !important;
    padding: 1rem !important;
  }

  .hero-facts div:nth-child(3) {
    border-color: rgba(229,138,31,0.72) !important;
  }

  .hero-facts div::before,
  .hero-facts div::after {
    display: none !important;
  }

  .hero-facts dt {
    font-size: 0.8rem !important;
    line-height: 1.25 !important;
  }

  .hero-facts dd {
    font-size: 0.78rem !important;
    line-height: 1.48 !important;
  }

  .hero-callout {
    display: none !important;
  }

  .readiness-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.65rem !important;
    padding: 0.9rem 1rem 1.25rem !important;
    background: rgba(247,250,255,0.96) !important;
  }

  .readiness-item {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0.95rem 1rem !important;
    border: 1px solid rgba(174,198,238,0.72) !important;
    background: rgba(255,255,255,0.84) !important;
  }

  .readiness-item span {
    display: none !important;
  }

  .readiness-item h2 {
    font-size: 0.84rem !important;
    line-height: 1.28 !important;
  }

  .readiness-item p {
    font-size: 0.78rem !important;
    line-height: 1.48 !important;
  }

  .operating-span {
    padding: 3.4rem 1rem 3.7rem;
  }

  .operating-span-copy h2 {
    font-size: clamp(2.05rem, 9vw, 3rem);
  }

  .operating-span-grid {
    grid-template-columns: 1fr;
  }

  .operating-visual-card {
    min-height: auto;
    grid-template-rows: auto auto;
  }

  .operating-visual-card img {
    min-height: 220px;
    max-height: 300px;
  }
}

@media (max-width: 420px) {
  .site-header {
    min-height: 92px !important;
    padding: 0.9rem 1rem 0.85rem !important;
  }

  .site-header .ps-logo {
    width: 176px !important;
  }

  .hero-copy {
    padding: 2.35rem 1rem 1.2rem !important;
  }

  #hero-title {
    font-size: clamp(2.05rem, 8.75vw, 2.72rem) !important;
    line-height: 1.04 !important;
  }

  .hero-lede {
    font-size: 0.84rem !important;
  }

  .hero-lede-group p {
    font-size: 0.81rem !important;
  }
}
/* end PointState go-live finish pass */


/* PointState patch 20260629: final mobile rail containment before live */
@media (max-width: 760px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  body {
    position: relative !important;
  }

  .site-header,
  main,
  .hero,
  .readiness-strip,
  .operating-span,
  .pressure,
  .capabilities,
  .industries,
  .diagnostic,
  .deliverables,
  .reports,
  .boundaries,
  .before-after,
  .final-cta,
  footer {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  .hero {
    display: block !important;
    grid-template-columns: none !important;
    min-height: auto !important;
  }

  .hero-copy {
    width: calc(100vw - 2rem) !important;
    max-width: calc(100vw - 2rem) !important;
    min-width: 0 !important;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
    padding: 2.8rem 0 1.2rem !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .hero-copy > *,
  .hero-lede-group,
  .hero-actions,
  .hero-facts,
  .hero-facts div {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  .eyebrow {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  #hero-title {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    font-size: clamp(2.05rem, 8.6vw, 3.05rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.052em !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  #hero-title span {
    display: inline !important;
  }

  .hero-lede-group {
    padding: 1rem 0.95rem !important;
    border-left: 3px solid var(--blue, #2f66f3) !important;
    background: rgba(255,255,255,0.88) !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
  }

  .hero-lede-group p,
  .hero-lede,
  .hero-facts dt,
  .hero-facts dd,
  .readiness-item h2,
  .readiness-item p {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    hyphens: none !important;
    box-sizing: border-box !important;
  }

  .hero-lede {
    font-size: 0.86rem !important;
    line-height: 1.42 !important;
  }

  .hero-lede-group p {
    font-size: 0.82rem !important;
    line-height: 1.48 !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.72rem !important;
  }

  .hero-actions a,
  .hero-actions .button {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding-left: 0.9rem !important;
    padding-right: 0.9rem !important;
    box-sizing: border-box !important;
  }

  .hero-facts {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.72rem !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
  }

  .hero-facts div {
    padding: 1rem !important;
    border: 1px solid rgba(174,198,238,0.88) !important;
    background: rgba(255,255,255,0.86) !important;
  }

  .hero-facts div:nth-child(3) {
    border-color: rgba(229,138,31,0.72) !important;
  }

  .hero-facts div::before,
  .hero-facts div::after {
    display: none !important;
  }

  .hero-facts dt {
    font-size: 0.78rem !important;
    line-height: 1.24 !important;
  }

  .hero-facts dd {
    font-size: 0.74rem !important;
    line-height: 1.48 !important;
  }

  .hero-visual,
  .hero-visual img {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  .hero-visual img {
    display: block !important;
    height: auto !important;
    object-fit: cover !important;
  }

  .hero-callout {
    display: none !important;
  }

  .readiness-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.68rem !important;
    padding: 1rem !important;
    border: 0 !important;
    background: rgba(247,250,255,0.96) !important;
  }

  .readiness-item {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 0.95rem 1rem !important;
    border: 1px solid rgba(174,198,238,0.72) !important;
    background: rgba(255,255,255,0.88) !important;
    box-sizing: border-box !important;
  }

  .readiness-item span,
  .readiness-item::before,
  .readiness-item::after {
    display: none !important;
  }

  .readiness-item h2 {
    font-size: 0.82rem !important;
    line-height: 1.25 !important;
  }

  .readiness-item p {
    font-size: 0.76rem !important;
    line-height: 1.48 !important;
  }

  .operating-span {
    padding: 3.2rem 1rem 3.4rem !important;
  }

  .operating-span-inner,
  .operating-span-copy,
  .operating-span-grid,
  .operating-visual-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .operating-span-copy h2 {
    font-size: clamp(2rem, 8.4vw, 2.85rem) !important;
    line-height: 1.05 !important;
  }

  .operating-span-copy p:not(.eyebrow) {
    font-size: 0.88rem !important;
    line-height: 1.58 !important;
  }

  .operating-span-grid {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }

  .operating-visual-card {
    min-height: auto !important;
    grid-template-rows: auto auto !important;
  }

  .operating-visual-card img {
    min-height: 210px !important;
    max-height: 285px !important;
  }

  .operating-visual-card > div {
    padding: 1.15rem !important;
  }

  .operating-visual-card h3 {
    font-size: 1.3rem !important;
    line-height: 1.12 !important;
  }

  .operating-visual-card p:last-child {
    font-size: 0.82rem !important;
    line-height: 1.52 !important;
  }
}

@media (max-width: 420px) {
  .hero-copy {
    width: calc(100vw - 2rem) !important;
    max-width: calc(100vw - 2rem) !important;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }

  #hero-title {
    font-size: clamp(1.92rem, 8.05vw, 2.42rem) !important;
    line-height: 1.055 !important;
  }

  .hero-lede {
    font-size: 0.8rem !important;
  }

  .hero-lede-group p {
    font-size: 0.77rem !important;
  }

  .hero-facts dd,
  .readiness-item p {
    font-size: 0.72rem !important;
  }
}
/* end PointState final mobile rail containment before live */


/* PointState patch 20260629: final mobile typography split and rail polish */
@media (min-width: 761px) {
  #hero-title span,
  #operating-span-title span {
    display: inline;
  }
}

@media (max-width: 760px) {
  .site-header {
    min-height: 92px !important;
  }

  .hero-copy {
    width: min(calc(100vw - 2rem), 36rem) !important;
    max-width: min(calc(100vw - 2rem), 36rem) !important;
    margin-left: 1rem !important;
    margin-right: 1rem !important;
    padding-top: 2.6rem !important;
    overflow: visible !important;
  }

  #hero-title {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(2.18rem, 9.1vw, 3.15rem) !important;
    line-height: 1.045 !important;
    letter-spacing: -0.055em !important;
    overflow: visible !important;
    text-wrap: auto !important;
  }

  #hero-title span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }

  .hero-lede-group {
    width: 100% !important;
    max-width: 100% !important;
    padding: 1rem 1rem 1rem 1rem !important;
    overflow: visible !important;
  }

  .hero-lede-group p,
  .hero-lede {
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    text-overflow: clip !important;
  }

  .hero-lede {
    font-size: 0.88rem !important;
    line-height: 1.44 !important;
  }

  .hero-lede-group p {
    font-size: 0.84rem !important;
    line-height: 1.5 !important;
  }

  .hero-actions,
  .hero-facts {
    width: 100% !important;
    max-width: 100% !important;
  }

  .hero-facts {
    gap: 0.8rem !important;
  }

  .hero-facts div {
    padding: 1rem 1.05rem !important;
    overflow: visible !important;
  }

  .hero-facts dt {
    font-size: 0.8rem !important;
    line-height: 1.24 !important;
  }

  .hero-facts dd {
    font-size: 0.76rem !important;
    line-height: 1.5 !important;
    overflow: visible !important;
    overflow-wrap: break-word !important;
  }

  .readiness-strip {
    padding: 1rem !important;
  }

  .readiness-item {
    overflow: visible !important;
  }

  .readiness-item h2,
  .readiness-item p {
    overflow: visible !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  .operating-span {
    padding: 3.1rem 1rem 3.4rem !important;
  }

  .operating-span-copy {
    width: min(calc(100vw - 2rem), 36rem) !important;
    max-width: min(calc(100vw - 2rem), 36rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #operating-span-title {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(2.05rem, 8.5vw, 2.8rem) !important;
    line-height: 1.06 !important;
    letter-spacing: -0.052em !important;
    overflow: visible !important;
  }

  #operating-span-title span {
    display: block !important;
    white-space: nowrap !important;
  }

  .operating-span-copy p:not(.eyebrow) {
    font-size: 0.88rem !important;
    line-height: 1.58 !important;
    overflow-wrap: break-word !important;
  }

  .operating-span-grid {
    width: min(calc(100vw - 2rem), 36rem) !important;
    max-width: min(calc(100vw - 2rem), 36rem) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 420px) {
  .hero-copy {
    width: min(calc(100vw - 2rem), 22rem) !important;
    max-width: min(calc(100vw - 2rem), 22rem) !important;
  }

  #hero-title {
    font-size: clamp(2.08rem, 8.65vw, 2.48rem) !important;
    line-height: 1.055 !important;
  }

  .hero-lede {
    font-size: 0.8rem !important;
  }

  .hero-lede-group p {
    font-size: 0.76rem !important;
  }

  .hero-facts dd,
  .readiness-item p {
    font-size: 0.72rem !important;
  }

  .operating-span-copy,
  .operating-span-grid {
    width: min(calc(100vw - 2rem), 22rem) !important;
    max-width: min(calc(100vw - 2rem), 22rem) !important;
  }

  #operating-span-title {
    font-size: clamp(1.86rem, 7.9vw, 2.28rem) !important;
  }
}
/* end PointState final mobile typography split and rail polish */


/* PointState patch 20260629: tailored reports fear-ladder workproducts */
.reports .report-grid-expanded {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(0.85rem, 1.6vw, 1.25rem);
  align-items: stretch;
}

.reports .report-card-expanded {
  grid-column: span 4;
  position: relative;
  min-height: 290px;
  padding: clamp(1.25rem, 2vw, 1.7rem);
  border: 1px solid rgba(174, 198, 238, 0.86);
  background:
    linear-gradient(180deg, rgba(255,255,255,0.92), rgba(247,250,255,0.76));
  box-shadow: 0 18px 46px rgba(14, 31, 58, 0.055);
  overflow: hidden;
}

.reports .report-card-expanded:nth-child(1),
.reports .report-card-expanded:nth-child(2) {
  grid-column: span 6;
}

.reports .report-card-expanded::after {
  content: "";
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  width: 1.8rem;
  height: 1.8rem;
  border-right: 2px solid rgba(47,102,243,0.52);
  border-bottom: 2px solid rgba(47,102,243,0.52);
}

.reports .report-card-expanded:nth-child(1)::after,
.reports .report-card-expanded:nth-child(2)::after {
  border-color: rgba(229,138,31,0.62);
}

.reports .report-card-expanded .visual-kicker {
  margin: 0 0 0.72rem;
  font-size: 0.68rem;
  letter-spacing: 0.15em;
  color: var(--ps-blue-live, #2F66F3);
}

.reports .report-card-expanded:nth-child(1) .visual-kicker,
.reports .report-card-expanded:nth-child(2) .visual-kicker {
  color: var(--ps-signal-orange, #E58A1F);
}

.reports .report-card-expanded h3 {
  margin: 0;
  max-width: 28rem;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.2rem, 1.7vw, 1.62rem);
  line-height: 1.12;
  letter-spacing: -0.04em;
  font-weight: 500;
  color: #11182d;
}

.reports .report-card-expanded p:last-child {
  margin: 0.85rem 0 0;
  max-width: 35rem;
  font-size: 0.9rem;
  line-height: 1.58;
  color: #40506a;
}

@media (max-width: 980px) {
  .reports .report-card-expanded,
  .reports .report-card-expanded:nth-child(1),
  .reports .report-card-expanded:nth-child(2) {
    grid-column: span 6;
  }
}

@media (max-width: 760px) {
  .reports .report-grid-expanded {
    grid-template-columns: 1fr !important;
  }

  .reports .report-card-expanded,
  .reports .report-card-expanded:nth-child(1),
  .reports .report-card-expanded:nth-child(2) {
    grid-column: auto !important;
    min-height: auto;
    padding: 1.15rem;
  }

  .reports .report-card-expanded h3 {
    font-size: 1.25rem;
  }

  .reports .report-card-expanded p:last-child {
    font-size: 0.82rem;
    line-height: 1.52;
  }
}
/* end PointState tailored reports fear-ladder workproducts */


/* PointState patch 20260629: hard mobile wrap before package */
@media (max-width: 760px) {
  html,
  body {
    overflow-x: hidden !important;
    max-width: 100% !important;
  }

  .hero-copy,
  .operating-span-copy,
  .operating-span-grid {
    width: calc(100% - 2rem) !important;
    max-width: 34rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  #hero-title,
  #operating-span-title {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-wrap: auto !important;
  }

  #hero-title {
    font-size: clamp(2.05rem, 8.2vw, 2.85rem) !important;
    line-height: 1.045 !important;
    letter-spacing: -0.052em !important;
  }

  #hero-title span,
  #operating-span-title span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  .hero-lede-group,
  .hero-actions,
  .hero-facts,
  .hero-facts div,
  .readiness-strip,
  .readiness-item,
  .operating-visual-card {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  .hero-lede-group p,
  .hero-lede,
  .hero-facts dd,
  .readiness-item p,
  .operating-span-copy p,
  .operating-visual-card p {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  .hero-facts {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.75rem !important;
  }

  .readiness-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 0.65rem !important;
  }

  #operating-span-title {
    font-size: clamp(2rem, 8.1vw, 2.7rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.052em !important;
  }
}

@media (max-width: 420px) {
  .hero-copy,
  .operating-span-copy,
  .operating-span-grid {
    width: calc(100% - 2rem) !important;
    max-width: 21.5rem !important;
  }

  #hero-title {
    font-size: clamp(1.95rem, 7.95vw, 2.34rem) !important;
    line-height: 1.06 !important;
  }

  #operating-span-title {
    font-size: clamp(1.82rem, 7.35vw, 2.18rem) !important;
    line-height: 1.06 !important;
  }

  .hero-lede {
    font-size: 0.79rem !important;
  }

  .hero-lede-group p,
  .operating-span-copy p:not(.eyebrow),
  .operating-visual-card p:last-child {
    font-size: 0.74rem !important;
    line-height: 1.5 !important;
  }
}
/* end PointState hard mobile wrap before package */



/* PointState patch 20260629: reports contrast repair */
.reports {
  background:
    linear-gradient(180deg, #0e1f2d 0%, #122838 100%) !important;
  color: #f7faff !important;
}

.reports::before {
  opacity: 0.18 !important;
}

.reports .section-heading,
.reports .section-heading h2,
.reports .section-heading p {
  color: #f7faff !important;
}

.reports .section-heading .eyebrow {
  color: #7fb2ff !important;
}

.reports .report-grid-expanded {
  margin-top: clamp(2rem, 3.5vw, 3rem) !important;
}

.reports .report-card-expanded {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.985), rgba(247,250,255,0.955)) !important;
  border: 1px solid rgba(176, 202, 240, 0.88) !important;
  box-shadow:
    0 22px 58px rgba(0, 0, 0, 0.22),
    inset 0 0 0 1px rgba(255,255,255,0.62) !important;
  color: #11182d !important;
}

.reports .report-card-expanded h3 {
  color: #11182d !important;
}

.reports .report-card-expanded p {
  color: #35445d !important;
}

.reports .report-card-expanded .visual-kicker {
  color: #2F66F3 !important;
}

.reports .report-card-expanded:nth-child(1),
.reports .report-card-expanded:nth-child(2) {
  border-color: rgba(229, 138, 31, 0.72) !important;
}

.reports .report-card-expanded:nth-child(1) .visual-kicker,
.reports .report-card-expanded:nth-child(2) .visual-kicker {
  color: #E58A1F !important;
}

.reports .report-card-expanded::before {
  opacity: 0.28 !important;
}

.reports .report-card-expanded::after {
  opacity: 0.92 !important;
}

@media (max-width: 760px) {
  .reports {
    background: linear-gradient(180deg, #0e1f2d 0%, #122838 100%) !important;
  }

  .reports .report-card-expanded {
    background: rgba(255,255,255,0.975) !important;
    box-shadow: 0 16px 40px rgba(0,0,0,0.18) !important;
  }

  .reports .report-card-expanded p:last-child {
    color: #35445d !important;
  }
}
/* end PointState reports contrast repair */



/* PointState patch 20260629: reports light reset, readable final */
.reports {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.985), rgba(247,250,255,0.965)) !important;
  color: #11182d !important;
  border-top: 1px solid rgba(188,207,236,0.72) !important;
  border-bottom: 1px solid rgba(188,207,236,0.72) !important;
}

.reports::before,
.reports::after {
  opacity: 0.22 !important;
  mix-blend-mode: normal !important;
  pointer-events: none !important;
}

.reports .section-heading,
.reports .section-heading *,
.reports .section-heading h2,
.reports .section-heading p {
  color: #11182d !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

.reports .section-heading .eyebrow {
  color: #2F66F3 !important;
}

.reports .report-grid-expanded {
  position: relative !important;
  z-index: 2 !important;
  margin-top: clamp(2rem, 3.5vw, 3rem) !important;
}

.reports .report-card-expanded {
  position: relative !important;
  isolation: isolate !important;
  z-index: 1 !important;
  background:
    linear-gradient(180deg, #ffffff 0%, #f7faff 100%) !important;
  border: 1px solid rgba(174,198,238,0.92) !important;
  box-shadow:
    0 18px 46px rgba(14,31,58,0.07),
    inset 0 0 0 1px rgba(255,255,255,0.84) !important;
  color: #11182d !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

.reports .report-card-expanded::before {
  opacity: 0.12 !important;
  mix-blend-mode: normal !important;
  pointer-events: none !important;
}

.reports .report-card-expanded::after {
  opacity: 1 !important;
  mix-blend-mode: normal !important;
}

.reports .report-card-expanded,
.reports .report-card-expanded *,
.reports .report-card-expanded h3,
.reports .report-card-expanded p,
.reports .report-card-expanded .visual-kicker {
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  text-shadow: none !important;
}

.reports .report-card-expanded h3 {
  color: #11182d !important;
}

.reports .report-card-expanded p {
  color: #35445d !important;
}

.reports .report-card-expanded p:last-child {
  color: #40506a !important;
}

.reports .report-card-expanded .visual-kicker {
  color: #2F66F3 !important;
}

.reports .report-card-expanded:nth-child(1),
.reports .report-card-expanded:nth-child(2),
.reports .report-card-expanded:nth-child(3) {
  border-color: rgba(229,138,31,0.62) !important;
}

.reports .report-card-expanded:nth-child(1) .visual-kicker,
.reports .report-card-expanded:nth-child(2) .visual-kicker,
.reports .report-card-expanded:nth-child(3) .visual-kicker {
  color: #E58A1F !important;
}

@media (max-width: 760px) {
  .reports {
    background:
      linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,250,255,0.97)) !important;
  }

  .reports .report-card-expanded {
    background: #ffffff !important;
    box-shadow: 0 12px 30px rgba(14,31,58,0.065) !important;
  }
}
/* end PointState reports light reset, readable final */


/* PointState patch 20260629: simple reports ladder final */
.reports.reports-simple {
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(4.5rem, 7vw, 7rem) clamp(1.2rem, 4vw, 5.5rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,250,255,0.965)) !important;
  color: #11182d !important;
  border-top: 1px solid rgba(188,207,236,0.72) !important;
  border-bottom: 1px solid rgba(188,207,236,0.72) !important;
}

.reports.reports-simple::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.45 !important;
  background-image:
    linear-gradient(rgba(47,102,243,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(47,102,243,0.055) 1px, transparent 1px) !important;
  background-size: 34px 34px !important;
}

.reports.reports-simple::after {
  display: none !important;
}

.reports-simple-inner {
  position: relative !important;
  z-index: 2 !important;
  width: min(1120px, 100%) !important;
  margin: 0 auto !important;
}

.reports-simple-heading {
  max-width: 850px !important;
  margin: 0 0 clamp(2rem, 4vw, 3rem) !important;
}

.reports-simple-heading,
.reports-simple-heading *,
.reports.reports-simple .section-heading,
.reports.reports-simple .section-heading * {
  color: #11182d !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  text-shadow: none !important;
}

.reports-simple-heading .eyebrow {
  color: #2F66F3 !important;
}

.reports-simple-heading h2 {
  max-width: 860px !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(2.35rem, 5vw, 4.55rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.055em !important;
  font-weight: 400 !important;
}

.reports-simple-heading p:not(.eyebrow) {
  max-width: 46rem !important;
  font-size: 1rem !important;
  line-height: 1.66 !important;
  color: #35445d !important;
}

.report-ladder {
  display: grid !important;
  gap: 0.85rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

.report-ladder-item {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr) !important;
  gap: clamp(1rem, 2.5vw, 2rem) !important;
  align-items: start !important;
  padding: clamp(1.05rem, 2vw, 1.45rem) clamp(1.1rem, 2.4vw, 1.75rem) !important;
  background: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(174,198,238,0.88) !important;
  box-shadow: 0 14px 34px rgba(14,31,58,0.045) !important;
  color: #11182d !important;
  opacity: 1 !important;
  overflow: visible !important;
  mix-blend-mode: normal !important;
  filter: none !important;
}

.report-ladder-item:nth-child(1),
.report-ladder-item:nth-child(2),
.report-ladder-item:nth-child(3) {
  border-color: rgba(229,138,31,0.55) !important;
}

.report-ladder-index {
  display: grid !important;
  gap: 0.25rem !important;
  align-content: start !important;
}

.report-ladder-index span {
  font-family: var(--ps-font-ui, "Inter", sans-serif) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.22em !important;
  font-weight: 800 !important;
  color: #2F66F3 !important;
}

.report-ladder-item:nth-child(1) .report-ladder-index span,
.report-ladder-item:nth-child(2) .report-ladder-index span,
.report-ladder-item:nth-child(3) .report-ladder-index span {
  color: #E58A1F !important;
}

.report-ladder-index strong {
  font-family: var(--ps-font-ui, "Inter", sans-serif) !important;
  font-size: 0.74rem !important;
  line-height: 1.25 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-weight: 800 !important;
  color: #2F66F3 !important;
}

.report-ladder-item:nth-child(1) .report-ladder-index strong,
.report-ladder-item:nth-child(2) .report-ladder-index strong,
.report-ladder-item:nth-child(3) .report-ladder-index strong {
  color: #E58A1F !important;
}

.report-ladder-body h3 {
  margin: 0 !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.04em !important;
  font-weight: 500 !important;
  color: #11182d !important;
}

.report-ladder-body p {
  margin: 0.55rem 0 0 !important;
  max-width: 52rem !important;
  font-size: 0.94rem !important;
  line-height: 1.58 !important;
  color: #40506a !important;
}

.report-ladder-item *,
.report-ladder-body *,
.report-ladder-index * {
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  filter: none !important;
  text-shadow: none !important;
}

@media (max-width: 760px) {
  .reports.reports-simple {
    padding: 3.4rem 1rem 3.7rem !important;
  }

  .reports-simple-inner {
    width: min(calc(100vw - 2rem), 36rem) !important;
    max-width: min(calc(100vw - 2rem), 36rem) !important;
  }

  .reports-simple-heading h2 {
    font-size: clamp(2rem, 8.2vw, 2.8rem) !important;
    line-height: 1.05 !important;
  }

  .reports-simple-heading p:not(.eyebrow) {
    font-size: 0.86rem !important;
    line-height: 1.56 !important;
  }

  .report-ladder-item {
    grid-template-columns: 1fr !important;
    gap: 0.55rem !important;
    padding: 1.05rem !important;
  }

  .report-ladder-index strong {
    font-size: 0.68rem !important;
  }

  .report-ladder-body h3 {
    font-size: 1.22rem !important;
  }

  .report-ladder-body p {
    font-size: 0.8rem !important;
    line-height: 1.5 !important;
  }
}
/* end PointState simple reports ladder final */

/* PointState patch 20260629: deliverables distinct icon grid */
.deliverables .deliverable-grid-icons {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.7vw, 1.35rem) !important;
  align-items: stretch !important;
}

.deliverables .deliverable-card {
  position: relative !important;
  min-height: 210px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  padding: clamp(1.2rem, 2vw, 1.55rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.94), rgba(247,250,255,0.82)) !important;
  border: 1px solid rgba(174,198,238,0.92) !important;
  box-shadow:
    0 18px 48px rgba(14,31,58,0.055),
    inset 0 0 0 1px rgba(255,255,255,0.72) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

.deliverables .deliverable-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  opacity: 0.42 !important;
  pointer-events: none !important;
  background-image:
    linear-gradient(rgba(47,102,243,0.052) 1px, transparent 1px),
    linear-gradient(90deg, rgba(47,102,243,0.052) 1px, transparent 1px) !important;
  background-size: 24px 24px !important;
}

.deliverables .deliverable-card::after {
  content: "" !important;
  position: absolute !important;
  right: 0.95rem !important;
  bottom: 0.95rem !important;
  width: 1.65rem !important;
  height: 1.65rem !important;
  border-right: 2px solid rgba(47,102,243,0.68) !important;
  border-bottom: 2px solid rgba(47,102,243,0.68) !important;
  pointer-events: none !important;
}

.deliverables .deliverable-card-accent {
  border-color: rgba(229,138,31,0.72) !important;
  box-shadow:
    0 18px 48px rgba(14,31,58,0.055),
    0 0 0 1px rgba(229,138,31,0.08),
    inset 0 0 0 1px rgba(255,255,255,0.72) !important;
}

.deliverables .deliverable-card-accent::after {
  border-color: rgba(229,138,31,0.82) !important;
}

.deliverables .deliverable-icon {
  position: relative !important;
  z-index: 2 !important;
  width: 3.4rem !important;
  height: 3.4rem !important;
  display: grid !important;
  place-items: center !important;
  color: #2F66F3 !important;
}

.deliverables .deliverable-card-accent .deliverable-icon {
  color: #E58A1F !important;
}

.deliverables .deliverable-icon svg {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.deliverables .deliverable-icon svg * {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.6 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  vector-effect: non-scaling-stroke !important;
}

.deliverables .deliverable-index {
  position: absolute !important;
  z-index: 2 !important;
  right: 1rem !important;
  top: 1rem !important;
  font-family: var(--ps-font-ui, "Inter", sans-serif) !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.16em !important;
  font-weight: 800 !important;
  color: rgba(47,102,243,0.48) !important;
}

.deliverables .deliverable-card-accent .deliverable-index {
  color: rgba(229,138,31,0.72) !important;
}

.deliverables .deliverable-card h3 {
  position: relative !important;
  z-index: 2 !important;
  margin: auto 0 0 !important;
  max-width: 13.5rem !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.05rem, 1.35vw, 1.28rem) !important;
  line-height: 1.16 !important;
  letter-spacing: -0.035em !important;
  font-weight: 600 !important;
  color: #11182d !important;
}

@media (max-width: 1060px) {
  .deliverables .deliverable-grid-icons {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .deliverables .deliverable-grid-icons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.8rem !important;
  }

  .deliverables .deliverable-card {
    min-height: 160px !important;
    padding: 1rem !important;
  }

  .deliverables .deliverable-icon {
    width: 2.5rem !important;
    height: 2.5rem !important;
  }

  .deliverables .deliverable-card h3 {
    font-size: 0.9rem !important;
    line-height: 1.18 !important;
  }

  .deliverables .deliverable-index {
    font-size: 0.64rem !important;
  }
}

@media (max-width: 420px) {
  .deliverables .deliverable-grid-icons {
    grid-template-columns: 1fr !important;
  }

  .deliverables .deliverable-card {
    min-height: 138px !important;
  }
}
/* end PointState deliverables distinct icon grid */

/* PointState patch 20260629: final reports simplification + centered deliverables */
.reports.reports-final-simple {
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(4.4rem, 7vw, 7rem) clamp(1.2rem, 4vw, 5.5rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.99), rgba(247,250,255,0.965)) !important;
  color: #11182d !important;
  border-top: 1px solid rgba(188,207,236,0.72) !important;
  border-bottom: 1px solid rgba(188,207,236,0.72) !important;
}

.reports.reports-final-simple::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  opacity: 0.42 !important;
  background-image:
    linear-gradient(rgba(47,102,243,0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(47,102,243,0.055) 1px, transparent 1px) !important;
  background-size: 34px 34px !important;
  mix-blend-mode: normal !important;
}

.reports.reports-final-simple::after {
  display: none !important;
}

.reports-final-inner {
  position: relative !important;
  z-index: 2 !important;
  width: min(1120px, 100%) !important;
  margin: 0 auto !important;
}

.reports-final-heading {
  max-width: 880px !important;
  margin: 0 0 clamp(1.8rem, 3.5vw, 2.8rem) !important;
}

.reports-final-heading,
.reports-final-heading *,
.reports.reports-final-simple .section-heading,
.reports.reports-final-simple .section-heading * {
  color: #11182d !important;
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  text-shadow: none !important;
}

.reports-final-heading .eyebrow {
  color: #2F66F3 !important;
}

.reports-final-heading h2 {
  max-width: 880px !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(2.15rem, 4.6vw, 4.15rem) !important;
  line-height: 1.03 !important;
  letter-spacing: -0.055em !important;
  font-weight: 400 !important;
}

.reports-final-heading p:not(.eyebrow) {
  max-width: 48rem !important;
  font-size: 1rem !important;
  line-height: 1.66 !important;
  color: #35445d !important;
}

.reports-audience-list {
  display: grid !important;
  gap: 0.75rem !important;
}

.reports-audience-list article {
  display: grid !important;
  grid-template-columns: 4.8rem minmax(180px, 0.34fr) minmax(0, 1fr) !important;
  gap: clamp(0.85rem, 2vw, 1.4rem) !important;
  align-items: center !important;
  padding: clamp(0.95rem, 1.6vw, 1.25rem) clamp(1rem, 2.2vw, 1.6rem) !important;
  background: rgba(255,255,255,0.91) !important;
  border: 1px solid rgba(174,198,238,0.84) !important;
  box-shadow: 0 12px 30px rgba(14,31,58,0.045) !important;
  color: #11182d !important;
}

.reports-audience-list article:nth-child(-n+3) {
  border-color: rgba(229,138,31,0.54) !important;
}

.reports-audience-list span {
  font-family: var(--ps-font-ui, "Inter", sans-serif) !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.22em !important;
  font-weight: 800 !important;
  color: #2F66F3 !important;
}

.reports-audience-list article:nth-child(-n+3) span {
  color: #E58A1F !important;
}

.reports-audience-list h3 {
  margin: 0 !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.05rem, 1.6vw, 1.38rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -0.035em !important;
  font-weight: 500 !important;
  color: #11182d !important;
}

.reports-audience-list p {
  margin: 0 !important;
  max-width: 50rem !important;
  font-size: 0.92rem !important;
  line-height: 1.55 !important;
  color: #40506a !important;
}

/* Deliverables: centered, balanced, cleaner type */
.deliverables .deliverables-lead {
  align-items: center !important;
  gap: clamp(1.5rem, 3vw, 3rem) !important;
}

.deliverables .deliverables-lead img {
  width: 100% !important;
  max-width: 620px !important;
  min-height: clamp(210px, 18vw, 310px) !important;
  object-fit: contain !important;
  padding: clamp(1rem, 2vw, 1.6rem) !important;
  background: rgba(255,255,255,0.92) !important;
  border: 1px solid rgba(174,198,238,0.84) !important;
  box-shadow: 0 22px 58px rgba(14,31,58,0.07) !important;
}

.deliverables .deliverable-grid-icons {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(1rem, 1.7vw, 1.35rem) !important;
  align-items: stretch !important;
}

.deliverables .deliverable-card {
  min-height: 205px !important;
  display: grid !important;
  grid-template-rows: auto 1fr auto !important;
  justify-items: center !important;
  align-items: center !important;
  text-align: center !important;
  padding: clamp(1.2rem, 2vw, 1.55rem) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.955), rgba(247,250,255,0.84)) !important;
  border: 1px solid rgba(174,198,238,0.92) !important;
  box-shadow:
    0 18px 48px rgba(14,31,58,0.052),
    inset 0 0 0 1px rgba(255,255,255,0.75) !important;
  overflow: hidden !important;
}

.deliverables .deliverable-card::before {
  opacity: 0.35 !important;
}

.deliverables .deliverable-card::after {
  right: 0.95rem !important;
  bottom: 0.95rem !important;
}

.deliverables .deliverable-card-accent {
  border-color: rgba(229,138,31,0.72) !important;
}

.deliverables .deliverable-icon {
  width: 3.25rem !important;
  height: 3.25rem !important;
  justify-self: center !important;
  align-self: start !important;
  margin: 0 auto !important;
  color: #2F66F3 !important;
}

.deliverables .deliverable-card-accent .deliverable-icon {
  color: #E58A1F !important;
}

.deliverables .deliverable-index {
  right: 1rem !important;
  top: 1rem !important;
}

.deliverables .deliverable-card h3 {
  margin: 0 !important;
  max-width: 13.5rem !important;
  justify-self: center !important;
  align-self: center !important;
  text-align: center !important;
  font-family: var(--ps-font-display, "Sora", "Inter", sans-serif) !important;
  font-size: clamp(1.05rem, 1.28vw, 1.23rem) !important;
  line-height: 1.16 !important;
  letter-spacing: -0.035em !important;
  font-weight: 500 !important;
  color: #11182d !important;
}

@media (max-width: 1060px) {
  .deliverables .deliverable-grid-icons {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .reports-audience-list article {
    grid-template-columns: 4rem minmax(150px, 0.35fr) minmax(0, 1fr) !important;
  }
}

@media (max-width: 760px) {
  .reports.reports-final-simple {
    padding: 3.3rem 1rem 3.6rem !important;
  }

  .reports-final-inner {
    width: min(calc(100vw - 2rem), 36rem) !important;
  }

  .reports-final-heading h2 {
    font-size: clamp(1.95rem, 8vw, 2.65rem) !important;
    line-height: 1.05 !important;
  }

  .reports-final-heading p:not(.eyebrow) {
    font-size: 0.84rem !important;
    line-height: 1.56 !important;
  }

  .reports-audience-list article {
    grid-template-columns: 1fr !important;
    gap: 0.42rem !important;
    align-items: start !important;
    padding: 1rem !important;
  }

  .reports-audience-list span {
    font-size: 0.68rem !important;
  }

  .reports-audience-list h3 {
    font-size: 1.16rem !important;
  }

  .reports-audience-list p {
    font-size: 0.78rem !important;
    line-height: 1.5 !important;
  }

  .deliverables .deliverables-lead {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .deliverables .deliverables-lead img {
    min-height: 190px !important;
    max-width: 100% !important;
  }

  .deliverables .deliverable-grid-icons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.8rem !important;
  }

  .deliverables .deliverable-card {
    min-height: 150px !important;
    padding: 1rem !important;
  }

  .deliverables .deliverable-icon {
    width: 2.45rem !important;
    height: 2.45rem !important;
  }

  .deliverables .deliverable-card h3 {
    font-size: 0.9rem !important;
    line-height: 1.18 !important;
  }
}

@media (max-width: 420px) {
  .deliverables .deliverable-grid-icons {
    grid-template-columns: 1fr !important;
  }

  .deliverables .deliverable-card {
    min-height: 132px !important;
  }
}
/* end PointState final reports simplification + centered deliverables */

/* PointState patch 20260629: final deliverables report preview image */
.deliverables .deliverables-lead img {
  max-width: 720px !important;
  min-height: clamp(300px, 26vw, 430px) !important;
  object-fit: cover !important;
  object-position: center !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 1px solid rgba(174,198,238,0.88) !important;
  box-shadow: 0 30px 72px rgba(14,31,58,0.13) !important;
}

@media (max-width: 760px) {
  .deliverables .deliverables-lead img {
    min-height: 240px !important;
    max-height: 340px !important;
  }
}
/* end PointState final deliverables report preview image */

/* PointState patch 20260629: contact should not open local mail client */
#contact {
  scroll-margin-top: 120px;
}

.contact-email {
  margin-top: 18px;
  color: rgba(224, 238, 255, 0.82);
  font-size: 1rem;
  letter-spacing: 0.01em;
}

.contact-email span {
  color: #ffffff;
  font-weight: 800;
}
/* end PointState no-mailto contact patch */
