/* 建筑图纸风格：纸面底色 + 蓝图蓝 + 墨线边框 + 标注系统 */
:root{
  --paper:#f4f1e9;
  --paper-deep:#ebe6d9;
  --ink:#22303a;
  --ink-soft:#4c5a66;
  --blue:#2a5a7e;      /* 主色：蓝图蓝，来自工程图纸晒图工艺 */
  --blue-line:#c3d4e0;
  --line:#22303a;
  --fs-xs:.8125rem;
  --fs-sm:.9375rem;
  --fs-md:1.0625rem;
  --fs-lg:1.5rem;
  --fs-xl:2.25rem;
  --fs-xxl:clamp(2.2rem,5.4vw,3.75rem);
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s6:24px;--s8:32px;--s12:48px;--s16:64px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  background:var(--paper);
  color:var(--ink);
  font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  font-size:var(--fs-md);
  line-height:1.85;
}
/* 图纸网格底纹 */
body::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:
    linear-gradient(var(--blue-line) 1px,transparent 1px),
    linear-gradient(90deg,var(--blue-line) 1px,transparent 1px);
  background-size:64px 64px;opacity:.35;
}
main,header,footer{position:relative;z-index:1}
.wrap{max-width:1280px;margin:0 auto;padding:0 var(--s6)}
a{color:var(--blue);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--ink);background:rgba(42,90,126,.08)}
a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:3px}
img{max-width:100%;height:auto}

/* 页头 */
.site-head{border-bottom:2px solid var(--line);background:var(--paper)}
.head-grid{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-top:var(--s4);padding-bottom:var(--s4);flex-wrap:wrap}
.site-nav{display:flex;gap:var(--s4);flex-wrap:wrap}
.site-nav a{
  color:var(--ink);text-decoration:none;font-size:var(--fs-sm);
  letter-spacing:.08em;padding:var(--s1) var(--s2);border-bottom:2px solid transparent;
}
.site-nav a:hover{border-bottom-color:var(--blue);background:none;color:var(--blue)}
.site-nav a[aria-current="page"]{border-bottom-color:var(--line);font-weight:700}

/* 标注标签 */
.fig-tag{
  font-family:"JetBrains Mono",ui-monospace,Consolas,monospace;
  font-size:var(--fs-xs);letter-spacing:.18em;color:var(--blue);
  margin-bottom:var(--s3);
}
.sec-title{font-size:var(--fs-lg);font-weight:800;letter-spacing:.04em;border-top:2px solid var(--line);padding-top:var(--s4);margin:var(--s16) 0 var(--s6)}
.sec-title span{
  font-family:ui-monospace,Consolas,monospace;font-size:var(--fs-xs);font-weight:400;
  color:var(--blue);letter-spacing:.18em;margin-right:var(--s4);
}
.lede{max-width:38em;color:var(--ink-soft)}

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

/* 首屏一：左右分栏（首页） */
.hero-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s12);align-items:center;padding:var(--s12) 0 var(--s8)}
.hero-copy h1{font-size:var(--fs-xxl);line-height:1.25;font-weight:900;letter-spacing:.01em;margin-bottom:var(--s6)}
.hero-media{border:1px solid var(--line);padding:var(--s2);background:#fff}
.hero-media img{display:block}

/* 首屏二：图上文下横带（关于） */
.hero-band{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s8);align-items:end;padding:var(--s8) 0}
.hero-band h1{font-size:var(--fs-xl);font-weight:900;line-height:1.3;margin-bottom:var(--s4)}
.hero-band img{border:1px solid var(--line);background:#fff;padding:var(--s2)}

/* 首屏三：纯文字注记（服务/联系/问答） */
.hero-note{padding:var(--s8) 0 var(--s4);border-bottom:1px dashed var(--blue);margin-bottom:var(--s6)}
.hero-note h1{font-size:var(--fs-xl);font-weight:900;margin-bottom:var(--s4)}
.contact-mail{margin-top:var(--s4);font-size:var(--fs-lg);font-weight:700}

/* 能力三块 */
.cap-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}
.cap{border-top:4px solid var(--blue);padding-top:var(--s4)}
.cap h3{font-size:var(--fs-md);font-weight:800;margin-bottom:var(--s2)}
.cap p{font-size:var(--fs-sm);color:var(--ink-soft)}

