:root{
  --ink:#073E67;
  --brand:#007E9A;
  --accent:#8CD0E6;
  --light:#EAF7FB;
  --muted:#6B8296;
}
*{box-sizing:border-box;margin:0;padding:0}
body{
  font-family:"Microsoft YaHei","PingFang SC","Helvetica Neue",Arial,sans-serif;
  color:var(--ink);background:#fff;line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--brand);text-decoration:none}
.wrap{max-width:880px;margin:0 auto;padding:0 22px}

header.top{
  border-bottom:1px solid var(--light);
  background:linear-gradient(180deg,#F7FCFE,#fff);
}
header.top .wrap{display:flex;align-items:center;justify-content:space-between;height:66px}
.logo{font-size:18px;font-weight:700;letter-spacing:.5px}
.logo span{color:var(--brand)}
nav a{margin-left:22px;font-size:15px;color:var(--muted)}
nav a:hover{color:var(--brand)}

.hero{padding:64px 0 48px}
.hero h1{font-size:34px;line-height:1.4;letter-spacing:.5px}
.hero h1 em{font-style:normal;color:var(--brand)}
.hero p.sub{margin-top:16px;font-size:16px;color:var(--muted);max-width:560px}
.tagline{margin-top:26px;font-size:15px;color:var(--ink);background:var(--light);
  display:inline-block;padding:7px 16px;border-radius:20px}

.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:8px 0 56px}
.card{display:block;border:1px solid var(--light);border-radius:14px;padding:22px 20px;
  transition:.18s;background:#fff}
.card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 10px 24px rgba(0,126,154,.10)}
.card h3{font-size:17px;margin-bottom:8px;color:var(--ink)}
.card p{font-size:14px;color:var(--muted);line-height:1.65}

.section{padding:52px 0}
.section h2{font-size:22px;margin-bottom:8px}
.section .lead{color:var(--muted);font-size:15px;margin-bottom:28px}

.works{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.work{border:1px solid var(--light);border-radius:14px;overflow:hidden}
.work .thumb{height:150px;background:linear-gradient(135deg,#EAF7FB,#D8EFF7);
  display:flex;align-items:center;justify-content:center;color:var(--accent);font-size:13px}
.work .meta{padding:14px 16px}
.work h4{font-size:15px;margin-bottom:4px}
.work small{color:var(--muted);font-size:13px}

.empty{border:1px dashed var(--accent);border-radius:14px;padding:34px 24px;text-align:center;color:var(--muted);font-size:14px}

.contact-list{margin-top:24px;border-top:1px solid var(--light)}
.contact-list div{display:flex;justify-content:space-between;padding:15px 2px;
  border-bottom:1px solid var(--light);font-size:15px}
.contact-list span:first-child{color:var(--muted)}

footer{border-top:1px solid var(--light);margin-top:40px;padding:26px 0 34px;
  font-size:13px;color:var(--muted);text-align:center;line-height:2}
footer a{color:var(--muted)}

@media(max-width:680px){
  .hero{padding:44px 0 34px}
  .hero h1{font-size:26px}
  .grid,.works{grid-template-columns:1fr}
  nav a{margin-left:14px;font-size:14px}
}