/* ============================================================
   LEGAL PAGES + FOOTER POLICY LINK
   Loaded site-wide. Kept out of style.css so the landing page
   stylesheet stays a single compiled block.
   ============================================================ */

/* --- footer: faded policy link beside the social buttons --- */
.footer-right{display:flex;align-items:center;gap:clamp(.75rem,1.6vw,1.35rem)}
.footer-legal{
  font-family:'Orbitron',sans-serif;
  font-size:clamp(.62rem,.6rem + .1vw,.72rem);
  font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--text-2);text-decoration:none;white-space:nowrap;
  opacity:.45;transition:opacity .25s var(--ease),color .25s var(--ease)
}
.footer-legal:hover,.footer-legal:focus-visible{opacity:1;color:var(--red)}
.footer-legal:focus-visible{outline:2px solid var(--red);outline-offset:3px}

@media (max-width:640px){
  .footer-right{order:1;flex-direction:column;gap:.85rem}
}

/* --- the policy page itself --- */
.legal{padding-top:clamp(6rem,14vh,9rem);max-width:min(94vw,58rem)}
.legal-title{
  font-family:'Orbitron',sans-serif;
  font-size:clamp(1.7rem,4vw,2.9rem);font-weight:800;
  text-transform:uppercase;letter-spacing:-.01em;line-height:1.12;
  margin-bottom:.6rem
}
.legal-updated{
  font-family:'Orbitron',sans-serif;
  font-size:.75rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--dim);margin-bottom:clamp(1.75rem,3.5vw,2.5rem)
}
.legal-intro{
  font-size:clamp(1rem,.95rem + .25vw,1.15rem);line-height:1.8;
  color:var(--text-2);max-width:68ch;
  padding-bottom:clamp(1.75rem,3.5vw,2.5rem);
  border-bottom:1px solid var(--border)
}

.legal-section{margin-top:clamp(2.25rem,4.5vw,3.25rem)}
.legal-heading{
  font-family:'Orbitron',sans-serif;
  font-size:clamp(1rem,1.5vw,1.25rem);font-weight:700;
  text-transform:uppercase;letter-spacing:.01em;line-height:1.3;
  margin-bottom:1rem;display:flex;align-items:baseline;gap:.75rem
}
.legal-num{font-size:.8em;font-weight:700;letter-spacing:.08em;color:var(--red);flex-shrink:0}
.legal-section p{
  font-size:clamp(.92rem,.9rem + .18vw,1.02rem);line-height:1.85;
  color:var(--text-2);max-width:72ch;margin-bottom:1rem
}
.legal-section p:last-child{margin-bottom:0}
.legal-list{
  list-style:none;margin:0 0 1rem;padding:0;
  max-width:72ch;border-left:2px solid var(--red);padding-left:clamp(1rem,2vw,1.5rem)
}
.legal-list li{
  font-size:clamp(.92rem,.9rem + .18vw,1.02rem);line-height:1.8;
  color:var(--text-2);padding:.2rem 0
}

.legal-back{margin-top:clamp(2.5rem,5vw,3.5rem);padding-top:clamp(1.5rem,3vw,2rem);border-top:1px solid var(--border)}
.legal-back a{
  font-family:'Orbitron',sans-serif;
  font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-2);text-decoration:none;transition:color .2s
}
.legal-back a:hover{color:var(--red)}
