:root { --max: 1100px; }
* { box-sizing: border-box; }
body { margin: 0; font-family: system-ui, Arial, sans-serif; line-height: 1.5; color: #0a0a0a; }
a { color: inherit; text-decoration: none; }
.nav { display:flex; justify-content:space-between; align-items:center; padding: 12px 20px; border-bottom:1px solid #eee; }
.brand { display:flex; align-items:center; gap:10px; font-weight:700; }
.brand img { width:28px; height:28px; }
.container { max-width: var(--max); margin: 0 auto; padding: 28px 20px; }
.hero { text-align:center; padding: 40px 0; }
.hero.small { padding: 24px 0; }
.cta { display:inline-block; padding:10px 16px; border-radius:10px; border:1px solid #111; font-weight:600; }
.grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:16px; margin-top: 16px; }
.grid-2 { display:grid; grid-template-columns: repeat(2, 1fr); gap:12px; }
.card { border:1px solid #eee; border-radius:12px; padding:16px; box-shadow: 0 1px 6px rgba(0,0,0,0.04); }
.card .checkbox { display:flex; align-items:center; gap:8px; }
.card input[type="text"], .card select, .card textarea { width:100%; padding:10px; border:1px solid #ddd; border-radius:10px; }
.media-embed .iframe-wrap { position:relative; padding-top:56.25%; }
.media-embed iframe { position:absolute; inset:0; width:100%; height:100%; }
.contact { margin-top: 32px; }
.copy ul { padding-left: 18px; }
.footer { padding: 20px; text-align:center; border-top:1px solid #eee; }
.hidden { position:absolute; left:-10000px; top:auto; width:1px; height:1px; overflow:hidden; }
.fineprint { font-size: 12px; color:#555; }
@media (max-width: 760px) {
  .grid { grid-template-columns: 1fr; }
  .grid-2 { grid-template-columns: 1fr; }
}