* { box-sizing: border-box; margin: 0; padding: 0; }
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; color: #1f2937; background: #f9fafb; line-height: 1.6; }
.wrap { max-width: 960px; margin: 0 auto; padding: 0 20px; }
header { background: #fff; border-bottom: 1px solid #e5e7eb; }
.bar { display: flex; justify-content: space-between; align-items: center; height: 64px; }
.logo { font-weight: 700; font-size: 20px; color: #2563eb; }
nav a { margin-left: 24px; color: #4b5563; text-decoration: none; }
nav a:hover { color: #2563eb; }
.hero { padding: 96px 0; text-align: center; background: linear-gradient(135deg, #eff6ff, #f9fafb); }
.hero h1 { font-size: 40px; margin-bottom: 16px; }
.hero p { color: #6b7280; margin-bottom: 32px; }
.btn { display: inline-block; padding: 12px 28px; background: #2563eb; color: #fff; border-radius: 8px; text-decoration: none; }
.btn:hover { background: #1d4ed8; }
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 24px; padding-top: 64px; padding-bottom: 64px; }
.cards article { background: #fff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 24px; }
.cards h2 { font-size: 18px; margin-bottom: 8px; }
.cards p { color: #6b7280; }
.contact { text-align: center; padding-bottom: 80px; }
.contact h2 { margin-bottom: 8px; }
footer { border-top: 1px solid #e5e7eb; padding: 24px 0; text-align: center; color: #9ca3af; font-size: 14px; }
