/* 简洁样式，供演示用途 */
body { font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif; margin:0; color:#333; }
.container { max-width:1100px; margin:0 auto; padding:20px; }
.site-header { background:#0b74de; color:white; padding:16px 0; }
.header-row { display:flex; align-items:center; justify-content:space-between; }
.brand { margin:0; display:flex; align-items:center; gap:12px; }
.brand-link img { height:32px; display:inline-block; vertical-align:middle; }
.brand-text { font-size:1.15rem; color:white; font-weight:700; }

@media (max-width:480px) {
	.brand-link img { height:28px; }
	.brand-text { font-size:1rem; }
	.header-row { gap:8px; }
}
.main-nav { float:right; }
.main-nav a { color:white; margin-left:16px; text-decoration:none; }
.hero { background:#f5f8ff; padding:24px; border-radius:6px; }
.services ul { list-style:disc; padding-left:20px; }
.btn { display:inline-block; background:#0b74de; color:white; padding:8px 14px; border-radius:4px; text-decoration:none; }
.site-footer { background:#f1f1f1; padding:12px 0; margin-top:30px; }

/* services grid */
.services { margin-top:20px; }
.services-grid { display:grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap:18px; margin-top:12px; }
.service-card { background:white; border-radius:10px; padding:16px; box-shadow:0 6px 18px rgba(10,20,40,0.06); text-align:center; }
.service-card img { width:120px; height:auto; margin-bottom:12px; }
.service-card h4 { margin:6px 0 8px; font-size:1.05rem; }
.service-card p { color:#555; font-size:0.95rem; }

@media (max-width:600px) {
	.main-nav { float:none; margin-top:8px; }
	.brand { display:block; }
}

/* inline contact form styles */
.inline-contact { margin-top:28px; background:#fff; padding:18px; border-radius:10px; box-shadow:0 8px 24px rgba(10,20,40,0.06); }
.inline-contact label { display:block; margin-bottom:8px; }
.inline-contact input, .inline-contact textarea { width:100%; padding:8px; border:1px solid #e6e6e6; border-radius:6px; }
.inline-contact button { margin-top:8px }

/* contact page styles */
.contact-form { margin-top:22px; background:#fff; padding:20px; border-radius:10px; box-shadow:0 8px 24px rgba(10,20,40,0.06); }
.contact-form h3 { margin-top:0; }
.contact-form label { display:block; margin-bottom:10px; font-weight:600; color:#222; }
.contact-form input, .contact-form textarea { width:100%; padding:10px; border:1px solid #e6e6e6; border-radius:6px; box-sizing:border-box; font-size:0.95rem; }
.contact-form textarea { min-height:120px; resize:vertical; }
.contact-form button { margin-top:10px; }
.contact-form .btn { display:inline-block; text-decoration:none; cursor:pointer; }

/* contact details (dl) */
dl { margin:0 0 12px 0; }
dl dt { font-weight:700; margin-top:8px; }
dl dd { margin:0 0 8px 0; color:#444; }

@media (max-width:600px) {
	.contact-form { padding:16px; }
	.contact-form input, .contact-form textarea { font-size:0.95rem; }
}

/* gallery styles */
.gallery { margin-top:28px; }
.gallery h3 { margin-bottom:12px; }
.gallery-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:12px; }
.gallery-grid figure { margin:0; overflow:hidden; border-radius:10px; box-shadow:0 8px 20px rgba(10,20,40,0.06); }
.gallery-grid img { width:100%; height:220px; object-fit:cover; display:block; }

@media (max-width:900px) {
	.gallery-grid { grid-template-columns: repeat(2, 1fr); }
	.gallery-grid img { height:180px; }
}

@media (max-width:480px) {
	.gallery-grid { grid-template-columns: 1fr; }
	.gallery-grid img { height:160px; }
}
