/* Technical editorial article - extends existing portfolio colors and responsive typography. */
.engineering-hero{padding-top:52px}.engineering-hero h1{font-size:clamp(38px,5vw,68px);max-width:1050px}.engineering-byline{font-size:13px;color:var(--muted);margin:24px 0 10px}.engineering-byline a{color:var(--fg)}.engineering-disclosure{font-size:12px;color:#b6bbad;max-width:840px;line-height:1.6}
.engineering-article{display:grid;grid-template-columns:minmax(180px,230px) minmax(0,1fr);gap:55px;padding-top:60px;padding-bottom:76px;align-items:start}.engineering-toc{position:sticky;top:22px;font-size:13px;border:1px solid var(--line);border-radius:14px;padding:23px;background:var(--panel)}.engineering-toc strong{display:block;margin-bottom:11px;font-family:'Space Grotesk',sans-serif}.engineering-toc ol{margin:0;padding-left:19px}.engineering-toc li{padding:6px 0}.engineering-toc a{text-decoration:none;color:#cad0c0}.engineering-toc a:hover{color:var(--lime)}.engineering-copy{max-width:800px;min-width:0}.engineering-copy section{padding:0 0 46px;margin-bottom:48px;border-bottom:1px solid var(--line);scroll-margin-top:30px}.engineering-copy section:last-child{border:0;margin-bottom:0;padding-bottom:0}.engineering-copy h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(29px,3vw,39px);line-height:1.25;letter-spacing:-1px;margin:0 0 22px}.engineering-copy h3{font-family:'Space Grotesk',sans-serif;font-size:22px;margin:31px 0 10px}.engineering-copy p{color:#d2d6ca;font-size:16px;line-height:1.9}.engineering-copy a{color:var(--lime);text-decoration:underline;text-underline-offset:3px}.engineering-copy code:not(pre code){font-size:.9em;background:#25291f;padding:2px 5px;border-radius:4px;color:#e6f3cf}
.engineering-flow{list-style:none;margin:32px 0;padding:0;display:grid;gap:12px;counter-reset:step}.engineering-flow li{border:1px solid var(--line);background:var(--panel);border-radius:12px;padding:14px 20px;counter-increment:step}.engineering-flow li::before{content:counter(step,decimal-leading-zero);color:var(--lime);font-size:12px;margin-right:12px}.engineering-flow strong{font-weight:700}.engineering-flow span{display:block;color:var(--muted);margin-left:33px;font-size:14px}
.engineering-code{background:#181d17;border:1px solid #424e37;border-radius:13px;padding:20px;overflow-x:auto;white-space:pre;font:13px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;color:#e0f6ca}.engineering-note{font-size:13px!important;color:#aab4a2!important;border-left:2px solid var(--lime);padding-left:14px}
.engineering-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:28px 0}.engineering-panel{background:var(--panel);border:1px solid var(--line);border-radius:13px;padding:19px}.engineering-panel h3{font-size:18px;margin:0 0 12px}.engineering-panel ul{padding-left:21px;margin:0;color:#c6cebf;font-size:14px;line-height:1.85}.engineering-panel li{padding:3px 0}
@media(max-width:900px){.engineering-article{grid-template-columns:1fr;gap:35px}.engineering-toc{position:static}.engineering-toc ol{columns:2}}@media(max-width:620px){.engineering-grid{grid-template-columns:1fr}.engineering-toc ol{columns:1}.engineering-article{padding-top:36px;padding-bottom:40px}.engineering-copy p{font-size:15px}.engineering-code{font-size:12px;padding:14px}}
