* { box-sizing: border-box }
html, body { height: 100% }
body { margin: 0; font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color: #0f172a; background: #ffffff }
a { color: inherit; text-decoration: none }
img { max-width: 100%; display: block }

.container { max-width: 1120px; margin: 0 auto; padding: 0 16px }
.header { display: flex; align-items: center; justify-content: space-between; padding: 16px 0 }
.logo { font-weight: 800; letter-spacing: -0.02em }
.nav { display: flex; gap: 24px }
.nav a { padding: 8px 12px; border-radius: 8px }
.nav a:hover { background: #f1f5f9 }
.menu { display: none; width: 40px; height: 40px; border: 1px solid #e2e8f0; border-radius: 8px; background: #fff }

.hero { padding: 64px 0; text-align: center }
.hero h1 { font-size: 36px; line-height: 1.1; margin: 0 0 12px }
.hero p { font-size: 18px; color: #334155; margin: 0 0 24px }
.cta { display: inline-block; background: #2563eb; color: #fff; padding: 12px 20px; border-radius: 10px }
.cta:hover { background: #1d4ed8 }

.grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; padding: 32px 0 }
.card { border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px }
.card h2 { margin: 0 0 8px; font-size: 20px }
.card p { margin: 0; color: #334155 }

.about, .contact { padding: 24px 0 }
.about h2, .contact h2 { margin: 0 0 12px; font-size: 24px }
.form { display: grid; gap: 12px; max-width: 560px }
.field { display: grid; gap: 6px }
.field input, .field textarea { border: 1px solid #e2e8f0; border-radius: 10px; padding: 10px }
.field input:focus, .field textarea:focus { outline: 2px solid #93c5fd; border-color: #93c5fd }

.footer { padding: 24px 0; color: #64748b }

@media (max-width: 768px) {
  .nav { display: none }
  .menu { display: inline-block }
  .grid { grid-template-columns: 1fr }
}
