/* 成都圆工芯片设计有限公司 — 蓝图/技术文档风 */
:root{
  --paper:#f4f3ee; --ink:#1a2430; --ink-soft:#43505e;
  --blue:#1e4f8f; --blue-deep:#12365f; --line:#c8ccd2;
  --fs-xs:12px; --fs-s:14px; --fs-m:16px; --fs-l:22px; --fs-xl:34px; --fs-xxl:56px;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font:var(--fs-m)/1.75 -apple-system,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;}
body{background-image:repeating-linear-gradient(0deg,transparent 0 31px,rgba(30,79,143,.06) 31px 32px);}
a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--blue-deep);text-decoration-thickness:2px}
a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.wrap{max-width:1280px;margin:0 auto;padding:0 var(--s5)}
h1,h2,h3{font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--ink)}
h1{font-size:var(--fs-xxl)}
h2{font-size:var(--fs-xl);border-bottom:3px solid var(--blue-deep);padding-bottom:var(--s2);margin-bottom:var(--s5)}
h3{font-size:var(--fs-l)}
p{max-width:68ch}
.lead{font-size:var(--fs-l);line-height:1.7;color:var(--ink-soft);max-width:34em}
.kicker{font-family:var(--mono);font-size:var(--fs-xs);letter-spacing:.25em;text-transform:uppercase;color:var(--blue)}

/* header */
.site-header{border-bottom:2px solid var(--ink);background:var(--paper)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-top:var(--s4);padding-bottom:var(--s4);flex-wrap:wrap}
nav a{margin-right:var(--s4);text-decoration:none;color:var(--ink);font-weight:600}
nav a:hover{color:var(--blue)}
nav a[aria-current]{color:var(--blue);border-bottom:3px solid var(--blue);padding-bottom:2px}

main{padding-top:var(--s6);padding-bottom:var(--s8)}
section{margin-bottom:var(--s8)}

/* heroes — 四页结构不同 */
.hero-block{display:grid;grid-template-columns:7fr 5fr;gap:var(--s7);align-items:start;border-left:6px solid var(--blue-deep);padding-left:var(--s5)}
.hero-split{display:grid;grid-template-columns:5fr 7fr;gap:var(--s6)}
.hero-offset h1{margin-left:calc(-1 * var(--s3));padding-left:var(--s3);border-left:6px solid var(--blue)}
.hero-contact{max-width:46em}
.hero-faq{max-width:52em}
.hero-fig figcaption,figure figcaption{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-soft);margin-top:var(--s2)}
.hero-fig img,figure img{width:100%;height:auto;border:1px solid var(--line);display:block}
.cta-row{margin-top:var(--s5)}
.btn{display:inline-block;background:var(--blue-deep);color:var(--paper);padding:var(--s3) var(--s5);text-decoration:none;font-weight:700;border:2px solid var(--blue-deep)}
.btn:hover{background:var(--blue);border-color:var(--blue);color:#fff}
.btn.ghost{background:transparent;color:var(--blue-deep)}
.btn.ghost:hover{background:var(--blue-deep);color:var(--paper)}

/* 能力：主叙述条目 */
.caps .cap{border-top:1px solid var(--line);padding:var(--s5) 0}
.caps .cap h3{margin-bottom:var(--s3)}

/* 九宫格（契约） */
.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.items .item{border:1px solid var(--line);border-top:3px solid var(--blue-deep);padding:var(--s4)}
.item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-bottom:1px solid var(--line);margin-bottom:var(--s3)}
.item h2{font-size:var(--fs-l);border:none;padding:0;margin:0 0 var(--s2)}
.item p{font-size:var(--fs-s);color:var(--ink-soft);margin-bottom:var(--s3)}
.item ul{list-style:none}
.item li{font-size:var(--fs-s);padding-left:var(--s4);position:relative;color:var(--ink-soft)}
.item li::before{content:"—";position:absolute;left:0;color:var(--blue)}
.items-block .sec-note{margin-bottom:var(--s5);color:var(--ink-soft)}
@media(max-width:760px){.items{grid-template-columns:minmax(0,1fr)}}

/* 流程 */
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s5);counter-reset:none}
.steps li{border-top:3px solid var(--blue);padding-top:var(--s3)}
.steps .no{font-family:var(--mono);font-size:var(--fs-xl);color:var(--blue);display:block}
.steps h3{font-size:var(--fs-l);margin:var(--s2) 0}
.steps.vertical{grid-template-columns:1fr;max-width:46em}
.steps.vertical li{border-left:3px solid var(--blue);border-top:none;padding:0 0 var(--s5) var(--s4)}

/* FAQ */
.faq-block dl,.faq-detail{max-width:60em}
.faq-block dt{font-weight:700;margin-top:var(--s4);padding-left:var(--s4);border-left:3px solid var(--blue)}
.faq-block dd{margin:var(--s2) 0 0;padding-left:var(--s4);border-left:3px solid var(--line);color:var(--ink-soft)}
.faq-detail h2{margin-top:var(--s6)}
.faq-detail h3{margin:var(--s5) 0 var(--s2)}
.more-link{margin-top:var(--s5)}

/* CTA */
.cta-block{border:2px solid var(--ink);padding:var(--s6);background:var(--blue-deep);color:var(--paper)}
.cta-block h2{color:var(--paper);border-color:var(--blue)}
.cta-block p{color:#dfe6ee;max-width:40em}

/* 文章页 */
.article-body p{margin-bottom:var(--s4)}
.article-body table{width:100%;border-collapse:collapse;margin:var(--s5) 0;font-size:var(--fs-s)}
.article-body caption{font-family:var(--mono);font-size:var(--fs-xs);color:var(--ink-soft);text-align:left;padding-bottom:var(--s2)}
.article-body th,.article-body td{border:1px solid var(--line);padding:var(--s2) var(--s3);text-align:left;vertical-align:top}
.article-body th{background:var(--blue-deep);color:var(--paper)}
.checklist{list-style:none;max-width:56em;margin-bottom:var(--s5)}
.checklist li{padding:var(--s2) 0 var(--s2) var(--s5);border-bottom:1px solid var(--line);position:relative}
.checklist li::before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:700}
.guide-fig{margin-bottom:var(--s5)}
.guide-fig img{width:100%;max-width:720px;height:auto;border:1px solid var(--line)}

/* 面包屑 */
.breadcrumb{font-size:var(--fs-xs);letter-spacing:.08em;color:var(--ink-soft);margin-bottom:var(--s6);display:flex;gap:var(--s2)}
.breadcrumb a{color:var(--ink-soft);text-decoration:none}
.breadcrumb a:hover{color:var(--blue);text-decoration:underline}

/* footer */
.site-footer{border-top:2px solid var(--ink);padding:var(--s5) 0}
.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s4)}
.foot nav a{margin-left:0;margin-right:var(--s4);font-weight:400}

@media(max-width:900px){
  h1{font-size:var(--fs-xl)}
  .lead{font-size:var(--fs-m)}
  .hero-block,.hero-split{grid-template-columns:1fr;padding-left:0;border-left:none}
  .steps{grid-template-columns:1fr 1fr}
  .foot{flex-direction:column;align-items:flex-start}
}
</style>