@font-face {
  font-family: "InterVariable";
  src: url("fonts/InterVariable.woff2?v=20260612") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --paper: #f3f0e8;
  --ink: #151514;
  --muted: #69645c;
  --rule: #c9c1b4;
  --accent: #8b5a2b;
  --accent-dark: #5d381c;
  --gutter: clamp(18px, 3.2vw, 52px);
  --section-y: clamp(64px, 9vw, 132px);
  --small: clamp(0.72rem, 0.72rem + 0.12vw, 0.82rem);
  --body: clamp(0.94rem, 0.9rem + 0.18vw, 1.06rem);
  --lead: clamp(1.22rem, 1.02rem + 0.78vw, 1.82rem);
  --display: clamp(3.7rem, 7.2vw, 8.2rem);
  --mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}
* { box-sizing: border-box; }
html { color-scheme: light; scroll-behavior: smooth; background: var(--paper); }
body {
  margin: 0;
  font-family: "InterVariable", Helvetica, Arial, sans-serif;
  font-size: var(--body);
  line-height: 1.46;
  color: var(--ink);
  background:
    linear-gradient(90deg, rgba(21,21,20,0.035) 1px, transparent 1px) 0 0 / calc((100vw - (2 * var(--gutter))) / 12) 100%,
    var(--paper);
  font-variation-settings: "opsz" 14;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
body::before { content:""; position:fixed; inset:0 var(--gutter); border-left:1px solid rgba(21,21,20,.08); border-right:1px solid rgba(21,21,20,.08); pointer-events:none; z-index:-1; }
::selection { color: var(--paper); background: var(--accent-dark); }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: .22em; }
a:hover { color: var(--accent-dark); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
.skip-link { position:absolute; left:var(--gutter); top:10px; transform:translateY(-160%); padding:8px 10px; color:var(--paper); background:var(--ink); z-index:20; }
.skip-link:focus { transform: translateY(0); }
.site-header, .site-footer, .grid-section { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); column-gap:clamp(12px,1.6vw,24px); margin-inline:var(--gutter); }
.site-header { position:sticky; top:0; z-index:10; min-height:92px; align-items:start; padding-top:24px; border-bottom:1px solid var(--ink); background:var(--paper); font-size:var(--small); letter-spacing:.02em; text-transform:uppercase; }
.mark { grid-column:1 / span 2; font-weight:760; line-height:.9; }
.nav { grid-column:4 / 13; display:flex; flex-wrap:wrap; gap:10px 20px; justify-content:flex-end; }
.nav a { color:var(--muted); text-decoration:none; white-space:nowrap; }
.nav a:hover { color:var(--ink); }
.grid-section { position:relative; padding-block:var(--section-y); border-bottom:1px solid var(--rule); scroll-margin-top:108px; }
.hero { min-height:calc(100vh - 92px); padding-top:clamp(68px,10vw,136px); align-content:start; }
.kicker,.section-number,.note,.caption,.site-footer,.mini,.status,.tag { font-size:var(--small); line-height:1.35; color:var(--muted); }
.kicker { grid-column:1 / span 3; padding-top:.6em; text-transform:uppercase; letter-spacing:.06em; }
h1,h2,h3,p,figure { margin:0; }
h1 { grid-column:4 / 13; max-width:11ch; font-size:var(--display); line-height:.88; letter-spacing:-.075em; font-weight:720; }
.hero-deck { grid-column:7 / 13; margin-top:clamp(34px,5vw,68px); max-width:720px; font-size:var(--lead); line-height:1.1; letter-spacing:-.038em; font-weight:520; }
.hero-meta { grid-column:1 / span 5; align-self:end; margin-top:clamp(64px,9vw,120px); border-top:1px solid var(--ink); font-size:var(--small); color:var(--muted); }
.hero-meta p { display:grid; grid-template-columns:42px 1fr; gap:10px; padding:11px 0; border-bottom:1px solid var(--rule); }
.hero-meta span,.section-number { color:var(--accent-dark); font-weight:650; }
.section-number { grid-column:1 / span 1; }
h2 { grid-column:2 / span 3; font-size:clamp(1.45rem,1rem + 1.7vw,2.75rem); line-height:.96; letter-spacing:-.055em; font-weight:680; }
h3 { margin-bottom:8px; font-size:clamp(1.15rem,.9rem + .9vw,1.8rem); line-height:1; letter-spacing:-.045em; font-weight:670; }
.lead, .copy, .feature-grid, .dense-list, .media-grid, .spec-table, .status-table, .workflow-list, .placeholder-grid, .source-note { grid-column:5 / 13; }
.lead { font-size:var(--lead); line-height:1.14; letter-spacing:-.04em; font-weight:520; }
.copy { margin-top:26px; color:var(--muted); max-width:760px; }
.feature-grid, .media-grid, .placeholder-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--ink); }
.feature-grid article, .placeholder, .media-grid figure { min-height:190px; padding:18px 18px 24px 0; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.feature-grid article:nth-child(3n), .media-grid figure:nth-child(3n), .placeholder:nth-child(3n) { border-right:0; }
.feature-grid p { max-width:32rem; }
.eyebrow, .feature-grid span, .dense-list span, .workflow-list span, .status-table th, .spec-table th { display:block; margin-bottom:18px; color:var(--accent-dark); font-size:var(--small); line-height:1.1; text-transform:uppercase; letter-spacing:.06em; font-weight:690; }
.dense-list { list-style:none; padding:0; margin-block:0; border-top:1px solid var(--ink); }
.dense-list li { display:grid; grid-template-columns:minmax(170px,2fr) 5fr; gap:24px; padding:16px 0; border-bottom:1px solid var(--rule); }
code, .mono { font-family:var(--mono); font-size:.92em; letter-spacing:-.025em; overflow-wrap:anywhere; }
.media-grid { margin-top:38px; }
.media-grid figure { min-height:0; }
.media-grid img { display:block; width:100%; aspect-ratio:1 / 1; object-fit:cover; border:1px solid var(--rule); background:#ded8ce; }
.media-grid .wide img { aspect-ratio:4 / 3; }
.caption { margin-top:10px; color:var(--muted); }
.placeholder { position:relative; min-height:220px; background:repeating-linear-gradient(135deg, rgba(21,21,20,.05) 0 1px, transparent 1px 14px); }
.placeholder::before { content:"capture pending"; display:block; margin-bottom:38px; color:var(--accent-dark); font-size:var(--small); text-transform:uppercase; letter-spacing:.06em; font-weight:690; }
.status-table, .spec-table { width:100%; border-collapse:collapse; border-top:1px solid var(--ink); font-size:var(--small); }
.status-table th,.status-table td,.spec-table th,.spec-table td { text-align:left; vertical-align:top; padding:12px 10px 12px 0; border-bottom:1px solid var(--rule); }
.status-table th,.spec-table th { display:table-cell; margin:0; }
.status { color:var(--accent-dark); text-transform:uppercase; letter-spacing:.055em; font-weight:690; white-space:nowrap; }
.workflow-list { counter-reset: flow; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-top:1px solid var(--ink); }
.workflow-list li { counter-increment:flow; list-style:none; min-height:116px; padding:16px 18px 18px 0; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.workflow-list li:nth-child(2n) { border-right:0; padding-left:18px; }
.workflow-list span::before { content:counter(flow, decimal-leading-zero) " / "; }
.note { grid-column:5 / 10; margin-top:28px; color:var(--accent-dark); }
.source-note { margin-top:28px; font-size:var(--small); color:var(--muted); }
.site-footer { padding-block:22px 42px; align-items:start; }
.site-footer p { grid-column:1 / span 6; } .site-footer a { grid-column:11 / span 2; justify-self:end; }
@media (max-width:1100px) { :root{--gutter:clamp(18px,3vw,34px);} .nav{grid-column:3/13; gap:10px 15px;} h1{grid-column:3/13;} .hero-deck{grid-column:5/13;} .hero-meta{grid-column:1/span 5;} h2{grid-column:2/span 4;} .lead,.copy,.feature-grid,.dense-list,.media-grid,.spec-table,.status-table,.workflow-list,.placeholder-grid,.source-note,.note{grid-column:5/13;} .feature-grid,.media-grid,.placeholder-grid{grid-template-columns:repeat(2,minmax(0,1fr));} .feature-grid article:nth-child(3n),.media-grid figure:nth-child(3n),.placeholder:nth-child(3n){border-right:1px solid var(--rule);} .feature-grid article:nth-child(2n),.media-grid figure:nth-child(2n),.placeholder:nth-child(2n){border-right:0;} }
@media (max-width:780px) { body{background:linear-gradient(90deg,rgba(21,21,20,.035) 1px,transparent 1px) 0 0 / calc((100vw - (2 * var(--gutter))) / 6) 100%,var(--paper);} .site-header,.site-footer,.grid-section{grid-template-columns:repeat(6,minmax(0,1fr));} .site-header{position:relative;min-height:132px;row-gap:22px;} .mark{grid-column:1/span 2;} .nav{grid-column:1/7;justify-content:flex-start;overflow-x:visible;padding-bottom:14px;flex-wrap:wrap;} .hero{min-height:auto;} .kicker,.section-number,h2,h1,.hero-deck,.hero-meta,.lead,.copy,.feature-grid,.dense-list,.media-grid,.spec-table,.status-table,.workflow-list,.placeholder-grid,.source-note,.note{grid-column:1/7;} .kicker{margin-bottom:34px;} h1{max-width:8.8ch;} .hero-deck{margin-top:34px;} .hero-meta{margin-top:72px;} .section-number{margin-bottom:12px;} h2{max-width:11ch;margin-bottom:34px;} .feature-grid,.media-grid,.placeholder-grid,.workflow-list{grid-template-columns:1fr;} .feature-grid article,.media-grid figure,.placeholder,.feature-grid article:nth-child(3n),.media-grid figure:nth-child(3n),.placeholder:nth-child(3n),.feature-grid article:nth-child(2n),.media-grid figure:nth-child(2n),.placeholder:nth-child(2n),.workflow-list li,.workflow-list li:nth-child(2n){min-height:0;padding:18px 0 34px 0;border-right:0;border-bottom:1px solid var(--rule);} .dense-list li{grid-template-columns:1fr;gap:8px;} .spec-table,.status-table{display:block;overflow-x:auto;white-space:normal;} .site-footer p{grid-column:1/span 4;} .site-footer a{grid-column:5/span 2;} }
@media (max-width:430px) { :root{--gutter:16px;--section-y:62px;} body{line-height:1.5;} .site-header{min-height:152px;padding-top:18px;} .nav{gap:10px 16px;font-size:.68rem;} h1{font-size:clamp(3.2rem,17vw,4.05rem);letter-spacing:-.08em;} .hero-deck,.lead{font-size:1.22rem;line-height:1.17;letter-spacing:-.035em;} .hero-meta p{grid-template-columns:32px 1fr;} h2{font-size:2rem;} .status-table th,.status-table td,.spec-table th,.spec-table td{font-size:.68rem;} }
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}


/* vision.ij8.ai editorial extensions */
:root { --display: clamp(3.35rem, 7vw, 8rem); }
.hero h1 { max-width: 12ch; }
.copy { font-size: clamp(1rem, .96rem + .16vw, 1.12rem); line-height: 1.62; color: #38342e; }
.copy + .copy { margin-top: 18px; }
.quote-block { grid-column:5 / 12; margin-top:34px; padding:28px 0 0; border-top:1px solid var(--ink); color:var(--ink); }
.quote-block blockquote { margin:0; font-size:clamp(1.55rem,1.18rem + 1.25vw,2.55rem); line-height:1.08; letter-spacing:-.048em; font-weight:560; max-width:980px; }
.quote-block figcaption { margin-top:18px; color:var(--accent-dark); font-size:var(--small); text-transform:uppercase; letter-spacing:.06em; }
.essay-pair { grid-column:5 / 13; display:grid; grid-template-columns: minmax(0, 1.25fr) minmax(220px, .75fr); gap:clamp(22px,3vw,44px); align-items:start; margin-top:34px; }
.essay-pair .copy { margin-top:0; }
.side-note { border-top:1px solid var(--ink); padding-top:14px; color:var(--muted); font-size:var(--small); line-height:1.48; }
.side-note strong { display:block; margin-bottom:10px; color:var(--accent-dark); text-transform:uppercase; letter-spacing:.06em; font-size:var(--small); }
.evidence-strip { grid-column:5 / 13; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--ink); margin-top:32px; }
.evidence-strip article { padding:16px 16px 22px 0; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); min-height:150px; }
.evidence-strip article:nth-child(4n) { border-right:0; }
.evidence-strip span { display:block; margin-bottom:16px; color:var(--accent-dark); font-size:var(--small); line-height:1.1; text-transform:uppercase; letter-spacing:.06em; font-weight:690; }
.source-groups { grid-column:5 / 13; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; border-top:1px solid var(--ink); margin-top:30px; }
.source-groups article { padding:16px 0 22px; border-bottom:1px solid var(--rule); }
.source-groups h3 { margin:0 0 10px; color:var(--accent-dark); font-size:var(--small); text-transform:uppercase; letter-spacing:.06em; font-weight:690; }
.source-groups p { color:var(--muted); font-size:var(--small); line-height:1.5; }
.source-groups a { overflow-wrap:anywhere; }
.site-header .mark img { width:56px;height:auto;display:block;margin-bottom:8px; }
.site-header .mark span { font-size:9px;letter-spacing:.3em;text-transform:uppercase;font-weight:400;opacity:.7;display:block; }
@media (max-width:1100px){ .quote-block,.essay-pair,.evidence-strip,.source-groups{grid-column:5/13;} .evidence-strip{grid-template-columns:repeat(2,minmax(0,1fr));} .evidence-strip article:nth-child(4n){border-right:1px solid var(--rule);} .evidence-strip article:nth-child(2n){border-right:0;} }
@media (max-width:780px){ .quote-block,.essay-pair,.evidence-strip,.source-groups{grid-column:1/7;} .essay-pair,.source-groups{grid-template-columns:1fr;} .evidence-strip{grid-template-columns:1fr;} .evidence-strip article,.evidence-strip article:nth-child(2n),.evidence-strip article:nth-child(4n){border-right:0;} }
@media (max-width:430px){ .quote-block blockquote{font-size:1.55rem;} .essay-pair{gap:18px;} }
