/* The blog and its combined model comparison use a light editorial palette. */
.blog-document{--ink:#1d303b;--muted:#52636b;--blue:#275f80;--line:#233e4b26;--paper:#fff;--wash:#f0eee7;color-scheme:light;background:var(--paper);color:var(--ink)}
.blog-page{background:var(--paper);color:var(--ink)}
.blog-page a:hover{color:#164e70}
.blog-page :is(a,button,input,select,[tabindex]):focus-visible{outline:2px solid #275f80;outline-offset:5px}
.blog-page ::selection{background:#cee0ed;color:#183244}
.blog-page .brand,.blog-page .site-footer .brand{color:var(--ink)}
.blog-page .brand>span{color:#527082}
.blog-page .brand-mark{stroke:#35637c}
.blog-page .site-header nav{background:#f2f1ec;border-color:var(--line);color:var(--muted);backdrop-filter:none}
.blog-page .site-header nav a[aria-current=page]{color:#163e55;text-decoration:underline;text-underline-offset:5px}
.blog-page .nav-github{background:#fffefa;border-color:var(--line);color:#344b58}
.blog-page .nav-github>span:last-child{color:#526d7a}
.blog-page .site-footer,.blog-page .eyebrow,.blog-page .lede{color:var(--muted)}
.blog-page .eyebrow{font-family:Geist,sans-serif;font-weight:500;text-transform:none;letter-spacing:0}
.blog-page .site-header nav{background:none;border-color:transparent}
.blog-page .button{background:#f0f1ec;border-color:#bac8cd;color:#244c63;box-shadow:none}
.blog-page .button:hover{background:#e3ebee;border-color:#6b8797;color:#173f58}
.blog-page .button.primary{background:#234f68;border-color:#234f68;color:#fffefa}
.blog-page .button.primary:hover{background:#173f58;color:#fff}
.blog-page .text-link{color:#275f80}
.blog-index{padding-block:70px 120px}
.blog-index>h1{font-size:clamp(44px,5vw,64px);line-height:1.08;letter-spacing:-.055em;margin-bottom:28px}
.blog-index>.lede{max-width:610px;margin-bottom:55px}
.post-card{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid var(--line);padding-block:40px;gap:55px;align-items:center}
.post-card h2{font-size:38px;line-height:1.18;margin-block:16px 22px}
.post-card p:not(.eyebrow){color:var(--muted);max-width:460px;font-size:16px;line-height:1.8}
.post-card-art{min-height:330px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:24px;padding:42px;background:#edf3ef;color:#245849;border-radius:4px}
.post-card-art strong{font:400 clamp(60px,6.5vw,92px)/1 Geist;letter-spacing:-.065em}
.art-label,.art-caption{font:13px/1.7 Geist,sans-serif;color:#466157}
.art-label{letter-spacing:0}
.post-header{padding-block:58px 38px}
.post-header>.eyebrow{font-size:13px}
.post-header h1{font-size:clamp(44px,5.7vw,72px);font-weight:500;line-height:1.12;max-width:1140px;margin:35px 0 27px;letter-spacing:-.04em}
.post-header h1 span{color:var(--ink)}
.post-dek{max-width:830px;font-size:22px;line-height:1.6;letter-spacing:-.025em;color:#425966;margin-bottom:19px}
.post-scope{max-width:840px;font-size:13px;line-height:1.7;color:var(--muted)}
.post-byline{display:flex;gap:25px;font:13px/1.7 Geist,sans-serif;color:var(--muted);margin-top:30px;flex-wrap:wrap}
.post-byline>span:first-child{color:var(--ink)}
.post-byline a{margin-left:auto;color:var(--blue)}
.post-jumps{display:flex;gap:12px 25px;flex-wrap:wrap;margin-top:25px;font:13px/1.6 Geist,sans-serif;color:var(--blue)}
.post-scoreboard{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin-bottom:60px;background:#fffefa}
.post-scoreboard>div{padding:29px 27px;border-left:1px solid var(--line)}
.post-scoreboard>div:first-child{border:0}
.post-scoreboard .eyebrow{font-size:13px;letter-spacing:0}
.post-scoreboard strong{display:block;font-weight:400;font-size:clamp(34px,4.1vw,56px);line-height:1.3;letter-spacing:-.055em;margin:12px 0 9px;font-variant-numeric:tabular-nums;color:#204e68}
.post-scoreboard strong small{font-size:25px;margin-left:4px}
.post-scoreboard p{font-size:11px;color:var(--muted);margin:0;line-height:1.7}
.post-prose{width:min(720px,calc(100% - 48px));margin-inline:auto}
.post-prose p{font-size:18px;line-height:1.75;color:#384e5a;margin-bottom:25px}
.post-prose .opening{font-size:29px;line-height:1.55;letter-spacing:-.03em;color:var(--ink)}
.post-prose strong{font-weight:600;color:#203b4a}
.post-prose h2{font-size:34px;letter-spacing:-.045em;line-height:1.25;margin:56px 0 24px}
.post-prose a:not(.button){color:#235c7d;text-decoration:underline;text-decoration-color:#235c7d66;text-underline-offset:4px}
.post-prose a:hover{text-decoration-color:currentColor}
.post-prose blockquote{font-size:29px;letter-spacing:-.035em;line-height:1.6;margin:42px 0;padding:7px 0 7px 28px;border-left:2px solid #427c9c;color:#2a5771}
.post-results{margin-block:65px;padding-block:32px 10px;border-top:1px solid var(--line)}
.leaderboard-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}
.leaderboard-heading h2{font-size:34px;margin-bottom:16px}
.leaderboard-heading .eyebrow{margin-bottom:15px}
.leaderboard-heading label{display:flex;align-items:center;gap:10px;white-space:nowrap;font-size:12px;color:var(--muted);padding-bottom:18px}
.benchmark-post select{font:13px Geist;color:#284a5d;background:#fffefa;border:1px solid #aebfc7;border-radius:4px;padding:10px 28px 10px 12px;max-width:100%}
.table-note{font-size:12px;color:var(--muted);max-width:980px;line-height:1.85}
.table-note a{color:#235c7d;text-decoration:underline;text-underline-offset:3px}
.leaderboard-scroll{overflow-x:auto;margin-top:25px}
.leaderboard{font-variant-numeric:tabular-nums;min-width:710px}
.leaderboard thead th{font:500 12px/1.5 Geist,sans-serif;text-transform:none;letter-spacing:0;padding:15px 16px;color:#526774;border-color:var(--line)}
.leaderboard thead th:not(:first-child){text-align:right}
.leaderboard tbody th{font:400 14px/1.4 Geist;letter-spacing:0;text-transform:none;padding:16px;color:#304c5c;border-bottom:1px solid var(--line);width:36%}
.leaderboard tbody th span{display:block;font:12px/1.7 Geist,sans-serif;color:var(--muted);margin-top:5px}
.leaderboard td{font:14px/1.5 Geist,sans-serif;padding:16px;text-align:right;color:#304c5c;white-space:nowrap}
.leaderboard td small{font:12px/1.5 Geist;color:var(--muted);display:block;margin-top:4px}
.leaderboard tr.local-row{background:#e4edf2;box-shadow:inset 2px 0 #4a7e9b}
.leaderboard tr.local-row th,.leaderboard tr.local-row td{color:#1d4d68}
.leaderboard tbody tr:hover{background:#eaece7}
.cost-lab{margin-block:40px 65px;border:1px solid #b9c9d0;border-radius:5px;background:#f1f4f2;display:grid;grid-template-columns:1fr 1fr;gap:0 65px;padding:40px}
.cost-controls h2{font-size:35px;margin:18px 0}
.cost-controls>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:400px}
.cost-controls label{display:block;position:relative;font-size:13px;color:#385b6e;margin-top:28px}
.cost-controls label select{display:block;width:100%;margin-top:10px}
.cost-controls output{float:right;font:12px Geist,sans-serif;color:#244f68}
.cost-controls input{width:100%;display:block;margin:15px 0 0;accent-color:#356c89;cursor:pointer}
.cost-readout{align-self:center;border-block:1px solid var(--line);padding-block:27px}
.cost-readout>div{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-block:22px}
.cost-readout>div span{font-size:13px;color:#3d5e70}
.cost-readout strong{font:23px Geist,sans-serif;color:#244f68;letter-spacing:-1px}
.cost-verdict{font-size:25px;color:#245873;line-height:1.35;letter-spacing:-.04em;margin:30px 0 15px}
.cost-verdict.is-more{color:#875024}
.cost-break-even{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.cost-footnote{grid-column:1/-1;border-top:1px solid var(--line);margin:35px 0 0;padding-top:20px;color:var(--muted);font-size:12px;line-height:1.9}
.evidence-download{border-top:1px solid var(--line);margin:65px 0 90px;padding-top:35px}
.evidence-download h2{margin-top:16px}
.evidence-download .actions{margin:28px 0}
.evidence-download .small{font-size:13px}
.evidence-download .eyebrow{font:11px Geist,sans-serif;color:var(--muted)}
.gate-comparison,.routing-chart{margin-block:50px;padding-block:30px;border-top:1px solid var(--line)}
.gate-readout{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-block:24px;background:#fffefa;border:1px solid #c1cbd0;padding:28px;border-radius:5px}
.gate-readout span{font:11px Geist,sans-serif;color:var(--muted)}
.gate-readout strong{display:block;font-size:clamp(18px,2.1vw,28px);font-weight:500;letter-spacing:-.045em;margin-block:17px;color:#244f68;font-variant-numeric:tabular-nums}
.gate-readout p{font-size:12px;line-height:1.7;color:#456274;margin:0}
.routing-chart h2{font-size:34px;margin-block:18px 28px}
.chart-controls{display:flex;gap:25px;flex-wrap:wrap;margin-block:25px}
.chart-controls label{font-size:12px;color:var(--muted);display:grid;gap:9px;min-width:175px}
.routing-chart figure{margin:0}
.chart-scroll{overflow-x:auto;border:1px solid #314456;border-radius:5px;background:#09111d}
.chart-scroll img{display:block;width:100%;min-width:800px;height:auto}
.routing-chart figcaption{font-size:13px;line-height:1.9;color:var(--muted);margin-top:20px;max-width:950px}
@media(max-width:850px){
  .post-card{gap:30px}.post-card h2{font-size:31px}.post-card-art{min-height:300px;padding:28px}.art-label,.art-caption{font-size:10px}
  .post-scoreboard>div{padding-inline:20px}.cost-lab{gap:35px;padding:28px}.cost-readout strong{font-size:20px}
  .gate-readout{grid-template-columns:1fr;gap:22px}.gate-readout>div+div{border-top:1px solid var(--line);padding-top:22px}
  .gate-readout strong{font-size:27px;margin-block:12px}.chart-controls{gap:18px}.chart-controls label{flex:1;min-width:140px}
  .gate-comparison .leaderboard-heading{display:block}.gate-comparison .leaderboard-heading label{justify-content:space-between;white-space:normal}
  .gate-comparison select{max-width:68%}.routing-chart h2{font-size:29px}.gate-comparison,.routing-chart{margin-block:35px}
}
@media(max-width:680px){
  .blog-page .site-header nav,.blog-page .site-header .nav-github{background:none}
  .blog-index{padding-block:42px 65px}.blog-index>h1{font-size:49px}.post-card{grid-template-columns:1fr;gap:26px}.post-card-art{min-height:255px}.post-card-art strong{font-size:85px}
  .post-header{padding-block:35px 30px}.post-header h1{font-size:clamp(42px,9vw,61px);margin:27px 0 22px;line-height:1.1}.post-header>.eyebrow{font-size:12px}
  .post-dek{font-size:18px;line-height:1.65}.post-scope{font-size:11px}.post-jumps{gap:12px 20px;font-size:12px}
  .post-byline{gap:10px 18px;font-size:12px;margin-top:23px}.post-byline a{margin-left:0}
  .post-scoreboard{grid-template-columns:1fr;margin-bottom:38px}.post-scoreboard>div{padding:18px 20px;border:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:3px 15px;align-items:center}
  .post-scoreboard strong{font-size:33px;grid-column:2;grid-row:1/3;margin:0}.post-scoreboard .eyebrow{margin:0;font-size:12px}.post-scoreboard p{font-size:10px;grid-column:1;grid-row:2}
  .post-prose{width:calc(100% - 40px)}.post-prose p{font-size:17px;line-height:1.85;margin-bottom:22px}.post-prose .opening{font-size:25px}.post-prose h2{font-size:29px;margin-top:43px}.post-prose blockquote{font-size:24px;padding-left:20px;margin-block:32px}
  .post-results{margin-block:42px;padding-top:27px}.leaderboard-heading{display:block}.leaderboard-heading h2{font-size:29px}.leaderboard-heading label{padding:0;margin-top:22px;justify-content:space-between}
  .leaderboard thead th{font-size:11px}.table-note{font-size:12px}.cost-lab{grid-template-columns:1fr;padding:23px 20px;gap:28px;margin-block:30px 42px}
  .cost-controls h2{font-size:29px}.cost-controls>p:not(.eyebrow){font-size:13px}.cost-controls label{margin-top:24px}.cost-readout{padding-block:22px}
  .cost-readout strong{font-size:23px}.cost-readout>div{gap:10px}.cost-readout>div span{font-size:12px}.cost-footnote{margin:0;padding-top:20px}.cost-verdict{font-size:25px}.evidence-download{margin-block:48px 65px}
}
@media(prefers-reduced-motion:reduce){.benchmark-post{scroll-behavior:auto}}
.frontier-comparison{margin-block:50px;padding-top:32px;border-top:1px solid var(--line)}
.frontier-comparison h2{font-size:clamp(29px,3.3vw,42px);max-width:800px;line-height:1.2;margin-block:20px}
.frontier-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-block:30px}
.frontier-card{background:#fffefa;border:1px solid #bdcbcd;border-radius:5px;padding:28px 24px}
.frontier-card h3{font-size:19px;font-weight:500;margin:0 0 28px;color:#244b61}
.frontier-saving{font-size:47px;line-height:1.1;letter-spacing:-.05em;color:#277461;margin:0 0 27px;font-variant-numeric:tabular-nums}
.frontier-saving span{display:block;font:12px/1.7 Geist;letter-spacing:0;margin-top:9px;color:#45685b}
.frontier-card dl{margin:0}.frontier-card dl>div{border-top:1px solid var(--line);padding-block:15px}
.frontier-card dt{font-size:11px;color:var(--muted);margin-bottom:9px}.frontier-card dd{margin:0;font:15px/1.7 Geist,sans-serif;color:#274c61}
.frontier-card dd small{display:block;font:12px/1.7 Geist;color:var(--muted)}
.frontier-direction{font:12px/1.7 Geist,sans-serif;color:var(--muted);margin:10px 0 0}
.leading-chart .chart-scroll{background:#fffefa;border-color:#bdcbcd;margin-top:25px}
.post-prose code{overflow-wrap:anywhere;word-break:break-word;font-size:.8em;color:#315e72;background:#e9edeb;padding:2px 4px}
@media(max-width:850px){.frontier-cards{grid-template-columns:1fr;gap:16px}.frontier-card{padding:24px}.frontier-card h3{margin-bottom:19px}.frontier-saving{font-size:40px;margin-bottom:23px}.frontier-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.frontier-card dd{font-size:12px}.post-scoreboard strong{font-size:clamp(28px,3.7vw,40px)}}
@media(max-width:540px){.frontier-card dl{grid-template-columns:1fr;gap:0}.frontier-card dl>div{display:grid;grid-template-columns:85px 1fr;gap:12px}.frontier-card dt{margin:0;padding-top:4px}.frontier-card dd{font-size:13px}.frontier-comparison{margin-block:35px}.leading-chart .leaderboard-heading label{display:grid;gap:10px}.post-scoreboard strong{font-size:27px}.post-scoreboard>div{gap:3px 10px}}
.field-comparison{margin-block:60px;padding-block:35px;border-top:1px solid var(--line);scroll-margin-top:25px}
.field-comparison .leaderboard-heading h2{font-size:clamp(30px,3.2vw,40px);line-height:1.15;max-width:790px;margin:0 0 18px}
.local-measurement{display:grid;grid-template-columns:180px 1fr;gap:36px;align-items:center;border-block:1px solid #b8d0c5;background:#f0f6f2;padding:28px 30px;margin:14px 0 22px;color:#235a48}
.local-timing strong{display:block;font-size:64px;font-weight:500;letter-spacing:-.05em;line-height:1.1;font-variant-numeric:tabular-nums}.local-timing strong span{font-size:28px;letter-spacing:-.02em}
.local-timing>span{display:block;font-size:12px;margin-top:9px;color:#49685b}
.local-context h3{font-size:25px;font-weight:500;letter-spacing:-.025em;line-height:1.3;margin:0 0 9px}.local-context p{font-size:15px;line-height:1.65;margin:0;color:#3e5b50;max-width:650px}.local-context .local-scope{font-size:12px;margin-top:12px;color:#577365}
.local-rivals{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0;padding-top:22px;border-top:1px solid #c9dcd1}.local-rivals dt{font-size:14px;line-height:1.5}.local-rivals dd{font-size:32px;line-height:1.3;letter-spacing:-.04em;margin:7px 0}.local-rivals dd span{font-size:13px;letter-spacing:0;white-space:nowrap}.local-rivals p{font-size:12px;line-height:1.6;margin:0;color:#577365}
.field-dek{font-size:18px;line-height:1.7;color:#425966;max-width:860px;margin:0 0 28px}
.field-dek strong{color:#236853;font-weight:500}
.field-legend{display:flex;gap:22px;flex-wrap:wrap;font-size:12px;line-height:1.6;color:var(--muted);margin-block:28px 24px}
.field-legend span{display:flex;align-items:center;gap:8px}
.field-legend span:before{content:"";width:8px;height:8px;border-radius:50%;background:#788c97}
.field-legend .legend-local:before{background:#237362;width:11px;height:11px}
.field-legend .legend-leading:before{background:#ae643d}
.field-table{border:1px solid #c3cece;border-radius:5px;background:#fff;overflow:hidden;font-variant-numeric:tabular-nums}
.field-head,.field-row{display:grid;grid-template-columns:minmax(210px,1.3fr) minmax(220px,2fr) 105px 75px;align-items:center;gap:23px;padding-inline:22px}
.field-head{padding-block:22px 20px;border-bottom:1px solid #c3cece;font:12px/1.4 Geist,sans-serif;text-transform:none;color:var(--muted)}
.field-head>span:nth-last-child(-n+2){text-align:right}
.field-axis{position:relative;height:13px;font:11px/1.4 Geist,sans-serif;text-transform:none}
.field-axis span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.field-axis span:last-child{transform:translateX(-100%)}
.field-row{min-height:51px;border-bottom:1px solid #dde3e180;font-size:14px;color:#314d5c}
.field-row:last-child{border-bottom:0}
.field-name{display:flex;align-items:center;gap:15px;line-height:1.35;padding-block:8px}
.field-rank{font:11px Geist,sans-serif;color:#7c8d95;min-width:17px}
.field-name small{font-size:11px;color:#6b7d87;margin-top:3px;display:block}
.field-track{height:51px;position:relative}
.field-track:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#dce3e3}
.field-reference{position:absolute;left:var(--local-position);height:100%;border-left:1px dashed #53938088}
.field-dot{position:absolute;top:50%;width:8px;height:8px;transform:translate(-50%,-50%);border-radius:50%;background:#788c97;box-shadow:0 0 0 3px #fff}
.field-value,.field-quality{text-align:right;white-space:nowrap;font:14px/1.5 Geist,sans-serif}
.field-quality{color:#52616a;font-size:13px}
.field-row.is-local{background:#e5f1eb;box-shadow:inset 3px 0 #237362;color:#1c6452;font-weight:600}
.is-local .field-name small{color:#3b7767}.is-local .field-value{font-weight:600;font-size:14px}.is-local .field-quality{color:#236853}
.is-local .field-dot{width:13px;height:13px;background:#237362;box-shadow:0 0 0 4px #e5f1eb}
.is-leading .field-dot{background:#ae643d}.is-leading .field-name{font-weight:600}.is-leading .field-name small{font-weight:400;color:#986242}
.field-axis-note{font-size:12px;line-height:1.8;color:#4c6b79;margin-top:19px}
.field-downloads{display:flex;gap:13px 24px;flex-wrap:wrap;margin-top:22px;font-size:12px;color:#235c7d}
.field-downloads a{text-decoration:underline;text-underline-offset:4px}
@media(max-width:950px){.field-head,.field-row{grid-template-columns:minmax(170px,1.25fr) minmax(140px,1.3fr) 90px 64px;gap:15px;padding-inline:16px}.field-name{font-size:13px;gap:10px}.field-value{font-size:13px}.field-axis{font-size:10px}.field-axis span:nth-child(even){visibility:hidden}}
@media(max-width:680px){
  .local-measurement{grid-template-columns:1fr;gap:22px;padding:24px 20px}.local-timing strong{font-size:56px}.local-context h3{font-size:22px}.local-context p{font-size:14px}.local-context .local-scope{font-size:11px}
  .local-rivals{grid-template-columns:1fr;gap:18px}.local-rivals>div{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:start}.local-rivals dt{font-size:13px}.local-rivals dd{grid-column:2;grid-row:1/3;font-size:28px;text-align:right;margin:0}.local-rivals dd span{display:block;font-size:11px}.local-rivals p{grid-column:1;font-size:11px}
  .field-comparison{margin-block:40px;padding-block:27px}.field-comparison .leaderboard-heading label{margin-bottom:22px}.field-dek{font-size:16px}.field-legend{font-size:12px;gap:10px 18px}
  .field-head,.field-row{grid-template-columns:minmax(0,1fr) 84px 62px;gap:0 9px;padding-inline:13px}
  .field-head{padding-block:16px 12px}.field-head>span:first-child{grid-column:1;grid-row:1}.field-head>span:nth-last-child(2){grid-column:2;grid-row:1}.field-head>span:last-child{grid-column:3;grid-row:1}
  .field-axis{grid-column:1/-1;grid-row:2;margin-top:20px;font-size:10px}
  .field-name{grid-column:1;grid-row:1;font-size:13px;gap:8px;padding-block:12px 2px}.field-name small{font-size:10px}.field-rank{font-size:10px;min-width:14px}
  .field-track{grid-column:1/-1;grid-row:2;height:24px;margin-bottom:6px}.field-value{grid-column:2;grid-row:1;font-size:12px}.field-quality{grid-column:3;grid-row:1;font-size:12px}.is-local .field-value{font-size:13px}
}
