:root{
  --ink:#1e2a3a;          /* 深靛墨 */
  --indigo:#2b4a7d;       /* 靛青，取自织物染色 */
  --indigo-deep:#1a3358;
  --paper:#f6f2e9;        /* 米白纸感打底 */
  --paper-2:#ece5d6;
  --line:#c9c0ae;
  --muted:#5b6472;
  --fs-1:.8125rem; --fs-2:1rem; --fs-3:1.25rem; --fs-4:1.75rem; --fs-5:2.625rem; --fs-6:4rem;
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px;
  --maxw:1280px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Georgia,"Songti SC","SimSun",serif;font-size:var(--fs-2);line-height:1.75;color:var(--ink);background:var(--paper)}
img{max-width:100%;height:auto}
a{color:var(--indigo);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--indigo-deep);text-decoration-thickness:2px}
a:focus-visible,button:focus-visible{outline:2px solid var(--indigo);outline-offset:3px}
h1,h2,h3{font-weight:700;letter-spacing:.02em;line-height:1.25;color:var(--indigo-deep)}
h1{font-size:clamp(var(--fs-4),5vw,var(--fs-6))}
h2{font-size:var(--fs-4);border-bottom:2px solid var(--indigo);padding-bottom:var(--s2);margin-bottom:var(--s5)}
h3{font-size:var(--fs-3)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--s6)}
.kicker{font-size:var(--fs-1);letter-spacing:.3em;text-transform:uppercase;color:var(--indigo);margin-bottom:var(--s4)}
.lead{max-width:38em;font-size:var(--fs-3);line-height:1.9;margin-bottom:var(--s5)}
.cta-row{display:flex;gap:var(--s3);flex-wrap:wrap;margin-top:var(--s5)}
.btn{display:inline-block;background:var(--indigo);color:var(--paper);padding:var(--s3) var(--s5);border:2px solid var(--indigo);text-decoration:none;font-weight:700}
.btn:hover{background:var(--indigo-deep);border-color:var(--indigo-deep);color:var(--paper)}
.btn.ghost{background:transparent;color:var(--indigo)}
.btn.ghost:hover{background:var(--indigo);color:var(--paper)}

/* header */
.site-head{border-bottom:2px solid var(--indigo);background:var(--paper)}
.head-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s5);padding-top:var(--s4);padding-bottom:var(--s4);flex-wrap:wrap}
.site-head nav a{font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-size:var(--fs-2);text-decoration:none;margin-left:var(--s4);padding-bottom:2px;border-bottom:2px solid transparent}
.site-head nav a:hover{border-bottom-color:var(--indigo)}
.site-head nav a[aria-current]{border-bottom-color:var(--indigo);font-weight:700}

/* breadcrumb */
.breadcrumb{font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-size:var(--fs-1);letter-spacing:.08em;color:var(--muted);margin:var(--s5) 0 var(--s6)}
.breadcrumb a{color:var(--muted);text-decoration:none}
.breadcrumb a:hover{color:var(--indigo);text-decoration:underline}
.breadcrumb span{margin:0 var(--s2)}

/* hero: 左右分栏（首页） */
.hero-split{border-bottom:2px solid var(--indigo)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--s8);align-items:center;padding-top:var(--s8);padding-bottom:var(--s8)}
.hero-grid img{border:2px solid var(--indigo);width:100%}

/* caps */
.caps{padding-top:var(--s8);padding-bottom:var(--s8)}
.cap-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s6)}
.cap-row article{border-top:2px solid var(--ink);padding-top:var(--s4)}
.cap-row p{color:var(--muted);margin-top:var(--s2)}
.band{background:var(--indigo);color:var(--paper);padding:var(--s6) 0}
.band-note{max-width:44em;font-size:var(--fs-3)}

