@font-face {
  font-family:'IBM Plex Sans';
  src:url('/assets/fonts/IBMPlexSans-Regular.woff2') format('woff2');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

@font-face {
  font-family:'IBM Plex Sans';
  src:url('/assets/fonts/IBMPlexSans-SemiBold.woff2') format('woff2');
  font-weight:600;
  font-style:normal;
  font-display:swap;
}

@font-face {
  font-family:'IBM Plex Mono';
  src:url('/assets/fonts/IBMPlexMono-Regular.ttf') format('truetype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

:root {
  --ink:#171717;
  --muted:#525252;
  --forest:#08331f;
  --mint:#c6f5df;
  --line:#e5e5e5;
  --soft:#f6f8f7;
  --coral:#fea49a;
  --mono:'IBM Plex Mono',monospace;
  font-family:'IBM Plex Sans',sans-serif;
  color:var(--ink);
  font-synthesis:none;
  font-size:16px;
  line-height:1.6;
  background:#fff;
}

* {
  box-sizing:border-box;
}

body {
  margin:0;
}

a {
  color:var(--forest);
  text-underline-offset:4px;
  text-decoration-thickness:1px;
}

a:hover {
  text-decoration-thickness:2px;
}

button,input {
  font:inherit;
}

button,a,input {
  -webkit-tap-highlight-color:transparent;
}

button {
  cursor:pointer;
}

a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible {
  outline:3px solid #8574ad;
  outline-offset:5px;
}

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

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

h1,h2,h3 {
  font-weight:600;
  line-height:1.12;
  letter-spacing:-.035em;
}

h2 {
  font-size:32px;
}

h3 {
  font-size:23px;
}

p {
  margin-bottom:20px;
}

strong,b {
  font-weight:600;
}

[hidden] {
  display:none!important;
}

.shell {
  width:min(100% - 96px,1344px);
  margin:auto;
}

.skip {
  position:absolute;
  left:16px;
  top:-80px;
  background:white;
  padding:12px;
  z-index:10;
}

.skip:focus {
  top:12px;
}

.screen-reader {
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.nav {
  display:flex;
  align-items:center;
  gap:32px;
  min-height:100px;
  border-bottom:1px solid var(--line);
}

.brand {
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  color:var(--ink);
  font-size:23px;
  font-weight:600;
  letter-spacing:-1px;
  white-space:nowrap;
}

.brand-symbol {
  font-family:var(--mono);
  font-size:28px;
  font-weight:400;
  letter-spacing:-4px;
  color:var(--forest);
  padding-right:5px;
}

.brand-symbol span {
  font-size:22px;
  padding:0 4px;
}

.nav nav {
  display:flex;
  gap:24px;
  align-items:center;
  margin-left:auto;
}

.nav nav a {
  font-size:14px;
  text-decoration:none;
  color:var(--muted);
  padding:9px 0;
  position:relative;
  white-space:nowrap;
}

.nav nav a:hover,.nav nav a[aria-current] {
  color:var(--ink);
}

.nav nav a[aria-current]:after {
  content:'';
  position:absolute;
  bottom:0;
  height:2px;
  left:0;
  right:0;
  background:var(--forest);
}

.publisher {
  display:flex;
  align-items:center;
  gap:12px;
  border-left:1px solid var(--line);
  padding-left:24px;
  text-decoration:none;
  color:var(--muted);
}

.publisher span {
  font-size:11px;
  line-height:1.3;
  max-width:45px;
}

.publisher img {
  width:55px;
  height:auto;
}

.source-link span {
  margin-left:2px;
}

.status {
  display:inline-flex;
  gap:9px;
  align-items:center;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.status-dot {
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--forest);
  flex:none;
}

.status-divider {
  color:#a3a3a3;
  margin:0 3px;
}

.hero {
  display:grid;
  grid-template-columns:1.8fr 1fr;
  gap:48px;
  align-items:end;
  padding:56px 0 50px;
}

.hero h1 {
  font-size:clamp(54px,5.65vw,84px);
  letter-spacing:-.065em;
  line-height:1.04;
  margin:26px 0 0;
}

.heading-dot {
  color:var(--forest);
}

.hero-copy {
  padding-bottom:3px;
}

.hero-copy p {
  color:var(--muted);
  font-size:15px;
  max-width:380px;
}

.hero-copy .hero-lead {
  color:var(--ink);
  font-size:21px;
  line-height:1.4;
  letter-spacing:-.015em;
  margin-bottom:13px;
}

.actions {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:20px;
  margin-top:24px;
}

.button {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  gap:20px;
  border:1px solid #cdd4d0;
  border-radius:6px;
  padding:11px 17px;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  line-height:1.5;
  transition:background .15s,border-color .15s;
}

.button:hover {
  background:#edf3ef;
  border-color:var(--forest);
  text-decoration:none;
}

.button.primary {
  background:var(--forest);
  color:white;
  border-color:var(--forest);
}

.button.primary:hover {
  background:#125737;
  border-color:#125737;
}

.text-link {
  font-size:13px;
  font-weight:600;
}

.text-link span {
  margin-left:8px;
}

.execution {
  display:grid;
  grid-template-columns:1fr 2fr;
  gap:48px;
  border-radius:8px;
  background:var(--forest);
  color:white;
  padding:34px 36px;
}

.panel-label {
  font-size:11px;
  color:var(--mint);
}

.execution h2 {
  font-size:38px;
  letter-spacing:-.04em;
  margin:17px 0 14px;
}

.execution-intro p {
  font-size:14px;
  line-height:1.5;
  color:#d5e2da;
  margin-bottom:14px;
}

.execution-intro>a {
  color:var(--mint);
  font-size:13px;
  font-weight:600;
}

.execution-intro>a span {
  margin-left:16px;
}

.execution-intro .execution-limit {
  font-size:11px;
  color:#abc1b3;
  line-height:1.5;
  margin:23px 0 0;
}

.execution-data {
  align-self:center;
  min-width:0;
}

.matrix-heading,.matrix-row {
  display:grid;
  grid-template-columns:100px minmax(0,1fr) 44px 68px;
  gap:16px;
  align-items:center;
}

.matrix-heading {
  font-size:10px;
  color:#abc1b3;
  border-bottom:1px solid #365845;
  padding-bottom:15px;
}

.matrix-heading span:last-child {
  text-align:right;
}

.matrix-row {
  padding:12px 0;
  color:white;
  text-decoration:none;
  border-bottom:1px solid #365845;
}

.matrix-row:hover {
  background:#16452e;
}

.matrix-row:focus-visible {
  outline-color:var(--mint);
}

.matrix-name {
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:13px;
  white-space:nowrap;
}

.matrix-name small {
  font-family:var(--mono);
  font-size:10px;
  color:#abc1b3;
}

.check-cells {
  display:grid;
  grid-template-columns:repeat(30,minmax(0,1fr));
  gap:3px;
}

.check-cell {
  height:17px;
  border-radius:1px;
  display:flex;
  align-items:center;
  justify-content:center;
  font:13px/1 var(--mono);
}

.check-cell.pass {
  background:var(--mint);
}

.check-cell.fail {
  background:var(--coral);
  color:#4b130d;
}

.matrix-score {
  font:13px/1 var(--mono);
  text-align:right;
  white-space:nowrap;
}

.matrix-score span {
  color:#abc1b3;
}

.matrix-legend {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:16px;
  font-size:10px;
  color:#d5e2da;
  margin-top:17px;
}

.matrix-legend>span {
  display:flex;
  align-items:center;
  gap:6px;
}

.matrix-legend>span:last-child {
  margin-left:auto;
}

.matrix-legend i {
  height:9px;
  width:9px;
  font-style:normal;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:1px;
}

.legend-pass {
  background:var(--mint);
}

.legend-fail {
  background:var(--coral);
  color:#4b130d;
  font-size:10px;
}

.section {
  margin:78px 0;
}

.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:48px;
  margin-bottom:28px;
}

.section-index {
  display:block;
  font-size:12px;
  color:var(--muted);
  margin-bottom:15px;
}

.section-heading h2 {
  margin-bottom:0;
  font-size:30px;
  max-width:650px;
}

.section-heading>p {
  font-size:14px;
  color:var(--muted);
  max-width:270px;
  margin:0;
}

.workbench {
  border:1px solid #ccd6cf;
  border-radius:8px;
  overflow:hidden;
}

.bench-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 24px;
  background:var(--soft);
  border-bottom:1px solid var(--line);
  font-size:14px;
}

.pill {
  font-size:11px;
  color:var(--muted);
}

.tabs {
  display:flex;
  border-bottom:1px solid var(--line);
  padding:0 24px;
  gap:28px;
  overflow-x:auto;
}

.tab {
  background:none;
  border:0;
  border-bottom:2px solid transparent;
  padding:15px 0 13px;
  white-space:nowrap;
  font-size:13px;
  color:var(--muted);
}

.tab[aria-selected=true] {
  color:var(--forest);
  border-bottom-color:var(--forest);
  font-weight:600;
}

.tab:hover {
  color:var(--forest);
}

.tab:focus-visible {
  outline-offset:-3px;
}

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

.source-panel {
  padding:25px;
  background:#fbfcfb;
  border-right:1px solid var(--line);
  min-width:0;
}

.source-title {
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
  align-items:center;
  font-size:11px;
  color:var(--muted);
}

.source-title b {
  font-family:var(--mono);
  font-size:12px;
  font-weight:400;
  color:var(--ink);
}

.answer-panel {
  padding:30px 32px;
}

.answer-panel h2 {
  font-size:25px;
  letter-spacing:-.025em;
  margin-bottom:17px;
}

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

.answer-value {
  font-family:var(--mono);
  font-size:38px;
  color:var(--forest);
  letter-spacing:-.045em;
  line-height:1.2;
  margin:25px 0 12px;
}

.equation {
  font-family:var(--mono);
  font-size:11px;
  line-height:1.8;
  color:var(--muted);
}

.check-list {
  list-style:none;
  padding:18px 0 8px;
  margin:0;
}

.check-list li {
  font-size:13px;
  padding:7px 0 7px 24px;
  position:relative;
}

.check-list li:before {
  content:'✓';
  position:absolute;
  left:0;
  color:var(--forest);
}

.answer-panel>a {
  font-size:13px;
}

.bench-footer {
  border-top:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  gap:24px;
  padding:16px 24px;
  font-size:11px;
  color:var(--muted);
  background:var(--soft);
}

.bench-footer a {
  white-space:nowrap;
}

.source-scroll {
  overflow-x:auto;
  width:100%;
}

table {
  width:100%;
  border-collapse:collapse;
  font-size:13px;
  font-variant-numeric:tabular-nums;
  line-height:1.5;
  text-align:left;
}

th {
  font-size:11px;
  font-weight:600;
  color:var(--muted);
  background:#f1f4f2;
}

td,th {
  padding:11px 13px;
  border-bottom:1px solid var(--line);
  vertical-align:top;
}

td {
  color:var(--ink);
}

.source-table td:first-child {
  white-space:nowrap;
}

.source-panel .source-table td:first-child {
  font-family:var(--mono);
  font-size:11px;
  color:var(--muted);
}

.num {
  text-align:right;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

.source-table th:last-child {
  text-align:right;
}

.source-table .highlight {
  background:#eef6f1;
}

.answer-panel table {
  margin:20px 0;
}

.stages {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin-bottom:24px;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}

.stage {
  padding:30px 30px 30px 0;
}

.stage+.stage {
  border-left:1px solid var(--line);
  padding-left:30px;
}

.stage-number {
  display:block;
  font:12px/1 var(--mono);
  color:var(--muted);
  margin-bottom:30px;
}

.stage h3 {
  font-size:23px;
  margin-bottom:16px;
}

.stage p {
  font-size:14px;
  color:var(--muted);
  margin-bottom:22px;
}

.examples {
  font-size:11px;
  color:var(--forest);
}

.callout {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:48px;
  border-top:1px solid var(--line);
  padding:40px 0 55px;
}

.callout h2 {
  font-size:30px;
}

.callout p {
  max-width:610px;
  color:var(--muted);
  font-size:15px;
  margin-bottom:0;
}

.callout .actions {
  flex-shrink:0;
  flex-direction:column;
  align-items:start;
  margin-top:0;
}

.footer {
  border-top:1px solid var(--line);
  padding:32px 0 40px;
  display:flex;
  justify-content:space-between;
  gap:36px;
}

.footer-publisher {
  display:flex;
  align-items:start;
  gap:28px;
}

.footer-publisher img {
  margin-top:3px;
  flex:none;
}

.footer-publisher p {
  color:var(--muted);
  font-size:12px;
  margin:0;
}

.footer-links {
  font-size:11px;
  line-height:2;
}

.footer-links .subtle {
  display:block;
  text-align:right;
  font-size:11px;
  margin-top:8px;
}

.subtle {
  font-size:12px;
  color:var(--muted);
}

.page-head {
  padding:58px 0 38px;
  border-bottom:1px solid var(--line);
  margin-bottom:38px;
}

.page-head h1 {
  font-size:clamp(40px,4.8vw,68px);
  letter-spacing:-.055em;
  max-width:970px;
  margin:26px 0 22px;
}

.page-head>p {
  font-size:18px;
  line-height:1.6;
  color:var(--muted);
  max-width:780px;
  margin:0;
}

.content {
  max-width:800px;
  margin:40px 0 64px;
}

.content p {
  color:var(--muted);
  font-size:16px;
  line-height:1.8;
}

.content h2 {
  font-size:26px;
  margin:34px 0 16px;
  letter-spacing:-.02em;
}

.content h2:first-child {
  margin-top:0;
}

.content .note,.note {
  border-left:3px solid var(--forest);
  padding:18px 22px;
  background:var(--soft);
  font-size:14px;
  line-height:1.7;
}

.filters {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:32px;
}

.filter {
  border:1px solid var(--line);
  border-radius:5px;
  background:white;
  color:var(--muted);
  font-size:13px;
  padding:10px 16px;
}

.filter[aria-pressed=true] {
  background:var(--forest);
  color:white;
  border-color:var(--forest);
}

.filter:hover {
  border-color:var(--forest);
}

.task-list {
  margin-bottom:64px;
}

.task-row {
  display:grid;
  grid-template-columns:180px 1.4fr 1fr;
  gap:42px;
  border-top:1px solid var(--line);
  padding:30px 0;
}

.family {
  font-size:12px;
  color:var(--muted);
  padding-top:4px;
}

.task-row h2 {
  font-size:24px;
  margin:0 0 14px;
}

.task-row p {
  font-size:14px;
  color:var(--muted);
  margin:0 0 10px;
}

.task-row a {
  font-size:12px;
}

.state {
  display:inline-block;
  font-size:11px;
  padding:2px 0;
  margin-bottom:12px;
  color:var(--muted);
}

.state:before {
  content:'';
  display:inline-block;
  width:6px;
  height:6px;
  border:1px solid #8a8a8a;
  border-radius:50%;
  margin-right:8px;
}

.state.ready {
  color:var(--forest);
}

.state.ready:before {
  background:var(--forest);
  border-color:var(--forest);
}

.empty {
  border-bottom:1px solid var(--line);
  padding:0 0 36px;
  margin:0 0 40px;
}

.empty h2 {
  font-size:25px;
}

.empty>p {
  max-width:800px;
  color:var(--muted);
  font-size:15px;
}

.empty .source-table {
  margin:26px 0 18px;
  font-size:15px;
}

.empty .source-table th {
  font-size:12px;
}

.empty .source-table td {
  padding:18px 16px;
}

.empty .source-table td:nth-child(n+2) {
  font-family:var(--mono);
  font-size:13px;
}

.empty .source-table td:nth-child(3) {
  color:var(--forest);
  font-weight:600;
}

.empty>.subtle {
  font-size:12px;
}

.two-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
}

.file-list {
  padding:0;
  list-style:none;
}

.file-list li {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:13px 0;
  border-bottom:1px solid var(--line);
  font-size:13px;
}

.file-list a {
  font-family:var(--mono);
  font-size:12px;
}

.file-list small {
  color:var(--muted);
  font-size:11px;
  text-align:right;
}

.range-label {
  display:flex;
  justify-content:space-between;
  gap:16px;
  font-size:12px;
  margin:28px 0 15px;
}

.range-label output {
  font-family:var(--mono);
}

input[type=range] {
  width:100%;
  accent-color:var(--forest);
  margin:5px 0 15px;
}

pre {
  background:var(--forest);
  color:#e6f5ec;
  border-radius:6px;
  padding:26px;
  overflow-x:auto;
  line-height:1.9;
  font-size:12px;
  margin:24px 0;
}

code {
  font-family:var(--mono);
  font-size:.85em;
}

pre code {
  font-size:inherit;
}

.content p code {
  background:#eef3ef;
  padding:2px 5px;
  border-radius:3px;
  color:var(--forest);
  overflow-wrap:anywhere;
}

@media(min-width:1600px) {
  .hero {
    padding:70px 0 60px;
  }
  .hero h1 {
    font-size:88px;
  }
  .execution {
    padding:40px 44px;
  }
  .check-cell {
    height:20px;
  }
}

@media(max-width:1150px) {
  .shell {
    width:calc(100% - 64px);
  }
  .nav {
    gap:22px;
  }
  .nav nav {
    gap:18px;
  }
  .publisher {
    padding-left:18px;
    gap:8px;
  }
  .publisher span {
    display:none;
  }
  .hero {
    gap:32px;
    grid-template-columns:1.6fr 1fr;
  }
  .hero h1 {
    font-size:61px;
  }
  .hero-copy .hero-lead {
    font-size:19px;
  }
  .hero-copy p {
    font-size:14px;
  }
  .actions {
    gap:14px;
  }
  .execution {
    gap:28px;
    padding:30px;
    grid-template-columns:.9fr 2fr;
  }
  .matrix-heading,.matrix-row {
    grid-template-columns:78px minmax(0,1fr) 40px 62px;
    gap:12px;
  }
  .check-cells {
    gap:2px;
  }
  .matrix-legend>span:last-child {
    margin-left:0;
  }
  .execution h2 {
    font-size:34px;
  }
  .task-row {
    grid-template-columns:140px 1.4fr 1fr;
    gap:25px;
  }
  .footer {
    flex-wrap:wrap;
  }
  .callout {
    gap:28px;
  }
}

@media(max-width:850px) {
  .shell {
    width:calc(100% - 40px);
  }
  .nav {
    flex-wrap:wrap;
    gap:0;
    min-height:0;
    padding-top:20px;
  }
  .brand {
    font-size:21px;
  }
  .publisher {
    margin-left:auto;
    border:0;
    padding-left:15px;
  }
  .publisher span {
    display:block;
  }
  .nav nav {
    order:3;
    flex-basis:100%;
    justify-content:space-between;
    gap:15px;
    margin:14px 0 0;
    padding-bottom:9px;
  }
  .nav nav a {
    font-size:12px;
  }
  .hero {
    grid-template-columns:1fr;
    gap:26px;
    padding:36px 0;
  }
  .hero h1 {
    font-size:clamp(48px,8vw,66px);
    margin-top:20px;
  }
  .hero-copy {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 26px;
  }
  .hero-copy .hero-lead {
    font-size:19px;
  }
  .hero-copy .actions {
    grid-column:1 / -1;
    margin-top:0;
  }
  .hero-copy p {
    max-width:none;
  }
  .execution {
    grid-template-columns:1fr;
    gap:24px;
    padding:28px;
  }
  .execution-intro {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 24px;
  }
  .execution-intro .panel-label {
    grid-column:1 / -1;
  }
  .execution h2 {
    grid-row:2 / 4;
    margin:13px 0 0;
  }
  .execution-intro p {
    margin:14px 0 10px;
  }
  .execution-intro>a {
    align-self:start;
  }
  .execution-intro .execution-limit {
    grid-column:1 / -1;
    margin-top:20px;
  }
  .execution-intro .execution-limit br {
    display:none;
  }
  .matrix-heading,.matrix-row {
    grid-template-columns:90px minmax(0,1fr) 40px 64px;
  }
  .section {
    margin:54px 0;
  }
  .section-heading {
    display:block;
  }
  .section-heading>p {
    margin-top:16px;
    max-width:none;
  }
  .evidence-grid {
    grid-template-columns:1fr 1fr;
  }
  .source-panel {
    padding:20px;
  }
  .source-title {
    align-items:start;
    flex-direction:column;
    gap:4px;
  }
  .answer-panel {
    padding:24px;
  }
  .answer-value {
    font-size:30px;
  }
  .source-panel td,.source-panel th {
    padding:9px 7px;
    font-size:11px;
  }
  .bench-footer {
    flex-wrap:wrap;
    gap:9px;
  }
  .stage {
    padding-right:20px;
  }
  .stage+.stage {
    padding-left:20px;
  }
  .stage h3 {
    font-size:21px;
  }
  .callout {
    display:block;
  }
  .callout .actions {
    flex-direction:row;
    margin-top:24px;
    align-items:center;
  }
  .task-row {
    grid-template-columns:1fr 1fr;
    gap:15px 25px;
  }
  .family {
    grid-column:1 / -1;
  }
  .two-col {
    gap:30px;
  }
  .page-head {
    padding-top:38px;
  }
  .page-head>p {
    font-size:16px;
  }
  .footer-links .subtle {
    text-align:left;
  }
  .footer {
    gap:24px;
  }
}

@media(max-width:560px) {
  .hero h1 {
    font-size:clamp(40px,10.2vw,57px);
  }
  .hero-copy {
    display:block;
  }
  .hero-copy .hero-lead {
    font-size:20px;
    margin-bottom:12px;
  }
  .hero-copy .hero-lead br {
    display:none;
  }
  .hero-copy .actions {
    margin-top:22px;
  }
  .status {
    font-size:10px;
    gap:6px;
  }
  .nav nav {
    gap:8px;
  }
  .nav nav a {
    font-size:11px;
    padding:12px 0;
  }
  .publisher span {
    font-size:10px;
  }
  .publisher img {
    width:45px;
  }
  .execution {
    padding:23px 20px;
  }
  .execution-intro {
    display:block;
  }
  .execution h2 {
    font-size:34px;
  }
  .execution h2 br {
    display:none;
  }
  .execution-intro p br {
    display:none;
  }
  .execution-intro .execution-limit {
    font-size:10px;
    margin-top:15px;
  }
  .matrix-heading {
    display:none;
  }
  .matrix-row {
    grid-template-columns:1fr auto auto;
    gap:10px;
    padding:12px 0;
  }
  .matrix-name {
    justify-content:start;
    gap:14px;
    font-size:12px;
  }
  .matrix-score {
    grid-column:2;
    grid-row:1;
    font-size:12px;
  }
  .check-cells {
    grid-column:1 / -1;
    grid-row:2;
    gap:3px;
  }
  .check-cell {
    height:13px;
    font-size:11px;
  }
  .matrix-legend {
    gap:12px;
    font-size:10px;
  }
  .matrix-legend>span:last-child {
    width:100%;
    font-size:9px;
  }
  .section-heading h2 {
    font-size:28px;
  }
  .section-index {
    font-size:11px;
  }
  .bench-top {
    padding:15px 16px;
    align-items:start;
    flex-direction:column;
    gap:5px;
    font-size:13px;
  }
  .tabs {
    padding:0 16px;
    gap:20px;
  }
  .tab {
    font-size:11px;
  }
  .evidence-grid {
    grid-template-columns:1fr;
  }
  .source-panel {
    border-right:0;
    border-bottom:1px solid var(--line);
    padding:20px 16px;
  }
  .source-title {
    flex-direction:row;
    gap:15px;
  }
  .source-panel td,.source-panel th {
    padding:10px 8px;
    font-size:12px;
  }
  .answer-panel {
    padding:26px 20px;
  }
  .answer-value {
    font-size:36px;
  }
  .bench-footer {
    padding:14px 16px;
    font-size:10px;
  }
  .stages {
    grid-template-columns:1fr;
  }
  .stage,.stage+.stage {
    padding:24px 0;
    border-left:0;
  }
  .stage+.stage {
    border-top:1px solid var(--line);
  }
  .stage-number {
    margin-bottom:18px;
  }
  .stage h3 {
    font-size:24px;
  }
  .stage p {
    margin-bottom:15px;
  }
  .callout h2 {
    font-size:28px;
  }
  .footer-publisher {
    gap:22px;
  }
  .footer-publisher p {
    font-size:11px;
  }
  .footer-links {
    font-size:10px;
  }
  .footer-links a {
    display:inline-block;
  }
  .page-head {
    padding:36px 0 28px;
    margin-bottom:28px;
  }
  .page-head h1 {
    font-size:40px;
    letter-spacing:-.045em;
    margin:20px 0;
  }
  .page-head>p {
    font-size:15px;
  }
  .content {
    margin:30px 0 45px;
  }
  .content p {
    font-size:15px;
  }
  .content h2 {
    font-size:24px;
  }
  .content .note {
    font-size:13px;
    padding:16px 18px;
  }
  .two-col {
    grid-template-columns:1fr;
    gap:0;
  }
  .two-col .content {
    margin-bottom:10px;
  }
  .two-col {
    margin-bottom:45px;
  }
  .task-row {
    grid-template-columns:1fr;
    gap:12px;
  }
  .family {
    grid-column:auto;
  }
  .task-row h2 {
    font-size:24px;
  }
  .filters {
    gap:8px;
  }
  .filter {
    font-size:12px;
    padding:8px 11px;
  }
  .task-row .state {
    margin-bottom:8px;
  }
  .empty .source-table {
    min-width:580px;
  }
  .empty .source-table td {
    padding:15px 12px;
  }
  .empty h2 {
    font-size:25px;
  }
  .empty>p {
    font-size:14px;
  }
  pre {
    padding:20px;
    font-size:11px;
  }
  .file-list {
    overflow-wrap:anywhere;
  }
  .file-list small {
    flex-shrink:0;
  }
}

@media(prefers-reduced-motion:reduce) {
  *,*:before,*:after {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important;
  }
}

.matrix-cost { font:11px/1 var(--mono); text-align:right; color:var(--mint); white-space:nowrap; }
.matrix-legend .cost-basis { width:100%; margin-left:0; color:#abc1b3; }
.cost-summary { margin:38px 0; }
.cost-summary h2 { font-size:26px; }
.cost-summary table { margin:20px 0 16px; }
.cost-summary td:nth-child(n+3) { font-family:var(--mono); font-size:12px; white-space:nowrap; }
.cost-summary .subtle { max-width:850px; }
.earlier-runs { border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:30px 0 50px; padding:18px 0; }
.earlier-runs summary { cursor:pointer; font-size:14px; font-weight:600; color:var(--forest); }
.earlier-runs table { margin-top:20px; }
.lev-comparison { padding:35px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin:45px 0; }
.lev-comparison>p { max-width:880px; color:var(--muted); font-size:14px; }
.lev-comparison .note { margin-top:25px; }
.lev-comparison table { margin:26px 0 16px; font-size:12px; }
.lev-comparison td:nth-child(3),.lev-comparison td:nth-child(4) { min-width:210px; }
.example-cost { margin-top:28px; font-size:13px; }
@media(max-width:560px) {
  .matrix-cost { grid-column:3; grid-row:1; font-size:11px; }
  .cost-summary table { min-width:530px; }
  .earlier-runs table { min-width:560px; }
  .lev-comparison h2 { font-size:28px; }
  .matrix-score { min-width:45px; }
}
/* Workflow release: evidence-led comparisons */
.wf-hero{padding-bottom:48px}.wf-hero h1{font-size:clamp(48px,6.5vw,88px);line-height:1.04;letter-spacing:-.045em}.wf-figure{margin:0;background:#fff;border:1px solid #dce4df;border-radius:14px;overflow:hidden}.wf-figure>img{display:block;width:100%;height:auto}.wf-figure figcaption{padding:15px 24px;border-top:1px solid #e1e8e3;font-size:13px;line-height:1.6;color:#536057}.wf-figure figcaption a{float:right}.wf-disclosure{margin:25px 0 0;padding:20px 24px;background:#f0f5f2;border-radius:8px;font-size:14px;line-height:1.65;max-width:none}.wf-cases{display:grid;grid-template-columns:repeat(3,1fr);gap:0 28px}.wf-cases>a{display:block;padding:26px 0;border-top:2px solid #c9d8ce;text-decoration:none;color:inherit}.wf-cases h3{font-size:23px;letter-spacing:-.02em;margin:0 0 10px}.wf-cases p{color:#536057;margin:0 0 28px;font-size:15px}.wf-cases span{font-size:14px;text-decoration:underline;text-underline-offset:4px}.wf-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.wf-table th{text-align:left;background:#eef3ef;font-weight:500;color:#536057;padding:14px 16px;white-space:nowrap}.wf-table td{padding:17px 16px;border-bottom:1px solid #dce4df;vertical-align:top}.wf-table td:first-child{min-width:155px}.wf-table td:nth-child(n+3){white-space:nowrap}.wf-pass,.wf-loss{font-family:var(--mono,'IBM Plex Mono',monospace);font-size:13px}.wf-loss{font-weight:600;text-decoration:underline dotted #a33730;text-underline-offset:5px}.wf-system{white-space:nowrap;font-weight:500}.wf-system:before{content:'';display:inline-block;width:9px;height:9px;background:var(--system-color);border-radius:50%;margin-right:8px}.wf-case-links,.wf-source-files{display:flex;flex-wrap:wrap;gap:16px 28px}.wf-source-files a{padding:15px;background:#f0f5f2;border-radius:6px;font-size:14px}.wf-deliveries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:40px 0}.wf-deliveries article{min-width:0;border-top:3px solid #08331f;padding-top:18px}.wf-deliveries h3{font-size:25px;margin:0 0 20px}.wf-deliveries p{font-size:14px;line-height:1.7;overflow-wrap:anywhere}.wf-deliveries .file-list li{padding:14px 0}.wf-deliveries small{display:block;font-size:11px;overflow-wrap:anywhere;margin-top:8px;color:#536057}.wf-disclosure strong{font-weight:600}.wf-figure:focus-within{outline:2px solid #3b69bc}
@media(max-width:900px){.wf-cases{grid-template-columns:repeat(2,1fr)}.wf-deliveries{grid-template-columns:1fr}.wf-figure figcaption a{float:none;display:block}.wf-figure>img{min-width:680px}.wf-figure{overflow-x:auto}.wf-figure figcaption{position:sticky;left:0;max-width:85vw}.wf-table td,.wf-table th{padding:13px 12px}}
@media(max-width:520px){.wf-cases{grid-template-columns:1fr}.wf-disclosure{padding:16px}.wf-hero{padding-bottom:25px}.wf-case-links,.wf-source-files{gap:12px}}
/* Evidence and executive review */
.wf-findings{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.wf-findings article{padding:24px 0;border-top:1px solid var(--line)}.wf-kpi{display:block;font:500 58px/1.1 var(--mono);letter-spacing:-4px;color:var(--forest)}.wf-findings h3{font-size:18px;line-height:1.4;margin:20px 0 10px}.wf-findings p,.wf-takeaway{font-size:16px;line-height:1.7}.wf-takeaway{padding:24px;background:#eef3ee;border-left:3px solid #08331f}.wf-evidence-bars{margin:30px 0}.wf-evidence-bars>div{display:grid;grid-template-columns:140px 1fr 170px;gap:20px;align-items:center;margin:20px 0;font-size:14px}.wf-bar-track{height:20px;background:#e7ece8}.wf-bar-track span{height:100%;display:block}.wf-deliveries details{margin:16px 0;border-top:1px solid #dce4df;padding:14px 0}.wf-deliveries summary{font-size:15px;line-height:1.5;cursor:pointer}.wf-claims{border-left:3px solid #b56750;padding-left:18px}.wf-claims h4{font-size:15px;margin-bottom:8px}.wf-claims p{font-size:14px}.wf-deliveries .wf-table{min-width:450px;font-size:13px}.wf-explorer-controls{display:flex;gap:30px;align-items:center;margin:24px 0}.wf-explorer-controls label{font-size:14px}.wf-explorer select{display:block;font:inherit;padding:10px 14px;background:white;border:1px solid #aebdb2;border-radius:4px;margin-top:8px}.wf-field{border-bottom:1px solid #dce4df;padding:14px 0}.wf-field summary{display:flex;gap:18px;align-items:center;cursor:pointer;font-size:13px}.wf-field summary:before{content:'+';font-size:20px;color:#526258}.wf-field[open] summary:before{content:'−'}.wf-field summary code{font-size:13px;flex:1;overflow-wrap:anywhere}.wf-field dl{display:grid;grid-template-columns:155px 1fr;gap:10px;margin:24px 0 16px 28px;font-size:14px;line-height:1.6}.wf-field dt{font-weight:600}.wf-field dd{margin:0;overflow-wrap:anywhere}.wf-field[hidden],[data-system-block][hidden]{display:none}.wf-explorer h3{margin-top:40px}.wf-table td{vertical-align:top}.wf-deliveries .source-scroll{max-width:100%}
@media(max-width:760px){.wf-findings{grid-template-columns:1fr;gap:0}.wf-kpi{font-size:48px}.wf-evidence-bars>div{grid-template-columns:100px 1fr;gap:12px}.wf-evidence-bars>div>span{grid-column:2}.wf-field summary{flex-wrap:wrap;gap:8px}.wf-field summary code{min-width:85%}.wf-field dl{grid-template-columns:1fr;gap:4px;margin-left:0}.wf-field dd{margin-bottom:12px}.wf-explorer-controls{align-items:flex-start;flex-direction:column;gap:16px}.wf-figure img{min-width:0}.wf-deliveries{grid-template-columns:1fr}}
.wf-figure picture,.wf-figure picture img{display:block;width:100%;height:auto}.wf-deliveries .wf-table td:last-child{white-space:normal;min-width:240px}.wf-economics .wf-table td:last-child{white-space:normal}
.research-readout{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:36px 0 48px;border-top:1px solid #cad7ce;border-bottom:1px solid #cad7ce}
.research-readout article{max-width:520px}.research-readout h2{font-size:30px;line-height:1.18;letter-spacing:-.8px;margin:14px 0}.research-readout p{color:#46584b;line-height:1.7}
.research-section{padding:48px 0;border-bottom:1px solid #cad7ce}.research-section>h2{font-size:30px;letter-spacing:-.7px}.research-section>p{max-width:850px;color:#46584b;line-height:1.7}
.research-figure{margin:28px 0 16px}.research-figure img{display:block;width:100%;height:auto;background:white}.research-figure figcaption{font-size:12px;padding-top:12px;color:#536057}
.wf-table td small{display:block;font-size:11px;color:#617166;margin-top:5px;line-height:1.5}.research-case-picker{display:flex;align-items:center;gap:20px;padding:20px 0;font-weight:600}.research-case-picker select{font:inherit;background:white;color:#08331f;border:1px solid #a4b9aa;padding:12px 40px 12px 16px;border-radius:3px;max-width:100%}
.research-run{border-top:1px solid #cad7ce;padding:24px 0}.research-run h3{font-size:23px}.research-run summary{cursor:pointer;padding:18px 0;font-weight:600}.research-run details p,.research-run details li{font-size:14px;line-height:1.7}.research-run details>p a{overflow-wrap:anywhere}.research-case[hidden]{display:none}
@media(max-width:760px){.research-readout{grid-template-columns:1fr;gap:32px;padding:28px 0}.research-readout h2,.research-section>h2{font-size:25px}.research-section{padding:32px 0}.research-case-picker{align-items:flex-start;flex-direction:column;gap:10px}.research-case-picker select{width:100%}.research-figure{overflow-x:auto}.research-figure img{min-width:680px}.research-run .wf-table{min-width:540px}}

@media(max-width:760px){.research-figure img.mobile-figure{min-width:0;width:100%}}

.exp-notice{padding:18px 24px;background:#e6f1ec;border:1px solid #bfd5cb;border-radius:6px;margin:28px 0 10px;line-height:1.65}.exp-case{border-bottom:1px solid #d9e2de;padding:18px 0}.exp-case summary{cursor:pointer;font-weight:600}.exp-case p{max-width:1000px}#exp-case-filter{padding:10px 18px;border:1px solid #94aca1;border-radius:5px;background:white;margin:12px 0 24px}.exp-case[hidden]{display:none}
