/* The footer on every page but the 404: Vythos and a line about it on the
   left, three columns of links, and the company line the law asks for under
   them. The markup is in partials/footer.html, and build.py copies it into
   each page between the FOOTER markers — edit it there, not in a page.
   Colours come from each page's theme tokens; the legal pages have no
   --faint or --purple3, hence the fallbacks. */

.site-foot{
  position:relative;z-index:1;
  border-top:1px solid var(--line);
  background:rgba(15,12,26,0.5);
  color:var(--muted);font-size:14px;line-height:1.6;
}
[data-theme="light"] .site-foot{background:rgba(255,255,255,0.55);}
.site-foot a{color:inherit;text-decoration:none;transition:color .2s;}
.site-foot a:hover{color:var(--text);}
.site-foot a:focus-visible{outline:2px solid var(--purple,#7c3aed);outline-offset:3px;border-radius:4px;}
.site-foot p{margin:0;max-width:none;}

.foot-inner{
  max-width:1120px;margin:0 auto;padding:72px 48px 48px;
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr);gap:56px;
}
.foot-logo{display:inline-flex;align-items:center;gap:10px;}
.foot-vyto{width:40px;height:40px;filter:drop-shadow(0 2px 10px rgba(6,214,245,0.3));}
.foot-logo .wordmark{height:26px;width:auto;display:block;}
[data-theme="light"] .site-foot img.wordmark{content:url("/img/vythos-wordmark-dark.png");}
.site-foot .foot-tag{margin-top:18px;max-width:320px;font-size:14.5px;line-height:1.65;}
.site-foot .foot-start{
  display:inline-flex;align-items:center;gap:6px;margin-top:20px;
  font-weight:700;color:var(--purple3,var(--link));
}
.site-foot .foot-start:hover{text-decoration:underline;}
.foot-social{
  display:flex;align-items:center;justify-content:center;
  width:38px;height:38px;margin-top:24px;border-radius:50%;
  border:1px solid var(--line2,var(--line));
}
.foot-social:hover{border-color:var(--purple2,#9d5cf5);}

.foot-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
.site-foot .foot-h{
  font-family:'DM Mono',ui-monospace,monospace;font-size:11px;font-weight:500;
  letter-spacing:.13em;text-transform:uppercase;color:var(--text);
  margin-bottom:18px;
}
.foot-col ul{list-style:none;padding:0;margin:0;display:grid;gap:12px;}
.foot-col li{margin:0;}

.foot-base{
  max-width:1120px;margin:0 auto;padding:24px 48px 36px;
  border-top:1px solid var(--line);
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;
  font-size:12.5px;color:var(--faint,var(--muted));
}

@media(max-width:900px){
  .foot-inner{grid-template-columns:1fr;gap:40px;padding:56px 24px 40px;}
  .foot-base{padding:22px 24px 32px;}
}
@media(max-width:560px){
  .foot-inner{padding:48px 16px 36px;}
  .foot-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px;}
  .foot-base{padding:20px 16px 28px;}
}