/* 9宫格（契约） */
.items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-top:var(--s6);padding-bottom:var(--s8)}
.item{border:2px solid var(--ink);padding:var(--s4);background:#fffdf7}
.item img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-bottom:2px solid var(--ink);margin-bottom:var(--s3)}
.item h2{font-size:var(--fs-3);border-bottom:none;padding-bottom:0;margin-bottom:var(--s2)}
.item p{color:var(--muted);font-size:var(--fs-2)}
.item ul{margin-top:var(--s2);padding-left:1.2em;font-size:var(--fs-1);line-height:1.9;color:var(--ink)}
@media(max-width:760px){.items{grid-template-columns:minmax(0,1fr)}}

/* 流程与FAQ */
.process{padding-bottom:var(--s8)}
.steps{list-style:none;counter-reset:st;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s5)}
.steps li{counter-increment:st;border-left:2px solid var(--indigo);padding-left:var(--s4);color:var(--muted)}
.steps li::before{content:"0" counter(st);display:block;font-size:var(--fs-4);font-weight:700;color:var(--indigo);letter-spacing:.05em}
.steps strong{display:block;color:var(--ink);margin-bottom:var(--s1)}
.faq{padding-bottom:var(--s8)}
.faq dt,.contact-faq dt,.faq-list dt{font-weight:700;color:var(--indigo-deep);margin-top:var(--s4)}
.faq dd,.contact-faq dd,.faq-list dd{margin-left:0;color:var(--muted);max-width:66ch}
.cta-end{background:var(--indigo);color:var(--paper);padding:var(--s8) 0;text-align:center}
.cta-end h2{color:var(--paper);border-bottom:none;display:inline-block}
.cta-end .btn{background:var(--paper);color:var(--indigo-deep);border-color:var(--paper)}
.cta-end .btn:hover{background:var(--paper-2)}
.alt-link{margin-top:var(--s4);font-size:var(--fs-1);color:var(--paper-2)}
.alt-link a{color:var(--paper)}

/* about */
.about-hero{padding:var(--s7) 0}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:var(--s6);align-items:end}
.about-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s6);padding-bottom:var(--s7)}
.about-cols article{border-top:2px solid var(--indigo);padding-top:var(--s4)}
.about-cols p{color:var(--muted)}
.about-more{border-top:2px solid var(--ink);padding:var(--s6) 0 var(--s8)}

/* services / contact / article */
.svc-intro,.contact-hero{padding:var(--s5) 0 var(--s6);border-bottom:2px solid var(--indigo)}
.svc-intro p,.contact-hero p{max-width:66ch;margin-top:var(--s4)}
.svc-next,.contact-faq{padding-bottom:var(--s8)}
.contact-flow{padding:var(--s6) 0}
.article{padding-bottom:var(--s8)}
.art-lead{font-size:var(--fs-3);max-width:40em;margin:var(--s4) 0 var(--s6)}
.article h2{margin-top:var(--s7)}
.article p{max-width:66ch;margin-top:var(--s3)}
table{width:100%;border-collapse:collapse;margin:var(--s5) 0;font-size:var(--fs-2)}
caption{font-size:var(--fs-1);letter-spacing:.1em;color:var(--muted);text-align:left;padding-bottom:var(--s2)}
th,td{border:1px solid var(--line);padding:var(--s2) var(--s3);text-align:left;vertical-align:top}
th{background:var(--paper-2);font-family:"PingFang SC","Microsoft YaHei",sans-serif;font-size:var(--fs-1)}
.faq-list h2{margin-top:var(--s6)}

/* footer */
.site-foot{border-top:2px solid var(--indigo);background:var(--paper-2);margin-top:var(--s7)}
.foot-row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);padding:var(--s5) var(--s6);font-size:var(--fs-1);color:var(--muted)}

@media(max-width:900px){
  .hero-grid,.about-grid{grid-template-columns:minmax(0,1fr)}
  .cap-row,.about-cols,.steps{grid-template-columns:minmax(0,1fr)}
  .wrap{padding:0 var(--s4)}
  .foot-row{padding:var(--s4)}
}
@media(max-width:600px){
  .site-head nav a{margin-left:0;margin-right:var(--s3)}
}