/* KatchTV.com — site footer + legal pages. Loaded after app.css. */

/* ---------- Footer ---------- */
.site-foot{border-top:1px solid var(--line);padding:56px 0 40px;margin-top:20px}
.sf-top{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:40px}
.sf-brand .brand-word{text-decoration:none;color:var(--paper);font-size:1.9rem}
.sf-brand p{color:var(--muted);font-size:.9rem;max-width:300px;margin-top:12px}
.sf-col{display:flex;flex-direction:column;gap:10px}
.sf-col h4{font:600 .7rem/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--dim);margin-bottom:6px}
.sf-col a{color:var(--paper);text-decoration:none;font-size:.92rem;opacity:.82;transition:opacity .15s,color .15s;width:fit-content}
.sf-col a:hover{opacity:1;color:var(--signal)}
.sf-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 24px;margin-top:48px;padding-top:22px;border-top:1px solid var(--line);font-size:.78rem;color:var(--dim)}
.sf-bottom a{color:var(--muted)}
.sf-bottom a:hover{color:var(--paper)}
.form-legal{font-size:.78rem;color:var(--dim);margin-top:12px}
.form-legal a{color:var(--muted)}
@media (max-width:820px){
  .sf-top{grid-template-columns:1fr 1fr;gap:32px}
  .sf-brand{grid-column:1/-1}
}

/* ---------- Legal pages ---------- */
.legal-wrap{max-width:1180px;margin:0 auto;padding:0 var(--gutter)}
.legal-hero{padding:70px 0 40px;border-bottom:1px solid var(--line)}
.legal-hero .meta{margin-top:18px;color:var(--muted);font-size:.8rem;letter-spacing:.08em}
.legal-grid{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;padding:48px 0 30px}
.legal-toc{position:sticky;top:90px;align-self:start;display:flex;flex-direction:column;gap:9px}
.legal-toc .toc-k{font:600 .7rem/1 var(--mono);letter-spacing:.18em;color:var(--dim);margin-bottom:6px}
.legal-toc a{color:var(--muted);text-decoration:none;font-size:.85rem}
.legal-toc a:hover,.legal-toc a.on{color:var(--paper)}
.legal-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.legal-tabs a{border:1px solid var(--line-2);border-radius:999px;padding:7px 14px;font-size:.82rem;color:var(--muted);text-decoration:none}
.legal-tabs a.on{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.legal-body{max-width:760px}
.legal-body .summary{border:1px solid var(--line-2);border-radius:18px;padding:22px 24px;margin-bottom:40px;background:rgba(255,255,255,.02)}
.legal-body .summary h2{font:600 .72rem/1 var(--mono);letter-spacing:.18em;color:var(--signal);margin-bottom:12px}
.legal-body .summary ul{margin:0;padding-left:18px;color:var(--paper)}
.legal-body section{padding:4px 0 26px;scroll-margin-top:90px}
.legal-body h2{font:400 1.75rem/1.15 var(--serif);margin:18px 0 12px}
.legal-body h3{font-size:1rem;margin:18px 0 6px}
.legal-body p,.legal-body li{color:#cfc9bf;font-size:.96rem;line-height:1.7}
.legal-body p+p{margin-top:12px}
.legal-body ul{padding-left:20px;margin:10px 0}
.legal-body li{margin:5px 0}
.legal-body a{color:var(--signal)}
.legal-body strong{color:var(--paper)}
.legal-body .caps{text-transform:uppercase;font-size:.86rem;letter-spacing:.01em}
.legal-body .note{font-size:.82rem;color:var(--dim);border-top:1px solid var(--line);padding-top:18px;margin-top:20px}
@media (max-width:860px){
  .legal-grid{grid-template-columns:1fr;gap:20px}
  .legal-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:8px 16px}
  .legal-toc .toc-k{width:100%}
}
.top-actions a.chip-btn{text-decoration:none;color:var(--paper)}
