@charset "UTF-8";
:root { font-family: "PingFang SC", "Microsoft YaHei", sans-serif; color: #182a3c; background: #f6f9fd; font-synthesis: none; }
* { box-sizing: border-box; }
body, p, h1, h2, h3 { margin: 0; }
a { color: #245de5; }
.page-header { height: 76px; display: flex; align-items: center; justify-content: space-between; padding: 0 6%; background: #fff; border-bottom: 1px solid #e3eaf4; position: sticky; top: 0; }
.brand { display: flex; gap: 8px; align-items: center; font-size: 16px; font-weight: 600; color: #182a3c; text-decoration: none; }
.brand img { object-fit: contain; }
.nav-cta { background: #245de5; color: #fff; padding: 10px 22px; border-radius: 24px; font-size: 13px; text-decoration: none; }
.nav-cta:hover { background: #1648bf; }
main { max-width: 860px; margin: 0 auto; padding: 60px 24px 80px; }
.crumb { font-size: 12px; color: #617488; letter-spacing: 1px; margin-bottom: 26px; }
.crumb a { color: #617488; text-decoration: none; }
.crumb a:hover { color: #245de5; }
h1 { font-size: 38px; font-weight: 500; letter-spacing: -1px; line-height: 1.35; margin-bottom: 18px; }
.lede { font-size: 16px; line-height: 2; color: #3c5068; margin-bottom: 36px; }
h2 { font-size: 21px; font-weight: 500; margin: 38px 0 12px; letter-spacing: -0.5px; }
p { font-size: 15px; line-height: 2; color: #4a5f76; margin-bottom: 14px; }
ul, ol { color: #4a5f76; line-height: 2; font-size: 15px; padding-left: 22px; margin-bottom: 14px; }
li { margin-bottom: 6px; }
.case-card { background: #fff; border: 1px solid #e3eaf4; border-radius: 14px; padding: 26px 30px; margin-bottom: 18px; }
.case-card h2 { margin-top: 0; }
.case-card .tag { display: inline-block; font-size: 11px; color: #245de5; background: #e8f0fe; border-radius: 20px; padding: 4px 12px; letter-spacing: 1px; margin-bottom: 12px; }
.cta-box { margin-top: 56px; padding: 40px 32px; background: #fff; border: 1px solid #e3eaf4; border-radius: 16px; text-align: center; }
.cta-box h2 { margin: 0 0 10px; }
.primary { display: inline-block; margin-top: 18px; background: #245de5; color: #fff; padding: 14px 34px; border-radius: 32px; font-size: 14px; text-decoration: none; }
.primary:hover { background: #1648bf; }
.page-footer { border-top: 1px solid #e3eaf4; padding: 26px 6%; display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 12px; color: #617488; }
.page-footer a { color: #617488; text-decoration: none; margin-right: 14px; }
.page-footer a:hover { color: #245de5; }
@media (max-width: 700px) {
  h1 { font-size: 27px; }
  main { padding: 42px 20px 60px; }
  .cta-box { padding: 30px 20px; }
}
