:root{
  --brand:#c4002b;
  --brand-dark:#9b0023;
  --ink:#111827;
  --muted:#6b7280;
  --bg:#ffffff;
  --bg-alt:#f7f7f9;
  --border:#e5e7eb;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,sans-serif}
.container{max-width:1080px;margin:0 auto;padding:0 16px}
.header{background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}
.nav{display:flex;justify-content:space-between;align-items:center;height:64px}
.logo{display:flex;align-items:center;gap:8px;color:var(--brand);font-weight:700}
.nav a{margin:0 8px;color:var(--ink);font-weight:600;text-decoration:none}
.nav a:hover{color:var(--brand)}
.hero{background:linear-gradient(180deg,#fff 0,#f6f7f9 100%);padding:72px 0;text-align:center}
.hero h1{font-size:2.4rem;margin:0 0 8px}
.hero p{max-width:720px;margin:0 auto 20px;color:var(--muted)}
.btn{display:inline-block;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none;border:1px solid var(--border)}
.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}
.btn.primary:hover{background:var(--brand-dark)}
.section{padding:60px 0}
.section.alt{background:var(--bg-alt)}
.section h2{text-align:center;margin:0 0 12px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.card{border:1px solid var(--border);border-radius:12px;padding:16px;background:#fff}
.card h3{margin:0 0 6px}
.card p{margin:0 0 10px;color:var(--muted)}
.note{margin-top:12px;color:var(--muted);border:1px dashed var(--border);border-radius:10px;padding:10px;background:#fff}
.videos{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;justify-items:center}
.videos iframe{width:100%;height:210px;border:none;border-radius:12px}
form{max-width:520px;margin:0 auto;display:grid;gap:12px}
label{display:grid;gap:6px;font-weight:600}
input,textarea{border:1px solid var(--border);border-radius:10px;padding:10px;font:inherit}
.form-msg{margin-top:8px;font-weight:700}
.form-msg.ok{color:#0a7f39}
.form-msg.err{color:#b91c1c}
.muted{color:var(--muted)}
.small{font-size:.9rem}
.footer{border-top:1px solid var(--border);text-align:center;padding:18px 0;color:var(--muted)}
@media (max-width:600px){.hero h1{font-size:1.9rem}}
