/* Layout: dark "digital ocean" hero, proof strip, then alternating paper/tint sections: core and supporting
   services, current priorities, how we work, working with primes, tail-end analysis, who we are, contracting
   teaser, contact. contracting.html shares this file. Copper is the only accent. */
:root{
  --paper:#f4f7f9; --surface:#ffffff; --ink:#0d2233; --muted:#4e6475; --line:#d6e0e7; --tint:#e8f0f5;
  --copper:#a8592c; --sea:#1f7fb6;
  --deep:#04182a; --deep-ink:#e2eef6; --deep-muted:#93b2c6; --deep-line:#163b55; --deep-copper:#d98a57;
  --display:"Archivo", "Helvetica Neue", Arial, sans-serif;
  --body:"Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --mono:"JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
  --gutter:clamp(16px,4.5vw,56px);
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#061624; --surface:#0b2132; --ink:#e2edf4; --muted:#93abbc; --line:#173449; --tint:#0e2a3e;
  --copper:#de9061; --sea:#5cb6e6; color-scheme:dark}}
:root[data-theme="dark"]{--paper:#061624; --surface:#0b2132; --ink:#e2edf4; --muted:#93abbc; --line:#173449; --tint:#0e2a3e;
  --copper:#de9061; --sea:#5cb6e6; color-scheme:dark}

body{background:var(--paper);color:var(--ink);font:17px/1.6 var(--body)}
a{color:inherit}
.wrap{max-width:1180px;margin:0 auto;padding-inline:var(--gutter)}
h1,h2,h3{font-family:var(--display);text-wrap:balance;margin:0}
.label{font:500 12px/1.2 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--copper)}
:focus-visible{outline:2px solid var(--copper);outline-offset:3px;border-radius:4px}

/* ---------- hero ---------- */
.hero{position:relative;background:var(--deep);color:var(--deep-ink);overflow:hidden;isolation:isolate}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-2;display:block}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(90deg,rgba(4,24,42,.88) 0%,rgba(4,24,42,.55) 45%,rgba(4,24,42,0) 72%)}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
[id]{scroll-margin-top:72px}
.topbar{position:fixed;top:0;left:0;right:0;z-index:30;color:var(--deep-ink);border-bottom:1px solid transparent;transition:background-color .25s,border-color .25s}
.topbar.solid{background:rgba(4,24,42,.94);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom-color:var(--deep-line)}
.hero{padding-top:82px}
.nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:22px;transition:padding .25s}
.topbar.solid .nav{padding-block:12px}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.mark{position:relative;display:inline-block;padding:2px 14px 4px 9px;border-left:2px solid var(--deep-muted);border-bottom:2px solid var(--deep-muted)}
.mark-l{display:block;font:800 30px/1 var(--display);font-stretch:125%;letter-spacing:-.03em;color:var(--deep-ink)}
.mark-dot{position:absolute;right:-4px;top:-6px;width:9px;height:9px;border-radius:50%;background:var(--deep-copper);box-shadow:0 0 0 4px rgba(217,138,87,.18)}
.mark::after{content:"";position:absolute;left:9px;right:14px;bottom:-2px;height:2px;background:linear-gradient(90deg,transparent 0 72%,var(--deep-copper) 72%)}
.brand-txt{white-space:nowrap;font:500 14px/1 var(--mono);letter-spacing:.2em;padding-block:8px;text-transform:uppercase;color:var(--deep-muted);padding-left:12px;border-left:1px solid var(--deep-line)}
@media (max-width:560px){.brand-txt{display:none}}
.links{display:flex;gap:24px;white-space:nowrap;list-style:none;margin:0;padding:0;font-size:15px}
.links a{text-decoration:none;color:var(--deep-muted)}
.links a:hover{color:var(--deep-ink)}
.menu{display:none;font:500 14px var(--body);color:var(--deep-ink);background:none;border:1px solid var(--deep-line);border-radius:999px;padding:8px 16px;cursor:pointer}
@media (max-width:1080px){
  .menu{display:inline-flex}
  .links{display:none;position:absolute;top:calc(100% + 6px);right:var(--gutter);flex-direction:column;gap:14px;background:var(--deep);border:1px solid var(--deep-line);border-radius:12px;padding:18px 22px;z-index:5}
  .links.open{display:flex}
}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr);padding-block:clamp(40px,7vw,88px) clamp(48px,7vw,80px)}
.hero-copy{max-width:720px}
.hero .label{color:var(--deep-copper)}
.svc{display:flex;flex-wrap:wrap;gap:8px 0;list-style:none;margin:0;padding:0;font:700 13px/1.2 var(--display);font-stretch:112%;letter-spacing:.07em;text-transform:uppercase;color:var(--deep-copper)}
.svc li{display:flex;align-items:center;white-space:nowrap}
.svc li:not(:last-child)::after{content:"";width:5px;height:5px;border-radius:50%;background:var(--deep-muted);margin:0 10px}
.hero h1{font-size:clamp(28px,3.4vw,42px);line-height:1.12;font-weight:700;font-stretch:112%;letter-spacing:-.01em;margin:16px 0 20px}
.hero-copy p{color:var(--deep-muted);max-width:56ch;margin:14px 0 0;font-size:16px}
.hero-copy .hero-tag{margin-top:0;padding-left:14px;border-left:3px solid var(--deep-copper);color:var(--deep-ink);font:500 clamp(17px,1.6vw,19px)/1.45 var(--body)}
.ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.btn{display:inline-flex;align-items:center;gap:10px;font:600 15px var(--body);text-decoration:none;border-radius:999px;padding:12px 22px;border:1px solid transparent;cursor:pointer}
.btn-solid{background:var(--deep-copper);color:#1a0d05}
.btn-ghost{border-color:var(--deep-line);color:var(--deep-ink);background:rgba(4,24,42,.4)}
.btn svg{width:16px;height:16px}
/* ---------- proof strip ---------- */
.stats{background:var(--surface);border-bottom:1px solid var(--line)}
.stats .wrap{padding-block:28px 22px}
.stats-label{margin:0 0 14px;color:var(--muted)}
.stat-row{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 28px}
@media (max-width:900px){.stat-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.stat-row{grid-template-columns:minmax(0,1fr)}}
.stat-row li{display:grid;gap:4px;align-content:start;padding-left:14px;border-left:2px solid var(--copper)}
.stat-row b{font:700 24px/1.1 var(--display);font-stretch:112%;color:var(--ink);font-variant-numeric:tabular-nums}
.stat-row span{font-size:14px;color:var(--muted);line-height:1.45}

/* ---------- sections ---------- */
section.block{padding-block:clamp(64px,9vw,112px)}
.head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 48px;align-items:end;margin-bottom:44px}
@media (max-width:860px){.head{grid-template-columns:minmax(0,1fr)}}
.head .label,.contact .label{font:700 15px/1.2 var(--display);font-stretch:112%;letter-spacing:.12em;padding-bottom:10px;border-bottom:2px solid currentColor;display:inline-block}
.head h2{font-size:clamp(25px,2.9vw,36px);line-height:1.12;font-weight:700;font-stretch:112%;letter-spacing:-.01em;margin-top:16px}
.head p{margin:0;color:var(--muted);max-width:56ch}

