/* ============================================================
   LEGAL STYLESHEET - privacy.html and terms-of-service.html
   Dark midnight-harbor legal theme, container-coral headings.
   Scope: .legal-page only. Never affects site header/footer.
   ============================================================ */

.legal-page{
  margin:0;
  font-size:16px; /* literal px sizing */
  font-family:"Segoe UI","Helvetica Neue",Arial,sans-serif;
  line-height:1.7;
  background-color:#101820;      /* midnight-harbor */
  color:#C3D0DA;                 /* dock-mist body text */
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

/* --- scope isolation: legal content sections never get site bg --- */
.legal-page .legal-content section{ background-color:transparent !important; }

*,*::before,*::after{ box-sizing:border-box; }

.legal-page a{ color:#E8603C; text-decoration:none; }
.legal-page a:hover{ color:#F2C53D; text-decoration:underline; }

.legal-page h1,
.legal-page h2,
.legal-page h3{ font-weight:700; line-height:1.25; }

/* ============================================================
   LEGAL HEADER - a <header>, solid background, strong contrast
   ============================================================ */
.legal-header{
  background-color:#0B1117;               /* deeper harbor, solid */
  border-bottom:4px solid #E8603C;       /* container-coral rule */
  padding:48px 24px 36px;
}
.legal-header .legal-header-inner{ max-width:880px; margin:0 auto; }
.legal-header .legal-kicker{
  color:#F2C53D;
  font-size:12px;
  letter-spacing:0.18em;
  text-transform:uppercase;
  font-weight:700;
  margin:0 0 10px;
}
.legal-header h1{
  color:#F5F7F8;                        /* floodlight-cream on dark */
  font-size:40px;
  margin:0 0 14px;
}
.legal-header .legal-sub{ color:#C3D0DA; font-size:16px; max-width:720px; margin:0 0 16px; }
.legal-header .legal-back a{ color:#E8603C; font-size:14px; letter-spacing:0.06em; }
.legal-header .legal-updated{ color:#C3D0DA; font-size:14px; }

/* ============================================================
   LEGAL LAYOUT
   ============================================================ */
.legal-body{ padding:44px 24px 56px; }
.legal-wrap{
  max-width:880px;
  margin:0 auto;
  padding:0;
}
.legal-content h2{
  color:#E8603C;                        /* container-coral, strong on dark */
  font-size:24px;
  margin:38px 0 14px;
  padding-bottom:6px;
  border-bottom:1px solid #2A3A4A;
}
.legal-content h3{
  color:#F5F7F8;
  font-size:19px;
  margin:26px 0 10px;
}
.legal-content p{
  color:#C3D0DA;
  margin:0 0 16px;
}
.legal-content ul,
.legal-content ol{
  color:#C3D0DA;
  margin:0 0 16px 20px;
  padding:0;
}
.legal-content li{ margin:0 0 8px; }
.legal-content strong{ color:#F5F7F8; font-weight:700; }

/* --- table of contents --- */
.legal-toc{
  background-color:#1A2530;             /* crane-steel */
  border:1px solid #2A3A4A;
  padding:20px 22px;
  margin:0 0 10px;
}
.legal-toc h2{
  color:#E8603C;
  font-size:18px;
  margin:0 0 12px;
  border:0;
  padding:0;
}
.legal-toc ol{
  margin:0;
  padding-left:20px;
  columns:2;
  column-gap:32px;
}
.legal-toc li{ margin:0 0 8px; font-size:15px; }
.legal-toc a{ color:#F2C53D; }
.legal-toc a:hover{ color:#E8603C; }

/* --- aside / note box --- */
.legal-note{
  background-color:#1A2530;
  border-left:4px solid #F2C53D;
  padding:14px 18px;
  margin:18px 0;
}
.legal-note p{ margin:0; color:#E7EEF3; font-size:15px; }

/* --- footer link inside legal pages --- */
.legal-outro{
  background-color:#1A2530;
  border:1px solid #2A3A4A;
  padding:22px;
  margin-top:40px;
  text-align:center;
}
.legal-outro p{ margin:0 0 8px; color:#C3D0DA; }
.legal-outro a{ color:#E8603C; font-weight:700; }

/* --- back-to-top anchor --- */
.legal-top{
  display:inline-block;
  margin-top:10px;
  color:#F2C53D;
  font-size:13px;
  letter-spacing:0.06em;
}

/* --- responsive toc --- */
@media (max-width:640px){
  .legal-header h1{ font-size:30px; }
  .legal-toc ol{ columns:1; }
  .legal-content h2{ font-size:21px; }
}
