/* =====================================================
   WOLFPACKENT — legal pages shared stylesheet
   Loaded ONLY by privacy.html and terms-of-service.html.
   Single-column legal form centered on a strong contrast
   dark field. Body font-size is set literally to 16px.
   No rgba, no opacity decimals, no text gradients.
===================================================== */
:root{
  --law-bg:#161A1D;
  --law-card:#1E2328;
  --law-deep:#0D1013;
  --law-snow:#EAEBE6;
  --law-snow2:#C9CCC4;
  --law-amber:#C8913B;
  --law-olive:#55603F;
  --law-line:#272D33;
}
*{ margin:0; padding:0; box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  color:var(--law-snow);
  background-color:var(--law-bg);
  line-height:1.7;
  overflow-x:hidden;
}
a{ color:var(--law-amber); text-decoration:none; }
a:hover{ color:var(--law-snow); text-decoration:underline; }
ul,ol{ list-style:none; }

/* ---------- legal header ---------- */
.lawheader{
  background-color:var(--law-deep);
  border-bottom:3px solid var(--law-amber);
  padding:18px 0;
}
.lawheader .lawwrap{
  max-width:900px;
  margin:0 auto;
  padding:0 24px;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px 18px;
}
.lawbrand{
  color:var(--law-amber);
  font-weight:800;
  letter-spacing:.06em;
  font-size:1.15rem;
}
.lawbrand a{ color:var(--law-amber); }
.lawbrand a:hover{ color:var(--law-snow); text-decoration:none; }
.lawhomelink{
  margin-left:auto;
  color:var(--law-snow2);
  font-size:.9rem;
  border:1px solid var(--law-line);
  border-radius:4px;
  background-color:var(--law-card);
  padding:6px 14px;
}
.lawhomelink:hover{ color:var(--law-amber); text-decoration:none; border-color:var(--law-amber); }

/* ---------- page hero strip ---------- */
.lawhero{
  background-color:var(--law-card);
  border-bottom:1px solid var(--law-line);
  background-image:repeating-linear-gradient(145deg, transparent 0 40px, var(--law-line) 40px 44px, transparent 44px 96px);
}
.lawhero .lawwrap{
  text-align:center;
  padding:46px 24px 40px;
}
.lawhero h1{
  color:var(--law-snow);
  font-size:clamp(1.7rem,3.2vw,2.8rem);
  letter-spacing:.01em;
  line-height:1.2;
  font-weight:800;
}
.lawhero .kicker{
  display:block;
  color:var(--law-amber);
  text-transform:uppercase;
  letter-spacing:.3em;
  font-size:.74rem;
  margin-bottom:14px;
}
.lawhero p{ color:var(--law-snow2); font-size:1rem; margin-top:8px; }
.lawhero p strong{ color:var(--law-amber); }

/* ---------- table of contents ---------- */
.legal-toc{
  max-width:900px;
  margin:-24px auto 46px;
  padding:24px 24px 22px;
  background-color:var(--law-deep);
  border:1px solid var(--law-line);
  border-top:4px solid var(--law-olive);
  border-radius:8px;
  position:relative;
  z-index:2;
}
.legal-toc strong{
  display:block;
  color:var(--law-amber);
  letter-spacing:.16em;
  text-transform:uppercase;
  font-size:.86rem;
  margin-bottom:12px;
}
.legal-toc ol{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:4px 26px;
}
.legal-toc li a{
  color:var(--law-snow2);
  font-size:.93rem;
  display:inline-block;
  padding:4px 2px;
  border-bottom:1px dotted var(--law-line);
}
.legal-toc li a:hover{
  color:var(--law-amber);
  border-bottom-color:var(--law-amber);
}

/* ---------- legal body ---------- */
.legal-content{
  max-width:900px;
  margin:0 auto;
  padding:0 24px 90px;
}
/* scoped isolation: legal sections sit on an opaque page-tone card,
   important so a stray page rule can never paint through */
.legal-content section{
  background-color:#0d1013 !important;
  background:#0d1013 !important;
  border:1px solid var(--law-line);
  border-radius:6px;
  margin-bottom:8px;
}
.legal-content h2{
  color:var(--law-snow);
  font-size:1.32rem;
  background:var(--law-deep);
  border-left:5px solid var(--law-amber);
  padding:13px 18px;
  margin:0;
  letter-spacing:.01em;
}
.legal-content p{
  color:var(--law-snow2);
  font-size:0.99rem;
  padding:16px 18px 6px;
  line-height:1.75;
}
.legal-content ul li{
  color:var(--law-snow2);
  font-size:0.99rem;
  position:relative;
  padding:3px 18px 3px 38px;
}
.legal-content ul{
  padding:10px 0 14px;
}
.legal-content ul li::before{
  content:"";
  position:absolute;
  left:16px; top:13px;
  width:12px; height:7px;
  background:var(--law-olive);
  border-radius:60% 0 60% 0;
  transform:rotate(-16deg);
}
.legal-content h3{
  color:var(--law-amber);
  font-size:1.04rem;
  padding:18px 18px 0;
  letter-spacing:.02em;
}
.legal-content strong, .legal-content b { color:var(--law-snow); font-weight:700; }
.legal-content a{ color:var(--law-amber); }
.legal-content a:hover{ color:var(--law-snow); }
.legal-addr{
  background-color:var(--law-deep);
  border:1px solid var(--law-line);
  border-radius:6px;
  font-family:"Georgia",serif;
  font-style:normal;
}
.legal-addr b{ display:block; color:var(--law-snow); margin-bottom:4px; }

/* ---------- legal footer ---------- */
.lawfooter{
  background-color:var(--law-deep);
  border-top:3px solid var(--law-amber);
  padding:24px 0 28px;
}
.lawfooter .lawwrap{
  max-width:900px;
  margin:0 auto;
  padding:0 24px;
  display:flex;
  flex-wrap:wrap;
  gap:8px 26px;
  justify-content:space-between;
  font-size:.86rem;
  color:var(--law-snow2);
}
.lawfooter a{ color:var(--law-snow2); }
.lawfooter a:hover{ color:var(--law-amber); }
.lawfooter .pawprint{ color:var(--law-olive); letter-spacing:3px; }

@media (max-width:680px){
  .legal-toc ol{ grid-template-columns:1fr; }
  .lawhomelink{ margin-left:0; }
}