/* capabilities */
.pillars{display:grid;gap:56px}
.pillar{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:28px 48px;border-top:2px solid var(--ink);padding-top:22px}
@media (max-width:860px){.pillar{grid-template-columns:minmax(0,1fr)}}
.pillar h3{font-size:26px;font-weight:700;font-stretch:112%;line-height:1.1}
.pillar > div:first-child p{color:var(--muted);font-size:15px;margin:10px 0 0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:22px 24px;display:grid;gap:12px;align-content:start}
.card h4{margin:0;font:700 19px/1.25 var(--display);font-stretch:112%}
.card p{margin:0;color:var(--muted);font-size:15.5px}
.card ul{margin:0;padding:0;list-style:none;display:grid;gap:6px;font-size:14px;border-top:1px dashed var(--line);padding-top:12px}
.card li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:8px}
.card li::before{content:"";width:6px;height:6px;margin-top:8px;background:var(--copper);border-radius:1px}

/* method */

.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;counter-reset:s}
@media (max-width:980px){.steps{grid-template-columns:minmax(0,1fr)}}
.steps li{counter-increment:s;padding:22px 22px 26px;border-left:1px solid var(--line);display:grid;gap:10px;align-content:start}
.steps li:first-child{border-left-color:transparent}
@media (max-width:980px){.steps li{border-left:0;border-top:1px solid var(--line);padding-inline:0}.steps li:first-child{border-top-color:transparent}}
.steps li::before{content:"Step " counter(s);font:500 12px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--copper)}
.steps h3{font-size:20px;font-weight:700;font-stretch:112%;line-height:1.15}
.steps p{margin:0;color:var(--muted);font-size:15px}

