:root{--bg:#f0f1ed;--bg2:#e8ebe5;--surface:#fafbf8;--chip:#e7ebe3;--line:#d5dcd0;--line2:#bac6b4;--ink:#202e25;--muted:#627164;--accent:#426d35;--accent2:#426d35;--accent-soft:#e0e9d9;--blue:#527e40;--orange:#ad5729;--aqua:#28786c;--red:#bd3f3f;--grey:#7d887a;--sans:'Avenir Next',system-ui,sans-serif;--mono:ui-monospace,SFMono-Regular,Menlo,monospace;color-scheme:light}
.wrap{max-width:1320px;padding:0 40px}
.nav{background:rgba(240,241,237,.94);backdrop-filter:blur(12px)}.nav .wrap{height:78px}.brand{font-size:17px}.brand i{background:var(--accent);border-radius:3px;width:18px;height:18px}.links a{font-size:13px;padding:10px 16px}.cta{border-radius:7px;font-size:12px;padding:10px 16px}
.hero::before,.hero::after{display:none}.hero .wrap{padding-top:78px;padding-bottom:75px;display:grid;grid-template-columns:1.05fr 1fr;gap:0 65px;align-items:start}.hero .label,.hero h1,.hero .lede,.hero .byline,.hero .hero-links{grid-column:1}
.label{font-size:10px;letter-spacing:.12em;color:var(--muted)}.hero h1{font-size:clamp(48px,6vw,79px);line-height:1.02;letter-spacing:-3.8px;font-weight:500;margin:25px 0}.hero h1 em{font-family:Georgia,serif;font-weight:400;font-style:italic;color:var(--accent);background:none;letter-spacing:-3px}.lede{font-size:16px;line-height:1.8;max-width:460px}.byline{font-size:11px;margin:22px 0 0;color:var(--ink)}.byline span{display:block;color:var(--muted);margin-top:5px}.hero-links{gap:10px;margin-top:26px}.btn{border-radius:7px;padding:12px 16px;font-size:12px;min-height:44px}.btn.primary{box-shadow:none}.btn.primary:hover{background:#355b2a}
.hero-model{grid-column:2;grid-row:1 / 6;align-self:center;background:#e1e7d8;border-radius:14px;padding:30px 28px;min-width:0}.model-top{display:flex;justify-content:space-between;gap:20px;font:9px var(--mono);color:var(--muted)}.model-input{display:flex;flex-direction:column;align-items:center;gap:9px;margin:42px 0 26px}.model-input span{font:11px var(--mono);color:var(--muted)}.model-input b{font:32px var(--mono);background:var(--surface);padding:12px 28px;border-radius:8px;font-weight:400}.model-tiles{display:grid;grid-template-columns:repeat(20,1fr);gap:4px;height:80px;align-items:end}.model-tiles span{height:12px;background:#c5d0bc;border-radius:3px}.model-tiles .lit{height:65px;background:var(--accent);animation:tile-arrive 700ms cubic-bezier(.22,1,.36,1) var(--delay) both;transform-origin:bottom}.model-tiles .lit:nth-child(13){height:28px}.model-tiles .lit:nth-child(15){height:32px}.model-axis{display:flex;justify-content:space-between;font:10px var(--mono);color:var(--muted);margin-top:13px}.hero-model h2{font-family:Georgia,serif;font-weight:400;font-size:30px;letter-spacing:-.8px;margin:40px 0 14px}.hero-model p{font-size:13px;line-height:1.8;color:var(--muted);max-width:350px}.hero-model>a{font-size:12px;text-underline-offset:5px}.model-foot{font:9px var(--mono);color:var(--muted);margin-top:32px}
section.block{padding:75px 0;scroll-margin-top:85px}.head{grid-template-columns:180px 1fr;gap:40px;margin-bottom:30px}h2{font-size:38px;font-weight:500;letter-spacing:-1.6px;line-height:1.17}.intro,.prose p{font-size:15px;line-height:1.85}.panel{border-radius:12px;padding:32px;background:var(--surface)}#playground{background:var(--bg2)}.inputs{gap:24px}.inputs label{font-size:11px}.toggle{font-size:12px}.result{font-size:13px;line-height:1.8;background:var(--bg);padding:18px 22px;border-radius:8px;border:0}.card{border-radius:8px;background:var(--bg)}.card.good{background:var(--accent-soft);border-color:var(--line2)}.big{font-weight:500}.grid3{grid-template-columns:1fr;gap:0}.card3{display:grid;grid-template-columns:50px 260px 1fr;gap:25px;border:0;border-top:1px solid var(--line);border-radius:0;padding:28px 0;background:none}.card3 h3{margin:0;font-size:21px;font-weight:500}.card3 .num{padding-top:5px}.card3.hi{background:none;border-color:var(--line)}.card3 p{font-size:14px;line-height:1.8}.chip{border-radius:6px;min-height:44px;font-size:12px}.figwrap{background:#fff;border-radius:8px}.quote{font-family:Georgia,serif;font-weight:400;font-size:38px;max-width:980px;line-height:1.4}.rerun-context{background:var(--bg2);padding:20px;border-radius:8px;margin-bottom:25px;font-size:13px}.rerun-context p{color:var(--muted);line-height:1.8;margin:8px 0}.rerun-context a{font-size:12px}#rerun{scroll-margin-top:100px;margin-top:35px}#rerun>.label{display:block;margin-bottom:18px}.foot{font-size:11px;padding-top:28px;padding-bottom:28px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
@keyframes tile-arrive{from{opacity:0;transform:scaleY(.3)}to{opacity:1;transform:scaleY(1)}}
@media(max-width:950px){.hero .wrap{gap:0 28px}.hero h1{font-size:60px}.wrap{padding-left:24px;padding-right:24px}.head{grid-template-columns:130px 1fr;gap:25px}.card3{grid-template-columns:35px 200px 1fr}.links a{padding:10px}.model-top{flex-direction:column;gap:5px}}
@media(max-width:700px){.nav .wrap{height:auto;min-height:65px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px;gap:10px}.links{order:3;width:100%;justify-content:space-between}.links a{padding:6px;font-size:11px}.cta{font-size:10px}.hero .wrap{display:block;padding-top:45px;padding-bottom:40px}.hero h1{font-size:57px;letter-spacing:-2.8px}.hero-model{margin-top:35px;padding:24px}.model-top{flex-direction:row}.head{display:block}.head .label{display:block;margin-bottom:20px}.card3{grid-template-columns:30px 1fr;gap:12px}.card3 p{grid-column:2}.panel{padding:20px}.inputs{grid-template-columns:1fr 1fr;gap:15px}.inputs label{font-size:10px}.block h2{font-size:30px}.quote{font-size:29px}.wrap{padding-left:20px;padding-right:20px}.hero-links .btn{font-size:11px;padding:11px 13px}section.block{padding:48px 0}.foot{display:block}.foot a{display:block;margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.model-tiles .lit{animation:none}}
:root{--bg:#eff1ef;--bg2:#e7ece9;--surface:#fafcfb;--chip:#e5ebe8;--line:#d8dfdb;--line2:#b9c7bf;--ink:#21332e;--muted:#64746d;--accent:#d74c23;--accent2:#b63b19;--accent-soft:#f6e6df;--blue:#4f7698}
.hero .wrap{grid-template-columns:1fr 1fr;gap:0 60px}.hero h1{font-size:clamp(48px,5.7vw,76px)}.hero h1 em{color:#476e5b}.routing-preview{grid-column:2;grid-row:1 / 6;align-self:center;background:#e0e8e2;border:1px solid #d4ded5;border-radius:18px;padding:30px;min-width:0}.routing-title{display:flex;flex-direction:column;gap:9px}.routing-title>span:last-child{font-size:11px;color:var(--muted)}.job-ticket{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0;padding-bottom:22px;border-bottom:1px solid #c6d3c9}.job-ticket span{font:11px var(--mono);padding:8px 10px;background:#f6f8f4;border-radius:5px}.route-row{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-radius:8px;margin-bottom:6px;font-size:13px}.route-row:first-child{background:#fafff5;box-shadow:0 4px 14px -10px #34523e}.route-row small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.route-row b{font:20px var(--mono);font-weight:400}.route-row:first-child b{color:#3b7152}.routing-preview>p{font:10px var(--mono);color:var(--muted);margin:24px 0 12px}.routing-preview>a{font-size:12px;text-underline-offset:4px}.trace-strip{grid-column:1 / -1;display:flex;justify-content:space-between;gap:24px;margin-top:65px;padding-top:26px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.trace-strip b{display:block;font:26px var(--mono);color:var(--ink);margin-bottom:6px}.trace-strip a{align-self:center;font-size:12px}.site{background:var(--surface);border-radius:10px}.site.best{background:#e7f0e7;border-color:#91af97}.site-cost{font-size:30px;font-weight:500}.tag{font-size:9px;color:#366345}.bar{background:#dce3dd}.sites{gap:12px}.btn.primary:hover{background:#b83d1a}.evidence-note{padding:20px 24px;margin-bottom:26px;background:var(--bg2);border-radius:8px;font-size:14px}.evidence-note p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:0}.links{display:flex}.pair .card{background:var(--surface)}.pair .card.good{background:#e5eee6}.quote em{color:#426d55}
@media(max-width:900px){.hero .wrap{gap:0 25px}.routing-preview{padding:20px}.trace-strip{gap:18px;flex-wrap:wrap}.hero h1{font-size:57px}}
@media(max-width:700px){.hero .wrap{display:block}.routing-preview{margin-top:32px;padding:24px}.trace-strip{margin-top:35px;display:grid;grid-template-columns:1fr 1fr}.trace-strip b{font-size:22px}.links{display:flex}.pair{grid-template-columns:1fr}.sites{grid-template-columns:1fr}.hero h1{font-size:56px}}
.policy-controls{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.policy-controls label{font-size:11px}.availability{display:flex;flex-wrap:wrap;gap:18px;border:1px solid var(--line);padding:18px;border-radius:8px;margin-bottom:24px}.availability legend{font-size:11px;color:var(--muted);padding:0 8px}.availability label{display:flex;align-items:center;gap:8px;font-size:11px;text-transform:none}.availability input{accent-color:var(--accent);width:18px;height:18px}.unavailable{background:#eee;color:var(--muted)}.unavailable .site-cost{text-decoration:line-through}.table-scroll{overflow:auto;margin-top:20px}.demo-table{width:100%;border-collapse:collapse;font-size:13px;white-space:nowrap}.demo-table td,.demo-table th{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.demo-table thead{font-size:10px;color:var(--muted);text-transform:uppercase}.demo-table tbody th{font-weight:500}#demoStatus{font:11px var(--mono);color:var(--muted);margin:24px 0}#demoAccounting{font-size:13px;line-height:1.9;margin-top:24px}.model-doc{padding:35px 0 0}.model-doc h3{font-size:26px;font-weight:500;letter-spacing:-.8px}.model-doc details{padding:20px 0;border-top:1px solid var(--line)}.model-doc summary{cursor:pointer;font-size:16px;min-height:30px}.model-doc details p{font-size:14px;color:var(--muted);line-height:1.9;max-width:800px;margin:18px 0 0}#rerun h3{font-size:28px;letter-spacing:-1px;font-weight:500;margin-bottom:16px}.route-row small{max-width:270px}.routing-preview{align-self:start;margin-top:25px}
@media(max-width:700px){.policy-controls{grid-template-columns:1fr}.availability{gap:14px}.demo-table td,.demo-table th{padding:12px 8px}.routing-preview{margin-top:30px}}
