/* ============================================================
   EJMJunkin — Legal pages stylesheet (privacy / terms-of-service)
   Loaded ONLY by legal pages. Never combined with style.css.
   ============================================================ */

*{margin:0;padding:0;box-sizing:border-box;}

.legal-page{
  background-color:#FAF7F0;
  color:#6E6553;
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  font-size:16px;
  line-height:1.75;
  overflow-x:hidden;
}

.legal-container{
  max-width:880px;
  margin:0 auto;
  padding:0 24px;
}

/* ---- Legal page header (never a <section>) ---- */

.legal-hero{
  background-color:#E9B44C;
  padding:64px 0 54px;
}

.legal-home{
  display:inline-block;
  font-size:13px;
  font-weight:800;
  letter-spacing:2px;
  color:#2A2418;
  text-decoration:none;
  text-transform:uppercase;
  background-color:#FFFFFF;
  padding:7px 14px;
  border-radius:3px;
  margin-bottom:28px;
}

.legal-kicker{
  font-size:13px;
  font-weight:800;
  letter-spacing:2px;
  color:#2A2418;
  text-transform:uppercase;
  margin-bottom:10px;
}

.legal-hero h1{
  font-size:40px;
  line-height:1.15;
  color:#2A2418;
  font-weight:800;
  margin-bottom:12px;
  letter-spacing:-0.4px;
}

.legal-updated{
  font-size:14px;
  color:#2A2418;
  font-weight:600;
}

/* ---- Table of contents ---- */

.toc{
  background-color:#FFFFFF;
  border-bottom:1px solid #E4DAC4;
  padding:40px 0;
}

.toc h2{
  font-size:16px;
  font-weight:800;
  color:#2A2418;
  text-transform:uppercase;
  letter-spacing:1.5px;
  margin-bottom:18px;
}

.toc ol{
  list-style:none;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:10px 36px;
}

.toc li a{
  display:inline-block;
  padding:6px 0;
  font-size:14px;
  color:#2A2418;
  text-decoration:none;
  font-weight:600;
  border-bottom:1px solid #E4DAC4;
}

.toc li a:hover{
  color:#E9B44C;
  border-bottom-color:#E9B44C;
}

/* ---- Legal content ---- */

.legal-content{
  padding:56px 0 72px;
}

/* Scope isolation: never let stray section backgrounds leak in */
.legal-page .legal-content section{
  background-color:transparent !important;
}

.legal-content section{
  margin-bottom:52px;
  scroll-margin-top:24px;
}

.legal-content h2{
  font-size:26px;
  line-height:1.3;
  color:#2A2418;
  font-weight:800;
  margin-bottom:16px;
  padding-top:8px;
}

.sec-num{
  display:inline-block;
  color:#E9B44C;
  font-weight:800;
  margin-right:12px;
  font-size:22px;
}

.legal-content h3{
  font-size:18px;
  color:#2A2418;
  font-weight:800;
  margin:22px 0 10px;
}

.legal-content p{
  font-size:16px;
  color:#6E6553;
  margin-bottom:14px;
  max-width:780px;
}

.legal-content ul,
.legal-content ol{
  margin:0 0 16px 22px;
  color:#6E6553;
}

.legal-content li{
  margin-bottom:8px;
}

.legal-content a{
  color:#E9B44C;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
}

.legal-content a:hover{
  color:#2A2418;
}

.legal-content strong{
  color:#2A2418;
}

/* ---- Legal footer ---- */

.legal-footer{
  background-color:#F2EADA;
  border-top:1px solid #E4DAC4;
  padding:44px 0;
}

.legal-footer p{
  font-size:14px;
  color:#6E6553;
  margin-bottom:10px;
  max-width:780px;
}

.legal-footer a{
  color:#2A2418;
  font-weight:700;
}

.legal-footer a:hover{
  color:#E9B44C;
}

/* ---- Responsive ---- */

@media(max-width:700px){
  .toc ol{
    grid-template-columns:1fr;
    gap:6px;
  }

  .legal-hero h1{
    font-size:30px;
  }

  .legal-content{
    padding:44px 0 56px;
  }
}
