:root{
--paper:#EEF2F0;
--paper-2:#E3E9E6;
--card:#F8FAF9;
--ink:#0F1F1C;
--ink-2:#3C4D49;
--muted:#6A7A76;
--line:#CBD5D1;
--accent:#146C5A;
--accent-ink:#F4FBF8;
--band:#0D2420;
--band-2:#143430;
--band-fg:#E7F0EC;
--band-muted:#9DB5AE;
--pass:#2E9E7B; --watch:#D9A23B; --fail:#C8553D;
--display:"Newsreader", "Iowan Old Style", Georgia, serif;
--body:"Public Sans", "Segoe UI", system-ui, -apple-system, sans-serif;
--mono:"IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;
--maxw:1160px;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
--paper:#0B1715; --paper-2:#102120; --card:#122624; --ink:#E6EFEB; --ink-2:#B9C9C4; --muted:#8AA09A; --line:#23403B;
--accent:#5CC4A4; --accent-ink:#06201A; --band:#071210; --band-2:#0E1F1C; --band-fg:#E6EFEB; --band-muted:#8FAAA2; color-scheme:dark}}
:root[data-theme="dark"]{
--paper:#0B1715; --paper-2:#102120; --card:#122624; --ink:#E6EFEB; --ink-2:#B9C9C4; --muted:#8AA09A; --line:#23403B;
--accent:#5CC4A4; --accent-ink:#06201A; --band:#071210; --band-2:#0E1F1C; --band-fg:#E6EFEB; --band-muted:#8FAAA2; color-scheme:dark}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--paper)}
a{color:inherit}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:max(24px,env(safe-area-inset-left,0px));padding-right:max(24px,env(safe-area-inset-right,0px))}
@media (max-width:520px){.wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}}
h1,h2,h3{font-family:var(--display);font-weight:500;text-wrap:balance;margin:0;letter-spacing:-0.01em}
p{margin:0}
.eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:10px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--pass);flex:none;display:inline-block}
.dot.watch{background:var(--watch)} .dot.fail{background:var(--fail)}
.btn{display:inline-flex;align-items:center;gap:8px;font:600 15px/1 var(--body);padding:14px 22px;border-radius:999px;text-decoration:none;border:1.5px solid var(--accent);transition:transform .15s ease, background .15s ease}
.btn.primary{background:var(--accent);color:var(--accent-ink)}
.btn.ghost{color:var(--ink);border-color:var(--line)}
.btn:hover{transform:translateY(-1px)}
.btn:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
section{padding-block:96px}
@media (max-width:720px){section{padding-block:64px}}
.sec-head{display:grid;gap:14px;margin-bottom:48px;max-width:720px}
.sec-head h2{font-size:clamp(32px,4.4vw,48px);line-height:1.08}
.sec-head p{color:var(--ink-2);font-size:18px}
header.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:color-mix(in srgb,var(--paper) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;height:68px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:var(--display);font-size:21px;font-weight:600}
.mono-mark{width:34px;height:34px;border-radius:8px;background:var(--ink);color:var(--paper);display:grid;place-items:center;font:500 13px var(--mono);letter-spacing:.04em}
.nav ul{display:flex;gap:28px;list-style:none;margin:0;padding:0;font-size:15px;font-weight:500}
.nav ul a{text-decoration:none;color:var(--ink-2)}
.nav ul a:hover{color:var(--ink)}
.nav .btn{padding:11px 18px;font-size:14px}
@media (max-width:860px){.nav ul{display:none}}
.hero{padding-block:72px 88px}
.hero .wrap{display:grid;grid-template-columns:1.25fr .85fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(44px,6.4vw,82px);line-height:1.0;margin:22px 0 26px}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero .lede{font-size:19px;color:var(--ink-2);max-width:56ch}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}
.chip{font:500 12.5px var(--mono);letter-spacing:.06em;padding:7px 11px;border:1px solid var(--line);border-radius:6px;color:var(--ink-2);background:var(--card)}
.chip.prog{border-style:dashed}
.portrait{position:relative;max-width:420px;justify-self:end;width:100%}
.portrait .frame{aspect-ratio:4/5;max-width:100%;border-radius:18px;background:
radial-gradient(120% 90% at 30% 20%, var(--band-2), var(--band));display:grid;place-items:center;overflow:hidden;position:relative;box-shadow:0 30px 60px -30px rgba(10,30,25,.45)}
.portrait .frame img{width:100%;height:100%;object-fit:cover;object-position:50% 35%;display:block}
.signal{position:absolute;left:-28px;bottom:-26px;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:grid;gap:8px;min-width:220px;box-shadow:0 18px 40px -24px rgba(10,30,25,.4)}
.signal .row{display:flex;align-items:center;gap:10px;font:500 12.5px var(--mono);color:var(--ink-2)}
.signal .row b{margin-left:auto;color:var(--ink);font-weight:500}
.signal .title{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px}
.pulse{animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--pass) 60%,transparent)}50%{box-shadow:0 0 0 6px transparent}}
@media (max-width:900px){
.hero .wrap{grid-template-columns:1fr;gap:48px}
.portrait{justify-self:start;max-width:360px}
.signal{left:auto;right:-8px}
}
@media (max-width:420px){.signal{right:8px;min-width:0;left:8px}}
.band{background:var(--band);color:var(--band-fg)}
.band .eyebrow{color:var(--band-muted)}
.stats{padding-block:64px}
.stats .grid{display:grid;grid-template-columns:repeat(6,1fr);gap:0}
.stat{padding:8px 22px;border-left:1px solid var(--band-2);display:grid;gap:8px;align-content:start}
.stat:first-child{border-left:0;padding-left:0}
.stat .n{white-space:nowrap;font-family:var(--display);font-size:clamp(30px,3.2vw,44px);line-height:1;font-variant-numeric:tabular-nums}
.stat .l{font-size:14px;color:var(--band-muted);line-height:1.45}
@media (max-width:960px){.stats .grid{grid-template-columns:repeat(3,1fr);row-gap:36px}.stat:nth-child(4){border-left:0;padding-left:0}}
@media (max-width:560px){.stats .grid{grid-template-columns:repeat(2,1fr)}.stat:nth-child(odd){border-left:0;padding-left:0}.stat:nth-child(4){border-left:1px solid var(--band-2);padding-left:22px}}
.who .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.who-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:30px;display:grid;gap:14px;align-content:start}
.who-card .k{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.who-card h3{font-size:26px;line-height:1.15}
.who-card p{color:var(--ink-2);font-size:16px}
.who-card ul{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:8px;font-size:15px}
.who-card li{display:flex;gap:10px;align-items:baseline}
.who-card li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);flex:none;transform:translateY(-2px)}
@media (max-width:900px){.who .grid{grid-template-columns:1fr}}
.story{background:var(--paper-2)}
.story .wrap{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}
.story h2{font-size:clamp(36px,5vw,60px);line-height:1.04;margin-top:14px}
.story h2 em{color:var(--accent)}
.story .body{display:grid;gap:18px;font-size:18px;color:var(--ink-2)}
.story .body strong{color:var(--ink);font-weight:600}
.story blockquote{margin:10px 0 0;padding:0 0 0 20px;border-left:2px solid var(--accent);font-family:var(--display);font-style:italic;font-size:24px;line-height:1.3;color:var(--ink)}
@media (max-width:900px){.story .wrap{grid-template-columns:1fr;gap:28px}}
.cases .list{display:grid;gap:22px}
.case{display:grid;grid-template-columns:280px 1fr;gap:40px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:36px}
.case .meta{display:grid;gap:12px;align-content:start}
.case .meta .org{font:500 12.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.case h3{font-size:30px;line-height:1.12}
.case .result{font-family:var(--display);font-size:44px;line-height:1;color:var(--accent);margin-top:8px}
.case .result small{display:block;font:500 13px var(--body);color:var(--muted);margin-top:8px;line-height:1.4}
.ledger{display:grid;gap:0;border-top:1px solid var(--line)}
.ledger .r{display:grid;grid-template-columns:140px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line);min-width:0}
.ledger .r:last-child{border-bottom:0}
.ledger .k{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);display:flex;gap:9px;align-items:center;padding-top:3px}
.ledger .v{color:var(--ink-2);font-size:16px}
.ledger .v strong{color:var(--ink);font-weight:600}
@media (max-width:900px){.case{grid-template-columns:1fr;gap:24px;padding:28px}}
@media (max-width:520px){.ledger .r{grid-template-columns:1fr;gap:6px}.case{padding:22px}}
.agents{padding-block:96px}
.agents .sec-head h2{color:var(--band-fg)}
.agents .sec-head p{color:var(--band-muted)}
.agents .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.agent{background:var(--band-2);border:1px solid color-mix(in srgb,var(--band-fg) 10%,transparent);border-radius:16px;padding:28px;display:grid;gap:14px;align-content:start}
.agent .id{font:500 12px var(--mono);color:var(--band-muted);letter-spacing:.08em;display:flex;gap:9px;align-items:center}
.agent h3{font-size:25px;color:var(--band-fg)}
.agent p{color:var(--band-muted);font-size:15.5px}
.ba{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:6px;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--band-fg) 12%,transparent)}
.ba div{font:500 13px var(--mono);color:var(--band-muted)}
.ba div b{display:block;font:500 22px var(--display);color:var(--band-fg)}
.ba .arrow{color:var(--pass);font-size:18px}
.agents .totals{margin-top:34px;display:flex;flex-wrap:wrap;gap:14px 40px;align-items:baseline;color:var(--band-muted);font-size:15px}
.agents .totals b{font-family:var(--display);font-size:32px;color:var(--band-fg);font-weight:500;margin-right:8px}
@media (max-width:900px){.agents .grid{grid-template-columns:1fr}}
.approach .split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.elements{display:grid;gap:0;border-top:1px solid var(--line)}
.el{display:grid;grid-template-columns:22px 1fr;gap:14px;padding:20px 0;border-bottom:1px solid var(--line)}
.el .dot{margin-top:9px}
.el h3{font:600 18px var(--body);margin-bottom:4px}
.el p{color:var(--ink-2);font-size:16px}
.ai-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:32px;display:grid;gap:18px}
.ai-card h3{font-size:28px;line-height:1.15}
.ai-card > p{color:var(--ink-2);font-size:16px}
.bar{display:flex;height:46px;border-radius:10px;overflow:hidden;font:500 13px var(--mono)}
.bar .itgc{flex:80;background:var(--paper-2);color:var(--ink-2);display:flex;align-items:center;padding:0 14px;border:1px solid var(--line);border-right:0;border-radius:10px 0 0 10px}
.bar .ai{flex:20;background:var(--accent);color:var(--accent-ink);display:flex;align-items:center;justify-content:center}
.legend{display:grid;grid-template-columns:1fr 1fr;gap:18px;font-size:14.5px}
.legend h4{margin:0 0 8px;font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.legend ul{margin:0;padding:0;list-style:none;display:grid;gap:5px;color:var(--ink-2)}
.quotes-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:40px}
.qchip{font-family:var(--display);font-style:italic;font-size:19px;padding:10px 18px;border-radius:999px;border:1px solid var(--line);background:var(--card)}
@media (max-width:900px){.approach .split{grid-template-columns:1fr}}
@media (max-width:420px){.legend{grid-template-columns:1fr}}
.tl{display:grid;gap:0;border-top:1px solid var(--line)}
.tl .row{display:grid;grid-template-columns:150px 1fr 1.4fr;gap:28px;padding:24px 0;border-bottom:1px solid var(--line)}
.tl .when{font:500 13.5px var(--mono);color:var(--muted);font-variant-numeric:tabular-nums;padding-top:4px}
.tl .role h3{font:600 18px var(--body)}
.tl .role .org{color:var(--accent);font-weight:600;font-size:15px;margin-top:2px}
.tl .what{color:var(--ink-2);font-size:15.5px}
@media (max-width:820px){.tl .row{grid-template-columns:1fr;gap:6px}}
.voices .grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.voice{margin:0;padding:36px;border-radius:18px;background:var(--card);border:1px solid var(--line);display:grid;gap:22px;align-content:space-between}
.voice blockquote{margin:0;font-family:var(--display);font-size:22px;line-height:1.4}
.voice blockquote::before{content:"\201C";display:block;font-size:64px;line-height:.6;color:var(--accent);margin-bottom:10px}
.voice figcaption{font-size:14.5px;color:var(--muted)}
.voice figcaption b{display:block;color:var(--ink);font-weight:600;font-size:15px}
@media (max-width:900px){.voices .grid{grid-template-columns:1fr}.voice{padding:26px}}
.speak .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.speak h2{font-size:clamp(36px,5vw,58px);line-height:1.04;color:var(--band-fg);margin:14px 0 18px}
.speak p{color:var(--band-muted);font-size:18px}
.topics{display:grid;gap:12px}
.topic{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:start;padding:20px 22px;border-radius:14px;background:var(--band-2)}
.topic h3{font:600 17px var(--body);color:var(--band-fg)}
.topic p{font-size:15px;margin-top:4px}
.topic .dot{margin-top:7px}
.speak .btn.primary{margin-top:28px}
@media (max-width:900px){.speak .wrap{grid-template-columns:1fr;gap:32px}}
.mentor .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.mentor h2{font-size:clamp(32px,4.4vw,48px);line-height:1.08;margin-top:14px}
.qualities{display:grid;gap:14px}
.q{padding:22px 24px;border-radius:14px;border:1px solid var(--line);background:var(--card)}
.q h3{font-size:24px;margin-bottom:6px}
.q p{color:var(--ink-2);font-size:15.5px}
.mentor .body{display:grid;gap:16px;color:var(--ink-2);font-size:17px;margin-top:20px}
@media (max-width:900px){.mentor .wrap{grid-template-columns:1fr;gap:32px}}
.contact{padding-block:96px}
.contact .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:end}
.contact h2{font-size:clamp(40px,6vw,72px);line-height:1;color:var(--band-fg);margin-top:14px}
.contact h2 em{color:var(--pass);font-style:italic}
.contact .box{display:grid;gap:14px}
.mail{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--band-2);border-radius:12px;padding:16px 18px}
.mail code{font:500 16px var(--mono);color:var(--band-fg);user-select:all;overflow-wrap:anywhere;min-width:0;flex:1}
.mail button{font:600 13px var(--body);background:var(--band-fg);color:var(--band);border:0;border-radius:999px;padding:9px 16px;cursor:pointer}
.links{display:flex;flex-wrap:wrap;gap:10px}
.links a{color:var(--band-fg);text-decoration:none;font-size:15px;padding:10px 16px;border:1px solid color-mix(in srgb,var(--band-fg) 22%,transparent);border-radius:999px}
.links a:hover{border-color:var(--band-fg)}
.contact .fine{color:var(--band-muted);font-size:14px}
footer{background:var(--band);color:var(--band-muted);border-top:1px solid var(--band-2)}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;padding-block:26px;font-size:13.5px}
@media (max-width:900px){.contact .wrap{grid-template-columns:1fr;gap:32px}}
.rise{animation:rise .7s cubic-bezier(.2,.7,.2,1) both}
.rise.d1{animation-delay:.08s}.rise.d2{animation-delay:.16s}.rise.d3{animation-delay:.24s}
@keyframes rise{from{transform:translateY(14px)}to{transform:none}}
.posts{display:grid;gap:20px}
.post{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:28px 30px;display:grid;gap:12px}
.post time{font:500 12.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.post h3{font-size:26px;line-height:1.2}
.post .txt{display:grid;gap:12px;color:var(--ink-2);font-size:16.5px}
.post .src{border-top:1px solid var(--line);padding-top:12px;font-size:14px;color:var(--muted)}
.post .src b{font:500 12px var(--mono);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:6px}
.post .src ul{margin:0;padding:0;list-style:none;display:grid;gap:4px}
.post .src a{color:var(--accent);overflow-wrap:anywhere}
.blog .more{margin-top:28px}
.loading{color:var(--muted)}
