/* =====================================================================
   FIRST BASE — Legal pages (Privacy Policy, Terms & Conditions)
   Banner: dark (#1a1a1a), constrained to 1020px.
   Content: original light theme, constrained to 1020px.
   ===================================================================== */

/* ---------- Banner ---------- */
.legal-banner{
  background:#040404;
  padding:110px 0 70px;
  margin-top:-88px;
}
.legal-banner-inner{
  max-width:1020px;
  margin:0 auto;
  padding:0 24px;
}
.legal-banner .calc-crumb{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  color:rgba(255,255,255,0.55);
  margin-bottom:18px;
}
.legal-banner .calc-crumb a{ color:rgba(255,255,255,0.55); text-decoration:none; }
.legal-banner .calc-crumb a:hover{ color:var(--gold); }
.legal-banner h1{
  color:var(--white);
  font-size:40px;
  font-weight:600;
  letter-spacing:-0.5px;
  margin:10px 0 14px;
}
.legal-banner p{
  color:rgba(255,255,255,0.65);
  font-size:15.5px;
  line-height:1.6;
  max-width:640px;
  margin:0;
}

@media (max-width:767px){
  .legal-banner{ padding:90px 0 50px; }
  .legal-banner h1{ font-size:28px; }
}

/* ---------- Content section (original light theme) ---------- */
.legal-section{
  padding:70px 0 90px;
  background:var(--white);
}
.legal-wrap{
  max-width:1020px;
  margin:0 auto;
  padding:0 24px;
}
.legal-updated{
  display:inline-block;
  font-size:12.5px;
  font-weight:600;
  color:var(--gold-dark);
  background:rgba(201,162,74,0.1);
  border:1px solid rgba(201,162,74,0.3);
  border-radius:20px;
  padding:6px 16px;
  margin-bottom:22px;
}
.legal-intro{
  font-size:15.5px;
  line-height:1.75;
  color:#5b564c;
  margin-bottom:36px;
  padding-bottom:36px;
  border-bottom:1px solid var(--line);
}
.legal-wrap h2{
  font-size:22px;
  font-weight:700;
  color:var(--ink);
  margin:40px 0 14px;
  scroll-margin-top:100px;
}
.legal-wrap h2:first-of-type{ margin-top:0; }
.legal-wrap h3{
  font-size:16px;
  font-weight:700;
  color:var(--ink);
  margin:22px 0 10px;
}
.legal-wrap p{
  font-size:14.5px;
  line-height:1.8;
  color:#5b564c;
  margin:0 0 14px;
}
.legal-wrap ul, .legal-wrap ol{
  margin:0 0 16px;
  padding-left:22px;
}
.legal-wrap li{
  font-size:14.5px;
  line-height:1.8;
  color:#5b564c;
  margin-bottom:8px;
}
.legal-wrap li strong{ color:var(--ink); }
.legal-wrap a{
  color:var(--gold-dark);
  text-decoration:underline;
  text-underline-offset:2px;
}
.legal-wrap strong{ color:var(--ink); }

.legal-toc{
  background:var(--cream);
  border:1px solid var(--line);
  border-radius:14px;
  padding:22px 26px;
  margin-bottom:40px;
}
.legal-toc h4{
  font-size:13px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.04em;
  color:var(--ink);
  margin:0 0 12px;
}
.legal-toc ol{
  margin:0;
  padding-left:20px;
  columns:2;
  column-gap:28px;
}
.legal-toc li{
  font-size:13.5px;
  line-height:1.9;
  margin-bottom:0;
}
.legal-toc a{
  color:#5b564c;
  text-decoration:none;
}
.legal-toc a:hover{ color:var(--gold-dark); }

.legal-contact-box{
  background:#0a0a0a;
  border-radius:16px;
  padding:30px 32px;
  margin-top:44px;
}
.legal-contact-box h3{
  color:#ffffff;
  font-size:17px;
  margin:0 0 8px;
}
.legal-contact-box p{
  color:rgba(255,255,255,0.65);
  font-size:14px;
  margin:0 0 16px;
}
.legal-contact-box a.legal-email{
  color:var(--gold);
  font-weight:600;
  text-decoration:none;
}

@media (max-width:767px){
  .legal-toc ol{ columns:1; }
  .legal-contact-box{ padding:24px 22px; }
}
