/* =========================================================
   Shared Footer — included on pages that don't load styles.css
   ========================================================= */

/* Container fallback for pages without styles.css */
.site-footer .container{
  width:100%;max-width:1400px;
  margin:0 auto;padding:0 28px;
  box-sizing:border-box;
}

.site-footer{
  border-top:1px solid rgba(255,255,255,.08);
  background:rgba(7,7,9,.78);
  padding:clamp(28px,4vw,44px) 0 clamp(18px,3vw,26px);
  color:#9ca3af;
  margin-top:0;
  line-height:1.5;
}

/* Top: brand + nav columns */
.ft-main{
  display:grid;
  grid-template-columns:minmax(220px,.75fr) minmax(0,1.9fr);
  align-items:start;
  gap:clamp(24px,5vw,64px);
  padding-bottom:0;
}

/* Brand block */
.ft-brand{display:flex;flex-direction:column;gap:8px}
.ft-brand-mark{
  display:inline-flex;align-items:center;gap:8px;
  text-decoration:none;transition:opacity .2s ease;
}
.ft-brand-mark:hover{opacity:.75}
.ft-brand-icon{width:26px;height:26px;display:block}
.ft-brand-name{
  font-family:'Bebas Neue',system-ui,sans-serif;
  font-size:22px;letter-spacing:.06em;
  color:#f5f5f5;line-height:1;
}
.ft-brand-tag{
  font-size:11px;font-weight:600;
  text-transform:uppercase;letter-spacing:.1em;
  color:rgba(255,255,255,.35);
}
.ft-desc{
  font-size:13px;color:rgba(255,255,255,.4);
  line-height:1.62;margin:0;max-width:360px;
  letter-spacing:.01em;
}

/* Nav columns */
.ft-cols{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(128px,1fr));
  align-items:start;
  gap:clamp(14px,2vw,28px);
}
.ft-heading{
  font-size:11px;font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;
  color:rgba(255,255,255,.5);
  margin:0 0 10px;
}
.ft-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ft-links a{
  font-size:13px;color:#9ca3af;
  text-decoration:none;
  transition:color .2s ease;
}
.ft-links a:hover{color:#f5f5f5}

/* Bottom meta row */
.ft-bottom{
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:8px;
  margin-top:clamp(18px,3vw,28px);
  padding-top:clamp(14px,2vw,18px);
  border-top:1px solid rgba(255,255,255,.08);
  font-size:12px;color:rgba(255,255,255,.3);
}
.ft-trust + .ft-bottom{margin-top:0}
.ft-copy{white-space:nowrap}
.ft-meta{white-space:nowrap}

/* Mobile stacking */
@media(max-width:900px){
  .ft-main{grid-template-columns:1fr;gap:24px}
  .ft-cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
  .ft-desc{max-width:100%}
}
@media(max-width:520px){
  .site-footer{padding:28px 0 18px}
  .site-footer .container{padding:0 18px}
  .ft-main{gap:22px}
  .ft-cols{gap:18px 16px}
  .ft-bottom{flex-direction:column;align-items:flex-start;gap:4px}
  .ft-copy,.ft-meta{white-space:normal}
}
@media(max-width:360px){
  .ft-cols{grid-template-columns:1fr}
}
