:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#18323d;background:#f6f7f3;--accent:#126252;--soft:#dceee6;--ink:#142e39;--border:#dce2dc;line-height:1.65;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #bf6519;outline-offset:5px}.skip{position:absolute;left:16px;top:-80px;padding:10px;background:white;z-index:10}.skip:focus{top:12px}.topbar{max-width:1240px;margin:auto;padding:27px 38px;display:flex;justify-content:space-between;gap:24px;align-items:center}.brand{display:flex;align-items:center;gap:12px;font-weight:750;font-size:16px;letter-spacing:-.35px;text-decoration:none}.topbar nav{display:flex;gap:28px;font-size:14px;font-weight:600}.topbar nav a{text-decoration:none}.rss{color:var(--accent)}.searchbar{border-block:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:20px;padding:12px max(38px,calc((100vw - 1164px)/2));background:#fff}.searchbar form{display:flex;align-items:center;gap:12px}.searchbar label{font-size:12px;text-transform:uppercase;letter-spacing:1px;font-weight:700}.searchbar input{width:280px;border:1px solid var(--border);border-radius:7px;padding:9px 13px;font:inherit;font-size:13px;background:#f7f9f6}.searchbar button{border:0;background:var(--ink);color:white;border-radius:7px;padding:11px 15px;font-weight:700;cursor:pointer}.searchbar>span{font-size:12px;color:#597078}main{max-width:1164px;margin:auto;padding:0 0 70px}.hero{padding:78px 0 58px;max-width:850px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;color:var(--accent);text-transform:uppercase}.hero h1{font-size:clamp(38px,5.6vw,67px);line-height:1.08;letter-spacing:-2.9px;max-width:770px;margin:19px 0 23px}.lead{color:#526870;font-size:19px;max-width:730px;line-height:1.7}.primary{display:inline-flex;gap:32px;background:var(--ink);color:#fff!important;padding:14px 20px;border-radius:8px;text-decoration:none;font-size:14px;font-weight:650;margin-top:12px}.hero-meta{display:flex;gap:26px;font-size:12px;color:#63777d;margin-top:29px}.hero-meta span:before{content:"✓";color:var(--accent);margin-right:7px}.section{border-top:1px solid var(--border);padding-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}.section-head h2{font-size:27px;letter-spacing:-.8px;margin:5px 0}.section-head>p{font-size:13px;color:#63777d;max-width:290px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.card{border:1px solid var(--border);background:#fff;border-radius:12px;padding:27px;display:flex;flex-direction:column;box-shadow:0 3px 0 #173d3b03}.card h2{font-size:21px;line-height:1.35;letter-spacing:-.5px;margin:18px 0 12px}.card h2 a{text-decoration:none}.card p{color:#5a6e74;font-size:14px;margin:0 0 25px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tags a{background:#f0f4ef;padding:3px 8px;font-size:10px;border-radius:5px;text-decoration:none}.read{font-weight:700;font-size:12px;text-decoration:none;margin-top:24px;display:flex;justify-content:space-between}.callout{margin-top:42px;border-radius:12px;background:var(--soft);padding:30px 34px}.callout h2{font-size:23px;letter-spacing:-.4px;margin:0 0 8px}.callout p{font-size:14px;max-width:760px;color:#3c5d5b}.callout a{font-size:13px;font-weight:700}.page-head{padding:47px 0 25px}.page-head h1{font-size:42px;line-height:1.2;letter-spacing:-1.5px}.taxonomy{display:flex;flex-wrap:wrap;gap:13px}.taxonomy a{padding:12px 22px;background:white;border:1px solid var(--border);border-radius:9px;text-decoration:none}.breadcrumbs{font-size:12px;display:flex;flex-wrap:wrap;gap:10px;padding:27px 0;color:#5e747a}.article-head{max-width:860px;border-bottom:1px solid var(--border);padding:17px 0 29px;margin-bottom:32px}.article-head h1{font-size:clamp(32px,4.8vw,51px);letter-spacing:-1.8px;line-height:1.15;margin:18px 0}.article-meta{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;color:#62777d;margin-top:24px}.prose{max-width:820px;margin:40px 0 70px;font-size:17px;overflow-wrap:anywhere}.prose h1{font-size:42px}.prose h2{font-size:28px;line-height:1.3;letter-spacing:-.7px;margin:39px 0 17px}.prose h3{font-size:21px;margin:30px 0 10px}.prose p,.prose li{color:#3c545d}.prose a{color:#126252}.prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.88em;background:#eaf0e9;padding:2px 5px;border-radius:4px}.prose pre{overflow:auto;background:#142c38;border-radius:10px;padding:23px;line-height:1.65;tab-size:2}.prose pre code{background:none;color:#e1eceb;padding:0;font-size:13px}.hljs-keyword,.hljs-selector-tag,.hljs-literal{color:#c9a9fc}.hljs-string,.hljs-regexp{color:#a6e2bb}.hljs-number,.hljs-attr{color:#f6c890}.hljs-comment{color:#a3b7be}.hljs-title,.hljs-built_in{color:#8fd8ed}.prose blockquote{border-left:3px solid var(--accent);padding-left:20px}.related{border-top:1px solid var(--border);padding-top:25px}.related .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.related>h2{font-size:24px}footer{background:#122d38;color:#d7e5e5;padding:38px max(38px,calc((100vw - 1164px)/2));font-size:13px}footer p{color:#afc5c9}footer div{display:flex;gap:24px;margin:21px 0}footer small{color:#afc5c9;font-size:11px}[hidden]{display:none!important}html[data-theme=engineering]{--accent:#8d3e35;--soft:#f1e3d9;--ink:#432e35;background:#fbf7f0}html[data-theme=engineering] .topbar{border-top:5px solid #bd674f}html[data-theme=engineering] .prose a{color:#8d3e35}@media(max-width:1240px){main{padding:0 38px 60px}}@media(max-width:800px){.cards{grid-template-columns:1fr 1fr}.searchbar>span{display:none}.topbar{align-items:flex-start}.topbar nav{gap:16px}.hero{padding-top:52px}.section-head{display:block}}@media(max-width:560px){.topbar{padding:20px;display:block}.topbar nav{margin-top:18px}.brand{font-size:14px}.searchbar{padding:12px 20px}.searchbar form{flex-wrap:wrap;width:100%;gap:8px}.searchbar label{width:100%}.searchbar input{min-width:0;width:auto;flex:1}main{padding:0 20px 40px}.hero{padding:36px 0}.hero h1{letter-spacing:-1.6px}.lead{font-size:17px}.hero-meta{gap:12px;font-size:10px;flex-wrap:wrap}.cards,.related .cards{grid-template-columns:1fr}.card{padding:23px}.section-head h2{font-size:25px}.callout{padding:24px}.article-head h1{letter-spacing:-1px}.prose{font-size:16px}.prose h2{font-size:24px}.prose pre{padding:16px;margin-left:-5px;margin-right:-5px}footer{padding:30px 20px}}