/* work */
.work{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:860px){.work{grid-template-columns:minmax(0,1fr)}}
.case{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:26px;display:grid;gap:14px;align-content:start}
.case .meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font:12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.case h3{font-size:23px;font-weight:700;font-stretch:112%;line-height:1.15}
.case p{margin:0;color:var(--muted);font-size:15.5px}
.case .big{display:flex;gap:26px;flex-wrap:wrap}
.case .big div{display:grid}
.case .big b{font:700 30px/1.05 var(--display);font-stretch:112%;color:var(--copper);font-variant-numeric:tabular-nums}
.case .big span{font-size:13px;color:var(--muted)}
.tags{display:flex;flex-wrap:wrap;gap:6px}
.tags span{font:12px var(--mono);background:var(--tint);border-radius:4px;padding:3px 8px;color:var(--ink)}
.case a.more{font-weight:600;font-size:15px;color:var(--sea);text-decoration:none}

/* insights */
.posts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1000px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.posts{grid-template-columns:minmax(0,1fr)}}
.post{display:grid;gap:10px;align-content:start;padding-top:16px;border-top:1px solid var(--ink)}
.post .chip{justify-self:start;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 9px}
.post h3{font-size:20px;line-height:1.2;font-weight:700;font-stretch:112%}
.post p{margin:0;color:var(--muted);font-size:15px}
.post .topic{font:12px var(--mono);color:var(--copper)}

/* about */
.about{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:48px}
@media (max-width:860px){.about{grid-template-columns:minmax(0,1fr)}}
.about p{max-width:62ch;margin:0 0 16px}
.about .lede{font-size:21px;line-height:1.5}
.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--line)}
.timeline li{position:relative;padding:0 0 18px 22px;display:grid;gap:2px}
.timeline li::before{content:"";position:absolute;left:-6px;top:7px;width:10px;height:10px;border-radius:50%;background:var(--paper);border:2px solid var(--copper)}
.timeline b{font:700 16px var(--display);font-stretch:112%}
.timeline span{font-size:14px;color:var(--muted)}
.timeline em{font:normal 12px var(--mono);color:var(--muted)}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.creds span{font:500 13px var(--body);border:1px solid var(--line);border-radius:6px;padding:5px 10px;background:var(--surface)}

/* contact */
.contact{background:var(--deep);color:var(--deep-ink)}
.contact .wrap{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:center;padding-block:clamp(56px,8vw,96px)}
@media (max-width:860px){.contact .wrap{grid-template-columns:minmax(0,1fr)}}
.contact h2{font-size:clamp(25px,2.9vw,36px);font-weight:700;font-stretch:112%;line-height:1.05;margin-top:12px}
.contact .label{color:var(--deep-copper)}
.contact p{color:var(--deep-muted);margin:16px 0 0;max-width:50ch}
.reach{display:grid;gap:12px;background:rgba(255,255,255,.03);border:1px solid var(--deep-line);border-radius:12px;padding:22px}
.reach .row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}
.reach code{font:500 16px var(--mono);user-select:all;word-break:break-all}
.reach button{font:600 13px var(--body);border:1px solid var(--deep-line);background:none;color:var(--deep-ink);border-radius:999px;padding:6px 14px;cursor:pointer}
.reach a{color:var(--deep-ink);font-size:15px}
.reach .dim{font-size:13px;color:var(--deep-muted)}
footer{background:var(--deep);color:var(--deep-muted);border-top:1px solid var(--deep-line);font-size:13px}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding-block:22px}

