:root{--ink:#132036;--navy:#294a73;--gold:#c29236;--paper:#f6f4ef;--card:#fffefa;--line:#d8d2c7;--muted:#647184;--current:#205d47;--blocked:#9b3d31;--needs:#805713;--planned:#315d89}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 Inter,ui-sans-serif,system-ui,sans-serif}.roadmap-shell{max-width:1260px;margin:auto;padding:24px 32px 80px}.roadmap-utility{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 0 14px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.85rem}.roadmap-utility b{margin:0 6px;color:var(--gold)}.roadmap-utility a{color:var(--navy);font-weight:750;text-decoration:none}.roadmap-utility a:hover{text-decoration:underline}.project-tabs{display:flex;gap:9px;overflow:auto;padding:22px 0}.project-tab{white-space:nowrap;padding:10px 14px;border:1px solid var(--ink);border-radius:999px;background:transparent;color:var(--ink);font:inherit;font-weight:750;cursor:pointer}.project-tab.active{background:var(--ink);color:var(--card)}.roadmap-project{display:grid;grid-template-columns:300px minmax(0,1fr);gap:34px;padding-top:10px}.roadmap-summary{position:sticky;top:20px;align-self:start;padding:26px;border:1px solid var(--ink);background:var(--ink);color:var(--card)}.roadmap-summary h2{margin:8px 0 14px;font-family:Georgia,serif;font-size:2rem;line-height:1}.roadmap-summary p{margin:0;color:#dce7f4}.current-callout{margin-top:24px;padding:15px;border-left:4px solid var(--gold);background:rgba(255,255,255,.1)}.current-callout strong{display:block;color:#fff}.roadmap-timeline{display:grid;gap:0}.roadmap-executive{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 26px}.roadmap-executive article{display:grid;gap:7px;min-height:150px;padding:18px;border:1px solid var(--line);background:#f1f4f7}.roadmap-executive article span,.roadmap-executive article small{color:var(--muted);font-size:.78rem}.roadmap-executive article strong{font-size:1.02rem;line-height:1.22}.roadmap-executive article.blocked{border-color:var(--blocked);background:#fff1ee}.roadmap-decisions{margin:0 0 26px;padding:20px;border:1px solid #d9b15c;background:#fff8e7}.roadmap-decisions h3{margin:0;font-family:Georgia,serif;font-size:1.55rem}.roadmap-decisions>p{margin:.35rem 0 15px;color:#69521e}.roadmap-decisions>div{display:grid;gap:10px}.roadmap-decisions article{padding:13px;border-left:4px solid var(--needs);background:rgba(255,255,255,.55)}.roadmap-decisions article p{margin:.35rem 0 0;color:var(--muted)}.roadmap-step{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px;padding:0 0 28px}.roadmap-step:not(:last-child):before{position:absolute;left:34px;top:54px;bottom:-2px;width:2px;background:var(--line);content:""}.step-marker{z-index:1;display:grid;place-items:center;width:68px;height:68px;border:2px solid var(--ink);border-radius:50%;background:var(--paper);color:var(--ink);font-family:Georgia,serif;font-size:1.25rem;font-weight:800}.roadmap-step.current .step-marker{border-color:var(--current);background:var(--current);color:#fff}.roadmap-step.blocked .step-marker{border-color:var(--blocked);background:var(--blocked);color:#fff}.roadmap-step.needs-jon .step-marker{border-color:var(--needs);background:var(--needs);color:#fff}.step-card{padding:22px;border:1px solid var(--line);background:var(--card)}.step-card header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.step-card h3{margin:0;font-size:1.22rem;line-height:1.2}.step-card p{margin:12px 0 0;color:var(--muted)}.state{display:inline-block;padding:4px 8px;border-radius:99px;background:#e5e9ee;color:var(--planned);font-size:.74rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.state.current{background:#d9eee5;color:var(--current)}.state.blocked{background:#f6ded9;color:var(--blocked)}.state.needs-jon{background:#f6e7bc;color:var(--needs)}.state.next{background:#f5e6bd;color:#73500b}.state.later{background:#edf0f3;color:#687587}.roadmap-step.next .step-marker{border-color:var(--gold);color:#73500b}.roadmap-step.later .step-marker{border-color:#9ea8b4;color:#687587}.source-note{margin:26px 0 0;color:var(--muted);font-size:.82rem}.roadmap-tasks{margin:18px 0 0;padding:16px 18px;border-left:4px solid var(--gold);background:#fbf4e3}.roadmap-tasks h4{margin:0 0 10px;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.roadmap-tasks ul{display:grid;gap:9px;margin:0;padding-left:20px}.roadmap-tasks li::marker{color:var(--gold)}@media(max-width:800px){.roadmap-shell{padding:18px}.roadmap-project{grid-template-columns:1fr}.roadmap-summary{position:static}.roadmap-executive{grid-template-columns:1fr}.roadmap-step{grid-template-columns:52px minmax(0,1fr);gap:12px}.step-marker{width:50px;height:50px;font-size:1rem}.roadmap-step:not(:last-child):before{left:24px;top:45px}.step-card{padding:17px}.step-card header{display:grid}}