/* 九宫格 */
.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:var(--s6) 0}
.item{border:1px solid var(--line);background:#fff;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,.item h3{font-size:var(--fs-md);font-weight:800;margin-bottom:var(--s2)}
.item p{font-size:var(--fs-sm);color:var(--ink-soft);margin-bottom:var(--s2)}
.item ul{list-style:none;font-size:var(--fs-xs);color:var(--ink-soft)}
.item li{padding-left:var(--s4);position:relative;margin-bottom:var(--s1)}
.item li::before{content:"—";position:absolute;left:0;color:var(--blue)}
@media(max-width:760px){.items{grid-template-columns:minmax(0,1fr)}}
.more-link{margin:var(--s4) 0;font-size:var(--fs-sm)}

/* 流程 */
.proc-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s6);counter-reset:step}
.proc-list li{border-left:2px solid var(--blue);padding-left:var(--s4)}
.proc-list .num{font-family:ui-monospace,Consolas,monospace;font-size:var(--fs-lg);color:var(--blue);font-weight:700;display:block;margin-bottom:var(--s2)}
.proc-list h3{font-size:var(--fs-md);font-weight:800;margin-bottom:var(--s2)}
.proc-list p{font-size:var(--fs-sm);color:var(--ink-soft)}

/* 问答 */
.faq dl{max-width:60em}
.qa{border-top:1px solid var(--line);padding:var(--s4) 0}
.qa dt{font-weight:800;margin-bottom:var(--s2)}
.qa dd{color:var(--ink-soft);font-size:var(--fs-sm)}

/* 关于页文字块 */
.text-blocks p{max-width:60em;margin-bottom:var(--s6);color:var(--ink)}
.text-blocks p + p{color:var(--ink-soft)}

/* 表格（指南） */
.article{max-width:60em;padding-bottom:var(--s16)}
.article h1{font-size:var(--fs-xl);font-weight:900;margin-bottom:var(--s4)}
.article h2{font-size:var(--fs-lg);font-weight:800;border-top:2px solid var(--line);padding-top:var(--s4);margin:var(--s12) 0 var(--s4)}
.article p{margin-bottom:var(--s4);color:var(--ink)}
table{width:100%;border-collapse:collapse;margin:var(--s6) 0;font-size:var(--fs-sm)}
th,td{border:1px solid var(--line);padding:var(--s2) var(--s3);text-align:left;vertical-align:top}
th{background:var(--paper-deep);font-weight:800}

/* CTA */
.cta{border:2px solid var(--line);background:var(--paper-deep);padding:var(--s8);margin:var(--s16) 0;text-align:center}
.cta h2{font-size:var(--fs-lg);font-weight:900;margin-bottom:var(--s2)}
.cta p{color:var(--ink-soft);font-size:var(--fs-sm);margin-bottom:var(--s4)}

/* 按钮 */
.btn{
  display:inline-block;background:var(--blue);color:#fff;text-decoration:none;
  padding:var(--s2) var(--s6);font-weight:700;font-size:var(--fs-sm);letter-spacing:.06em;
  border:2px solid var(--blue);transition:background .15s,color .15s;
}
.btn:hover{background:var(--ink);border-color:var(--ink);color:#fff}
.btn.ghost{background:transparent;color:var(--blue)}
.btn.ghost:hover{background:var(--blue);color:#fff}

/* 页脚 */
.site-foot{border-top:2px solid var(--line);background:var(--paper-deep);margin-top:var(--s16)}
.foot-grid{display:flex;justify-content:space-between;gap:var(--s6);flex-wrap:wrap;padding:var(--s6) var(--s6);font-size:var(--fs-xs);color:var(--ink-soft)}
.foot-grid nav{display:flex;gap:var(--s4);flex-wrap:wrap}
.foot-grid a{color:var(--ink-soft)}
.foot-grid a:hover{color:var(--blue);background:none}

@media(max-width:900px){
  .hero-split,.hero-band{grid-template-columns:minmax(0,1fr)}
  .cap-grid{grid-template-columns:minmax(0,1fr)}
  .proc-list{grid-template-columns:minmax(0,1fr)}
  .wrap{padding:0 var(--s4)}
  .sec-title{margin-top:var(--s12)}
}