/* v2 components */
.tinted{background:var(--tint)}
.beliefs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
@media (max-width:900px){.beliefs{grid-template-columns:minmax(0,1fr)}}
.beliefs article{padding:28px 28px 8px 0;display:grid;gap:14px;align-content:start}
.beliefs article+article{padding-left:28px;border-left:1px solid var(--line)}
@media (max-width:900px){.beliefs article+article{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.beliefs h3{font-size:clamp(20px,1.9vw,24px);line-height:1.1;font-weight:700;font-stretch:112%}
.beliefs p{margin:0;color:var(--muted)}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1050px){.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
@media (max-width:900px){.grid3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.grid4,.grid3{grid-template-columns:minmax(0,1fr)}}
.card .label{font-size:11px}
.deep{background:var(--deep);color:var(--deep-ink)}
.deep .label{color:var(--deep-copper)}
.deep .head p,.deep .card p{color:var(--deep-muted)}
.deep .card{background:rgba(255,255,255,.03);border-color:var(--deep-line)}
.steps p{font-size:14.5px}
/* v3: tail-end analysis, AI planning, platforms */
.tail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:40px;align-items:start}
@media (max-width:960px){.tail-grid{grid-template-columns:minmax(0,1fr)}}
.tail-left{display:grid;gap:28px;min-width:0}
.dist-wrap{margin:0;border-top:2px solid var(--ink);padding-top:18px}
.dist{width:100%;height:auto;display:block}
.c-axis{stroke:var(--line);stroke-width:1.5}
.c-bulk{fill:var(--tint)}
.c-tail{fill:var(--copper);opacity:.85}
.c-line{fill:none;stroke:var(--muted);stroke-width:1.5}
.c-cut{stroke:var(--copper);stroke-width:1.2;stroke-dasharray:4 4}
.c-dot{fill:var(--copper)}
.c-txt{font:500 12.5px var(--mono);fill:var(--muted)}
.c-strong{fill:var(--copper)}
.tail-copy{display:grid;gap:14px;min-width:0}
.tail-copy p{margin:0;color:var(--muted);max-width:62ch}
.tail-copy .lede{color:var(--ink);font-size:20px;line-height:1.45}
.chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:6px 0 0;padding:0}
.chips li{font:500 13px var(--body);border:1px solid var(--copper);color:var(--ink);border-radius:999px;padding:5px 12px}
.ledger{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:22px 24px;display:grid;gap:14px;min-width:0}
.ledger-top{display:flex;justify-content:space-between;align-items:center}
.ledger .ex{font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:2px 8px}
.ledger table{width:100%;border-collapse:collapse;font-size:15px}
.ledger th{text-align:left;font-weight:400;color:var(--muted);padding:9px 0}
.ledger td{text-align:right;font:500 15px var(--mono);font-variant-numeric:tabular-nums;padding:9px 0 9px 12px;white-space:nowrap}
.ledger tr{border-bottom:1px dashed var(--line)}
.ledger tr.in th,.ledger tr.out th{color:var(--ink);font-weight:600}
.ledger tr.in td,.ledger tr.out td{font-weight:700;color:var(--ink)}
.ledger tr.out{border-top:2px solid var(--ink)}
.ledger tr.tailrow th,.ledger tr.tailrow td{color:var(--copper);font-weight:600}
.ledger tr.zero{border-bottom:0}
.ledger tr.zero td{color:var(--copper);font-weight:700;font-size:18px}
.ledger p{margin:0;font-size:14px;color:var(--muted)}
.plan{margin-top:20px;display:grid;grid-template-columns:minmax(0,280px) minmax(0,1fr);gap:20px 40px;border:1px solid var(--deep-copper);border-radius:10px;padding:24px 26px}
@media (max-width:860px){.plan{grid-template-columns:minmax(0,1fr)}}
.plan h3{font-size:24px;font-weight:700;font-stretch:112%;line-height:1.15;margin-top:8px}
.plan ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;color:var(--deep-ink);font-size:15.5px}
@media (max-width:600px){.plan ul{grid-template-columns:minmax(0,1fr)}}
.plan li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:8px}
.plan li::before{content:"";width:6px;height:6px;margin-top:9px;background:var(--deep-copper);border-radius:1px}
.compare{width:100%;min-width:760px;border-collapse:collapse;font-size:15px}
.compare thead th{font:500 11.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;padding:14px 16px;border-bottom:2px solid var(--ink)}
.compare tbody th{text-align:left;font:700 16px/1.25 var(--display);font-stretch:112%;padding:16px;vertical-align:top;width:24%}
.compare tbody th span{display:block;font:400 13px/1.4 var(--body);color:var(--muted);margin-top:4px}
.compare td{padding:16px;vertical-align:top;color:var(--ink)}
.compare tbody tr+tr{border-top:1px solid var(--line)}
.compare .m{display:inline-block;width:34px;height:6px;border-radius:3px;margin:0 8px 2px 0;vertical-align:middle;background:linear-gradient(90deg,var(--copper) var(--f),var(--line) var(--f))}
.m1{--f:25%}.m2{--f:50%}.m3{--f:70%}.m4{--f:100%}
.promise{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:2px solid var(--ink)}
@media (max-width:860px){.promise{grid-template-columns:minmax(0,1fr)}}
.promise li{display:grid;gap:6px;align-content:start;padding:18px 24px 4px 0}
.promise li+li{padding-left:24px;border-left:1px solid var(--line)}
@media (max-width:860px){.promise li+li{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.promise b{font:700 19px/1.2 var(--display);font-stretch:112%}
.promise b::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--copper);margin:0 10px 2px 0;vertical-align:middle}
.promise span{color:var(--muted);font-size:15.5px}
.svc-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.feature{border-color:var(--copper);grid-column:span 3;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px 28px;align-items:center}
.feat-txt{display:grid;gap:12px;align-content:start}
@media (max-width:1050px){.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.feature{grid-column:1/-1}.svc-grid > .card:last-child{grid-column:1/-1}}
@media (max-width:640px){.svc-grid{grid-template-columns:minmax(0,1fr)}.feature{grid-template-columns:minmax(0,1fr)}}
.tail-open{display:grid;gap:10px;margin-top:4px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:600 15px var(--body);text-align:left;cursor:pointer}
.tail-open:hover{border-color:var(--copper)}
.tail-open > span{display:flex;align-items:center;gap:8px;color:var(--copper)}
.tail-open svg:not(.dist){width:16px;height:16px}
.dist-mini{width:100%;height:auto}
.modal{width:min(1120px,calc(100% - 32px));max-height:calc(100% - 48px);padding:0;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink)}
.modal::backdrop{background:rgba(4,24,42,.72)}
.modal-in{padding:clamp(20px,4vw,44px);display:grid;gap:0}
.modal-x{justify-self:end;font:600 14px var(--body);border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:999px;padding:7px 16px;cursor:pointer;margin-bottom:8px}
.proto{display:grid;gap:20px}
.proto-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;counter-reset:p}
@media (max-width:860px){.proto-steps{grid-template-columns:minmax(0,1fr)}}
.proto-steps li{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:22px 24px;display:grid;gap:10px;align-content:start}
.proto-steps li:not(:last-child)::after{content:"";position:absolute;top:50%;right:-15px;width:10px;height:10px;border-top:2px solid var(--copper);border-right:2px solid var(--copper);transform:translateY(-50%) rotate(45deg)}
@media (max-width:860px){.proto-steps li:not(:last-child)::after{display:none}}
.proto-steps h3{font-size:21px;font-weight:700;font-stretch:112%;line-height:1.15}
.proto-steps p{margin:0;color:var(--muted);font-size:15.5px}
.proto-steps .label{font-size:11px}
.nodata{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:18px 24px;border-radius:10px;background:var(--tint);border-left:4px solid var(--copper)}
.nodata b{font:700 19px var(--display);font-stretch:112%}
.nodata span{color:var(--muted)}
.hero .aud{font-size:13px}
.tail-banner{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px 32px;align-items:center;background:var(--surface);border:1px solid var(--copper);border-radius:10px;padding:24px}
@media (max-width:760px){.tail-banner{grid-template-columns:minmax(0,1fr)}}
.tail-banner h3{font-size:23px;font-weight:700;font-stretch:112%;line-height:1.15}
.tail-banner p{margin:0;color:var(--muted)}
.tail-banner p b{color:var(--ink)}
.offer-cards{display:grid;gap:12px}
.offer-cards .card{padding:16px 20px;gap:8px}
.offer-cards .card p.offer-note{font-size:14px}
#services .tail-banner{align-items:start}
.flow{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:var(--tint);border-radius:10px;counter-reset:f}
@media (max-width:860px){.flow{grid-template-columns:minmax(0,1fr)}}
.flow li{counter-increment:f;padding:18px 20px;display:grid;gap:4px;position:relative}
.flow li+li{border-left:1px solid var(--line)}
@media (max-width:860px){.flow li+li{border-left:0;border-top:1px solid var(--line)}}
.flow b{font:700 17px var(--display);font-stretch:112%}
.flow b::before{content:counter(f) " · ";color:var(--copper);font:500 13px var(--mono)}
.flow span{font-size:14.5px;color:var(--muted)}
.qcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:860px){.qcards{grid-template-columns:minmax(0,1fr)}}
.qcard{background:rgba(255,255,255,.03);border:1px solid var(--deep-line);border-radius:10px;padding:26px;display:grid;gap:14px;align-content:start}
.qcard h3{font-size:clamp(22px,2.2vw,28px);font-weight:700;font-stretch:112%;line-height:1.15}
.qcard p{margin:0;color:var(--deep-muted)}
.qcard ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;color:var(--deep-ink);font-size:15px}
.qcard li{display:grid;grid-template-columns:14px minmax(0,1fr);gap:8px}
.qcard li::before{content:"";width:6px;height:6px;margin-top:9px;background:var(--deep-copper);border-radius:1px}
.qcard .btn{justify-self:start}
.about .lede{font-size:21px;line-height:1.5}
.about-top{align-items:start}
.about-top p{margin:0;color:var(--muted)}
.about-top .lede{color:var(--ink)}
:root{--s1:#7fa7c9;--s2:#d9957a;--s3:#93bfa3;--s4:#e3c472;--s5:#d7a1b0;--s6:#a9a3c9;--s7:#d4b48c;--s8:#86b9bf;--s9:#bf9fc2;--on-fill:#0b1a26}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--s1:#6b95ba;--s2:#c98268;--s3:#7fae90;--s4:#d0b15e;--s5:#c58b9c;--s6:#948dba;--s7:#c2a078;--s8:#72a6ac;--s9:#a98bad}}
:root[data-theme="dark"]{--s1:#6b95ba;--s2:#c98268;--s3:#7fae90;--s4:#d0b15e;--s5:#c58b9c;--s6:#948dba;--s7:#c2a078;--s8:#72a6ac;--s9:#a98bad}
.focus{margin:40px 0 0;display:grid;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px 24px;box-shadow:0 2px 12px rgba(4,24,42,.05)}
@media (max-width:640px){.focus{padding:16px}}
.focus figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.f-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:14px;color:var(--ink)}
.f-legend li{display:flex;align-items:center;gap:8px}
.f-legend i{width:12px;height:12px;border-radius:3px;display:inline-block}
.f-plot{position:relative;overflow-x:auto}
.f-plot svg{display:block;width:100%;min-width:640px;height:auto}
.f-area{stroke:var(--surface);stroke-width:2;stroke-linejoin:round}
.f-axis{stroke:var(--line);stroke-width:1}
.f-grid{stroke:var(--line);stroke-width:1;stroke-dasharray:2 4}
.f-txt{font:500 12px var(--mono);fill:var(--muted)}
.f-era{font:600 13px var(--body);fill:var(--ink)}
.f-lbl{font:600 13px var(--body);fill:var(--on-fill);pointer-events:none}
.f-cross{stroke:var(--ink);stroke-width:1.5}
.f-tip{position:absolute;top:8px;min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px 12px;font-size:13px;box-shadow:0 6px 20px rgba(4,24,42,.18);pointer-events:none}
.f-tip b{display:block;font:700 14px var(--display);margin-bottom:6px}
.f-tip div{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:8px;align-items:center;padding:2px 0}
.f-tip i{width:10px;height:10px;border-radius:2px}
.f-tip span:last-child{font-variant-numeric:tabular-nums;color:var(--muted)}
/* v4: six services, four promises */
.svc-card q{quotes:none;font:600 17px/1.35 var(--display);font-stretch:112%;color:var(--copper)}
.svc-card q::before{content:"\201C"}.svc-card q::after{content:"\201D"}
.svc-card h3{font-size:19px;line-height:1.25;font-weight:700;font-stretch:112%}
.promise4{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:44px}
@media (max-width:1000px){.promise4{grid-template-columns:repeat(2,minmax(0,1fr))}.promise4 li:nth-child(2n){padding-left:24px;border-left:1px solid var(--line)}.promise4 li:nth-child(2){border-top:0}.promise4 li:nth-child(3){padding-left:0;border-left:0}.promise4 li:nth-child(n+3){border-top:1px solid var(--line)}}
@media (max-width:600px){.promise4{grid-template-columns:minmax(0,1fr)}.promise4 li:nth-child(n+2){padding-left:0;border-left:0;border-top:1px solid var(--line)}}
.tail-sig{margin-top:0}
.reach .co{padding-top:12px;border-top:1px solid var(--deep-line);font-size:12.5px;line-height:1.5}
.reach .cap-dl{justify-self:start;color:#1a0d05;font-size:14px}
.naics{list-style:none;margin:0;padding:0;display:grid;gap:3px;font-size:12.5px;line-height:1.4}
.naics b{font:500 12.5px var(--mono);color:var(--deep-copper);margin-right:8px}
.contact .reply{color:var(--deep-ink);font-weight:600}
/* v5: registration strip, contracting */
.reg{background:var(--tint);border-bottom:1px solid var(--line)}
.reg ul{list-style:none;margin:0 auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 28px;padding-block:12px;font:500 13.5px var(--mono);color:var(--ink)}
.reg span{color:var(--copper);margin-right:6px}
@media (max-width:700px){.reg ul{justify-content:flex-start;gap:6px 20px}}
.ct-block{margin-top:52px}
.head + .ct-block{margin-top:0}
.ct-block > h3{display:flex;align-items:baseline;gap:12px;font-size:22px;font-weight:700;font-stretch:112%;padding-bottom:12px;border-bottom:2px solid var(--ink);margin-bottom:18px}
.ct-block > h3 span{font:500 13px var(--mono);color:var(--copper)}
.ct-lede{margin:0 0 16px;color:var(--muted);max-width:66ch}
.routes{list-style:none;margin:0;padding:0}
.routes li{display:grid;grid-template-columns:minmax(0,1.1fr) 150px minmax(0,1.6fr);gap:6px 24px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--line)}
@media (max-width:760px){.routes li{grid-template-columns:minmax(0,1fr) auto}.routes li span{grid-column:1/-1}}
.routes b{font:700 16px/1.3 var(--display);font-stretch:112%}
.routes span{color:var(--muted);font-size:15px}
.st{justify-self:start;font:500 11px/1 var(--mono);font-style:normal;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:5px 10px;white-space:nowrap}
.st-on{background:var(--copper);color:var(--paper)}
.st-wait{border:1px solid var(--copper);color:var(--copper)}
.st-off{border:1px solid var(--line);color:var(--muted)}
.turn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:0 28px}
.turn li{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px dashed var(--line)}
.turn b{font-weight:600}
.turn b a{color:var(--sea)}
.turn span{font:500 13px var(--mono);color:var(--copper);white-space:nowrap}
.ct-two{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:0 48px}
@media (max-width:860px){.ct-two{grid-template-columns:minmax(0,1fr)}}
.ct-two .turn{grid-template-columns:minmax(0,1fr)}
.need{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.need li{color:var(--muted);font-size:15.5px}
.need b{color:var(--ink)}
.card a.more{font-weight:600;font-size:15px;color:var(--sea);text-decoration:none}
#contracting .flow{margin-top:0}
.codes-h{margin:28px 0 10px;font:700 16px var(--display);font-stretch:112%}
.codes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:6px 28px;font-size:14.5px;color:var(--muted)}
.codes b{font:500 13px var(--mono);color:var(--copper);margin-right:8px}
/* v6: core and supporting services, priorities, primes Q&A, contracting teaser and page */
section.block.compact{padding-block:clamp(48px,6vw,76px)}
.tier-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--ink)}
.tier-h h3{font-size:22px;font-weight:700;font-stretch:112%}
.tier-h p{margin:0;color:var(--muted);font-size:15px}
.core-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:860px){.core-grid{grid-template-columns:minmax(0,1fr)}}
.core-card{border-top:3px solid var(--copper);padding:28px 30px;gap:14px}
@media (max-width:480px){.core-card{padding:22px 20px}}
.core-card q{font-size:clamp(18px,1.8vw,21px)}
.core-card h3{font-size:clamp(21px,2vw,25px);line-height:1.15}
.plo{margin:0;display:grid;gap:10px;border-top:1px dashed var(--line);padding-top:14px}
.plo div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:2px 14px}
.plo dt{font:500 11.5px/1.95 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--copper)}
.plo dd{margin:0;font-size:15.5px;color:var(--ink)}
@media (max-width:480px){.plo div{grid-template-columns:minmax(0,1fr)}}
.support{margin-top:clamp(48px,6vw,72px)}
.sup-card{background:transparent;padding:18px 20px;gap:10px}
.sup-card q{font-size:15px}
.sup-card h3{font-size:16.5px}
.sup-card .plo{gap:8px;padding-top:10px}
.sup-card .plo div{grid-template-columns:minmax(0,1fr);gap:0}
.sup-card .plo dt{font-size:10.5px}
.sup-card .plo dd{font-size:14px;color:var(--muted)}
.now-list{margin-bottom:0}
.now-list a,.head p a{color:var(--sea);font-weight:600;text-decoration:none}
.qa{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin:0}
@media (max-width:860px){.qa{grid-template-columns:minmax(0,1fr)}}
.qa div{display:grid;gap:6px;align-content:start;padding:18px 0 20px;border-top:1px solid var(--line)}
.qa div:nth-child(-n+2){border-top:2px solid var(--ink)}
@media (max-width:860px){.qa div:nth-child(2){border-top:1px solid var(--line)}}
.qa dt{font:700 18px/1.25 var(--display);font-stretch:112%}
.qa dd{margin:0;color:var(--muted);font-size:15.5px;max-width:60ch}
.ct-teaser{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 32px;border-top:2px solid var(--ink);padding-top:22px}
.ct-teaser > div{display:grid;gap:10px;max-width:68ch}
.ct-teaser p{margin:0;font-size:18px;line-height:1.5}
.ct-teaser a.more{color:var(--sea);font-weight:600;text-decoration:none;white-space:nowrap}
.btn-line{border-color:var(--line);color:var(--ink);background:var(--surface)}
.btn-line:hover{border-color:var(--copper)}
.sub main{padding-top:68px}
.links a[aria-current]{color:var(--deep-ink)}
