:root{--paper:#f4f0e6;--ink:#182c2a;--muted:#66716a;--teal:#245b50;--line:#c9cec2;--orange:#d36c42}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.site-header{height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 10px/1.05 Georgia,serif;letter-spacing:.14em}.brand-mark{position:relative;display:grid;place-items:center;width:39px;height:39px;border:1.5px solid var(--ink);font:italic 700 27px Georgia,serif;letter-spacing:0}.brand-mark span{position:absolute;font:12px sans-serif;right:-6px;top:-6px;color:var(--orange);background:var(--paper)}.header-link,.text-link{font-size:13px;font-weight:700;text-decoration:none}.header-link span,.text-link span{margin-left:9px}.hero{display:grid;grid-template-columns:1.05fr .95fr;gap:8%;align-items:center;min-height:636px;padding-block:88px 100px}.eyebrow{margin:0;color:var(--teal);font:700 10px/1.4 Georgia,serif;letter-spacing:.18em}.dot{display:inline-block;width:7px;height:7px;margin-right:8px;background:var(--orange);border-radius:50%}.eyebrow-divider{padding:0 8px;color:#a5ada3}h1,h2,h3,p{margin-top:0}h1{margin:30px 0 25px;font-family:"Songti SC","STSong",serif;font-size:clamp(42px,5vw,72px);line-height:1.25;letter-spacing:-.06em;font-weight:700}h1 em,h2 em{font-style:normal;color:var(--teal)}.hero-desc{max-width:510px;color:#53625c;font-size:15px;line-height:2}.actions{display:flex;align-items:center;gap:28px;margin-top:37px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:42px;min-height:55px;padding:0 21px;text-decoration:none;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-primary{background:var(--teal);color:#fff}.button-primary:hover{background:#193f38}.button span{font-size:20px;font-weight:400}.text-link{border-bottom:1px solid var(--ink);padding-bottom:7px}.package-note{margin:17px 0 0;color:#7a847b;font-size:11px}.diagram{position:relative;min-height:407px;padding:24px;background:#e6e8dd;border:1px solid #c9d0c2;overflow:hidden}.diagram:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#b9c5b733 1px,transparent 1px),linear-gradient(90deg,#b9c5b733 1px,transparent 1px);background-size:25px 25px;pointer-events:none}.diagram-top,.diagram-caption,.diagram-center{position:relative}.diagram-top,.diagram-caption{display:flex;justify-content:space-between;font:700 10px Georgia,serif;letter-spacing:.13em;color:#688076}.diagram-center{display:flex;align-items:center;justify-content:center;height:300px}.diagram-node{background:var(--paper);border:1px solid #9cab9c;padding:15px 17px;min-width:142px;box-shadow:4px 4px 0 #ced7c9}.diagram-node strong,.diagram-node small,.node-label{display:block}.node-label{font:700 9px Georgia,serif;color:#72867a;letter-spacing:.1em;margin-bottom:10px}.diagram-node strong{font-size:14px}.diagram-node small{font-size:10px;color:#79857c;margin-top:8px}.main-node{background:var(--teal);color:white;border-color:var(--teal);padding:20px;min-width:157px;box-shadow:5px 5px 0 #b2c5b6}.main-node .node-label,.main-node small{color:#c4d8ca}.connector{width:45px;height:174px;position:relative;flex-shrink:0}.connector:before{content:"";position:absolute;left:0;right:50%;top:50%;border-top:1px solid #7d9989}.connector:after{content:"";position:absolute;left:50%;top:12%;bottom:12%;border-left:1px solid #7d9989}.connector span{position:absolute;left:50%;right:0;border-top:1px solid #7d9989}.connector span:nth-child(1){top:12%}.connector span:nth-child(2){top:50%}.connector span:nth-child(3){bottom:12%}.workers{display:grid;gap:10px}.workers .diagram-node{padding:10px 14px}.workers .node-label{margin-bottom:5px}.diagram-caption{border-top:1px solid #bdcbbb;padding-top:16px;font-family:"PingFang SC",sans-serif;letter-spacing:.05em}.principles{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding-block:92px 112px;border-top:1px solid var(--line)}h2{font-family:"Songti SC","STSong",serif;font-size:clamp(34px,3.5vw,49px);line-height:1.35;letter-spacing:-.04em;margin:26px 0}.principle-list article{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:23px 0;border-top:1px solid var(--line)}.principle-list article:last-child{border-bottom:1px solid var(--line)}.number,.step>span{font:italic 15px Georgia,serif;color:var(--orange)}.principle-list h3,.step h3{font-size:16px;margin:0 0 9px}.principle-list p,.step p{font-size:13px;line-height:1.85;color:#64716a;margin:0}.install-section{background:var(--ink);color:#f4f0e6;padding:100px 0}.install-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.light-eyebrow{color:#a6c2ae}.install-intro h2{font-size:clamp(40px,4.5vw,61px)}.install-intro h2 em{color:#b0cbb4}.install-intro>p:not(.eyebrow){max-width:300px;color:#b7c6ba;line-height:1.9;font-size:14px}.button-light{margin-top:22px;background:var(--paper);color:var(--ink)}.button-light:hover{background:#d8e3d3}.step{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:23px 0;border-top:1px solid #526661}.step h3{color:#f4f0e6}.step p{color:#b7c6ba}.step code{color:#e4e7ce;font-size:12px;overflow-wrap:anywhere}.runtime-note{border-top:1px solid #526661;padding-top:20px;color:#a2b6a9;font-size:12px;line-height:1.8}.request{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;padding-block:105px}.request>div:first-child>p:last-child{font-size:14px;color:#64716a;line-height:1.8}.copy-card{border:1px solid #aebbae;background:#eceee4;padding:24px 26px;align-self:center}.copy-card-top{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #c5cfc0;padding-bottom:17px;font:700 10px Georgia,serif;letter-spacing:.12em;color:#708277}.copy-card button{border:0;background:transparent;color:var(--teal);font:700 12px "PingFang SC",sans-serif;cursor:pointer;padding:5px}.copy-card button span{margin-left:8px}.copy-card>p:not(.copy-feedback){margin:20px 0 0;font-size:13px;line-height:2;overflow-wrap:anywhere}.copy-feedback{min-height:1em;margin:8px 0 0;color:var(--teal);font-size:12px}.footer{border-top:1px solid var(--line);padding-block:25px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#748077}.footer p{margin:0}.footer a{text-decoration:none}.footer-brand{font:700 11px Georgia,serif;letter-spacing:.12em;color:var(--ink)}.footer-brand span{color:var(--orange)}@media(max-width:800px){.wrap{width:calc(100% - 44px)}.site-header{height:82px}.hero{grid-template-columns:1fr;gap:45px;padding-block:65px 72px;min-height:0}h1{font-size:clamp(39px,9vw,58px)}.diagram{min-height:360px}.diagram-center{height:255px}.principles,.install-grid,.request{grid-template-columns:1fr;gap:35px}.principles{padding-block:70px}.install-section{padding-block:72px}.request{padding-block:75px}.footer{flex-wrap:wrap}.footer p{order:3;width:100%}}@media(max-width:480px){.wrap{width:calc(100% - 36px)}.actions{gap:17px;flex-wrap:wrap}.button{gap:20px;padding-inline:16px}.text-link{font-size:12px}.diagram{padding:17px}.diagram-node{min-width:117px}.main-node{min-width:127px;padding:15px}.connector{width:25px}.workers .diagram-node{padding:9px}.diagram-node strong{font-size:12px}}

.error-main { min-height: 65vh; padding-block: 100px; }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
