:root { --red:#c8102e; }
* { box-sizing:border-box; margin:0; padding:0; }
body { font-family: system-ui, -apple-system, sans-serif; background:#0a0a0a; color:#fff; line-height:1.5; }
header { background:rgba(0,0,0,.95); border-bottom:1px solid #222; position:sticky; top:0; z-index:100; }
.nav { max-width:1200px; margin:auto; padding:0 24px; height:78px; display:flex; align-items:center; justify-content:space-between; }
.logo { font-size:28px; font-weight:700; letter-spacing:3px; }
.logo span { color:var(--red); }
nav a { margin:0 18px; color:#aaa; text-decoration:none; font-size:14px; }
nav a:hover { color:#fff; }
.actions .btn { margin-left:10px; }
.btn { background:var(--red); color:#fff; padding:10px 22px; border-radius:6px; text-decoration:none; font-size:14px; font-weight:600; display:inline-block; }
.btn.ghost { background:transparent; border:1px solid #444; color:#fff; }
.hero { height:82vh; background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.75)), url('https://picsum.photos/id/1015/2000/1200') center/cover; display:flex; align-items:center; }
.hero-content { max-width:820px; padding:0 24px; margin:auto; text-align:center; }
.hero h1 { font-size:68px; line-height:1.05; font-weight:700; margin:20px 0; }
.lead { font-size:21px; color:#ccc; }
.cta { margin-top:30px; padding:16px 48px; font-size:18px; display:inline-block; }
.section { max-width:1200px; margin:80px auto; padding:0 24px; }
.section h2 { font-size:32px; margin-bottom:32px; }
.grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(300px,1fr)); gap:24px; }
.card { background:#111; border-radius:16px; overflow:hidden; border:1px solid #222; transition:.2s; }
.card:hover { transform:translateY(-4px); border-color:#333; }
.card img { width:100%; height:190px; object-fit:cover; }
.card-body { padding:22px; }
.tag { font-size:10px; letter-spacing:1px; background:#222; padding:2px 8px; border-radius:4px; color:#c8102e; }
h3 { margin:12px 0 8px; font-size:19px; line-height:1.25; }
.pdf { padding:28px; text-align:center; }
.pdf-icon { font-size:42px; margin-bottom:12px; }
.dark { background:#111; padding:60px 0; border-radius:20px; }
.subtitle { color:#888; margin-bottom:30px; }
.embed { aspect-ratio:16/9; background:#000; display:flex; align-items:center; justify-content:center; color:#555; font-size:13px; }
footer { text-align:center; padding:50px 20px 30px; color:#555; font-size:12px; }