/* Shared header and footer (partials/header.html, partials/footer.html).
   Loaded on every page by scripts/sync-layout.py with a version query, so changes
   here reach returning visitors right away (style.css is cached for a year).

   ---------- header ---------- */
.site-head .nav-links a{white-space:nowrap}
/* Four menu items plus the CTA don't fit below ~1100px: switch to the menu button there. */
@media(max-width:1100px){
  .site-head .nav-links{display:none}
  .site-head .menu-btn{display:flex}
}

/* ---------- footer ----------
   Self-contained so it renders the same on pages that use style.css and on
   standalone pages like /founding/. Uses the theme tokens both page styles define. */

.site-foot{
  border-top:1px solid var(--line);
  background:var(--bg-2);
  padding:90px 0 50px;position:relative;z-index:1;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;font-size:17px;line-height:1.65;letter-spacing:-.01em;
}
.site-foot a{color:inherit;text-decoration:none}
.site-foot .wrap{max-width:1240px;margin:0 auto;padding:0 32px;position:relative}

.site-foot .logo{display:flex;align-items:center;gap:12px;font-weight:800;font-size:19px;letter-spacing:.01em;color:var(--text)}
.site-foot .logo span{font-family:'Manrope','Inter',sans-serif;letter-spacing:-.02em}
.site-foot .logo-mark{width:32px;height:32px;object-fit:contain;display:block}
.site-foot .logo .logo-x{
  font-weight:800;background:var(--aurora);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}
.site-foot .logo .thin{font-weight:600;color:var(--text)}
[data-theme="light"] .site-foot .logo-mark{filter:brightness(0)}

.site-foot .foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:70px}
.site-foot .foot-grid > *{min-width:0}
.site-foot .foot-brand p{color:var(--muted);font-size:15px;line-height:1.65;margin:20px 0 26px;max-width:320px}
.site-foot .foot-col h4{
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint);margin:0 0 22px;font-weight:600;
}
.site-foot .foot-col a{display:block;color:var(--muted);font-size:15.5px;margin-bottom:13px;transition:color .2s}
.site-foot .foot-col a:hover{color:var(--text)}
.site-foot .foot-tag{
  display:inline-block;margin-left:5px;white-space:nowrap;padding:2px 8px;border-radius:999px;
  border:1px solid var(--accent,#2fc9e0);color:var(--accent,#2fc9e0);
  font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;vertical-align:2px;
}

.site-foot .socials{display:flex;gap:14px}
.site-foot .socials a{
  width:42px;height:42px;border-radius:50%;
  border:1px solid var(--line-strong);
  display:flex;align-items:center;justify-content:center;
  color:var(--muted);transition:.25s;
}
.site-foot .socials a:hover{color:var(--text);border-color:rgba(255,255,255,.4);transform:translateY(-2px)}
.site-foot .socials svg{width:18px;height:18px;fill:currentColor}
[data-theme="light"] .site-foot .socials a{color:var(--muted)}
[data-theme="light"] .site-foot .socials a:hover{color:var(--text);border-color:rgba(12,12,24,.4)}

.site-foot .foot-bottom{
  border-top:1px solid var(--line);padding-top:34px;
  display:flex;justify-content:space-between;align-items:center;
  color:var(--faint);font-size:14px;flex-wrap:wrap;gap:14px;
}
.site-foot .foot-bottom a{color:var(--faint);margin-left:24px}
.site-foot .foot-bottom a:hover{color:var(--text)}

@media(max-width:1020px){
  .site-foot .foot-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:860px){
  /* 44px touch targets */
  .site-foot .foot-col a{display:block;padding-block:9px;margin-bottom:2px}
  .site-foot .logo{min-height:44px}
  .site-foot .foot-bottom a{display:inline-block;padding-block:14px}
  .site-foot .socials a{width:44px;height:44px}
  .site-foot .foot-brand > a{display:inline-flex;padding-block:6px}
}
@media(max-width:640px){
  .site-foot .wrap{padding:0 22px}
  .site-foot .foot-grid{grid-template-columns:1fr}
}
