/* CCVOD Media downloads */
:root { color-scheme: light; --ink:#17211d; --muted:#66726c; --line:#dfe6e2; --soft:#f5f8f6; --green:#176b4d; }
* { box-sizing: border-box; }
body { margin:0; min-height:100vh; color:var(--ink); background:#fff; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.site-header, main, footer { width:min(1080px,calc(100% - 40px)); margin:0 auto; }
.site-header { display:flex; align-items:center; justify-content:space-between; min-height:78px; border-bottom:1px solid var(--line); }
.brand { display:inline-flex; align-items:center; gap:11px; color:inherit; text-decoration:none; }
.brand strong { font-size:13px; letter-spacing:.13em; }
.mark { display:grid; place-items:center; width:38px; height:38px; border-radius:11px; color:#fff; background:var(--green); font-weight:850; }
nav { display:flex; gap:18px; }
nav a { color:var(--muted); font-size:14px; font-weight:650; text-decoration:none; }
nav a:hover { color:var(--ink); }
.hero { padding:92px 0 65px; border-bottom:1px solid var(--line); }
.eyebrow { margin:0 0 13px; color:var(--green); font-size:11px; font-weight:850; letter-spacing:.16em; text-transform:uppercase; }
h1 { margin:0; font-size:clamp(54px,9vw,92px); line-height:.95; letter-spacing:-.07em; }
.hero > p:last-child { max-width:560px; margin:23px 0 0; color:var(--muted); font-size:19px; line-height:1.55; }
.library { padding:55px 0 85px; }
.library-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:20px; }
h2 { margin:0; font-size:30px; letter-spacing:-.04em; }
button { min-height:39px; padding:0 14px; border:1px solid var(--line); border-radius:9px; color:var(--ink); background:#fff; font:700 13px inherit; cursor:pointer; }
.file-list { display:grid; gap:12px; }
.file-card { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:25px; padding:22px; border:1px solid var(--line); border-radius:15px; background:#fff; }
.file-card h3 { margin:0 0 7px; font-size:18px; letter-spacing:-.02em; }
.meta { display:flex; flex-wrap:wrap; gap:6px 14px; color:var(--muted); font-size:12px; }
.description { margin:11px 0 0; color:var(--muted); font-size:14px; line-height:1.5; }
.download-button { display:inline-flex; align-items:center; justify-content:center; min-height:43px; padding:0 16px; border-radius:10px; color:#fff; background:var(--green); font-size:13px; font-weight:780; text-decoration:none; white-space:nowrap; }
.empty { padding:60px 20px; border:1px dashed var(--line); border-radius:15px; color:var(--muted); text-align:center; background:var(--soft); }
.error { color:#9e3434; }
footer { display:flex; justify-content:space-between; padding:28px 0 38px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
footer a { color:inherit; }
@media(max-width:620px) {
  .brand strong { display:none; }
  .hero { padding:65px 0 50px; }
  .file-card { grid-template-columns:1fr; }
  .download-button { width:100%; }
}
