:root{
  --red:#A7130F;
  --red-dark:#7E0E0B;
  --red-tint:#FBEAE9;
  --ink:#15171A;
  --text-soft:#677080;
  --bg:#FFFFFF;
  --bg-alt:#F6F6F7;
  --line:#E7E7EA;
  --r-sm:0px 12px 12px 12px;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:'Lexend',sans-serif;-webkit-font-smoothing:antialiased;}
h1,h2{font-family:'Lexend',sans-serif;margin:0;letter-spacing:-.01em;text-wrap:pretty;}
p{margin:0;}
a{color:var(--red);text-decoration:none;}
a:hover{color:var(--red-dark);}
.container{max-width:1180px;margin:0 auto;padding:0 40px;}
.container.narrow{max-width:800px;}

/* header */
.site-header{background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;}
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;}
.brand{display:flex;align-items:center;gap:12px;}
.brand-mark{width:40px;height:40px;border-radius:var(--r-sm);background:var(--red);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.brand-text{display:flex;flex-direction:column;line-height:1.05;}
.brand-eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-soft);font-weight:600;}
.brand-name{font-weight:800;font-size:19px;color:var(--ink);}
.back-link{display:inline-flex;align-items:center;gap:6px;font-weight:600;font-size:15px;}

/* content */
.legal{padding:72px 0 96px;}
.eyebrow{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--red);font-weight:700;}
.legal h1{margin-top:10px;font-size:40px;font-weight:900;}
.legal h2{margin-top:40px;font-size:19px;font-weight:700;}
.legal h3{margin:24px 0 0;font-size:16px;font-weight:700;}
.legal p, .legal li{margin-top:12px;font-size:15.5px;line-height:1.7;color:#3D434D;}
.legal ul{margin:0;padding-left:20px;}
.legal .caps{font-size:14px;letter-spacing:.01em;}
.legal .source{margin-top:48px;font-size:13px;color:var(--text-soft);}

/* footer */
.site-footer{background:#0C0D0F;padding:28px 0;}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;}
.footer-bottom span{font-size:13px;color:#6E7178;}
.footer-bottom a{color:#C7CAD1;}
.footer-bottom a:hover{color:#fff;}

@media (max-width: 680px){
  .container{padding:0 20px;}
  .header-inner{height:68px;}
  .brand-mark{width:34px;height:34px;}
  .brand-name{font-size:16px;}
  .back-link span, .brand-eyebrow{display:none;}
  .legal{padding:44px 0 64px;}
  .legal h1{font-size:30px;}
}
.footer-bottom{justify-content:center;align-items:center;gap:10px 18px;}
.ws-credit{display:inline-flex;align-items:center;gap:8px;padding:5px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.05);font-size:13px;color:#E7E8EA;text-decoration:none;transition:border-color .2s, background .2s;}
.ws-credit span{opacity:.6;font-size:13px;color:inherit;}
.ws-credit::before{content:"";width:7px;height:7px;border-radius:50%;background:rgb(95,212,255);box-shadow:0 0 6px 2px rgba(95,212,255,.75),0 0 14px 4px rgba(95,212,255,.35);animation:ws-glow 2.4s ease-in-out infinite;}
.ws-credit:hover{border-color:var(--red);background:rgba(167,19,15,.1);color:#fff;}
@keyframes ws-glow{0%,100%{box-shadow:0 0 6px 2px rgba(95,212,255,.75),0 0 14px 4px rgba(95,212,255,.35);}50%{box-shadow:0 0 3px 1px rgba(95,212,255,.5),0 0 8px 2px rgba(95,212,255,.15);}}
@media (prefers-reduced-motion: reduce){.ws-credit::before{animation:none;}}
