/* Shared legal stylesheet for privacy.html and terms-of-service.html */

:root{
  --legal-bg:#EADCE8;
  --legal-text:#1E223C;
  --legal-accent:#F07C4E;
  --legal-tape:#8A605E;
  --legal-azure:#367884;
  --legal-card:#FCEEE8;
  --legal-rule:#C6B4C2;
}

body{
  font-size:16px;
  margin:0;
  padding:0;
  background-color:var(--legal-bg);
  color:var(--legal-text);
  font-family:Georgia,"Times New Roman",serif;
  line-height:1.68;
  overflow-x:hidden;
}

.legal-header{
  background-color:var(--legal-text);
  padding:26px 0;
  border-bottom:6px solid var(--legal-tape);
}
.legal-header-inner{
  max-width:860px;
  margin:0 auto;
  padding:0 24px;
}
.legal-header h1{
  color:#EADCE8;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.9rem;
  line-height:1.15;
  margin:0 0 6px 0;
}
.legal-header p{
  color:#FCEEE8;
  margin:0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:0.8rem;
  letter-spacing:0.1em;
  text-transform:uppercase;
}

.legal-shell{
  max-width:860px;
  margin:0 auto;
  padding:0 24px;
}

.legal-toc{
  background-color:var(--legal-card);
  border-left:6px solid var(--legal-accent);
  padding:24px 26px;
  margin:36px 0 40px 0;
}
.legal-toc h2{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1rem;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--legal-text);
  margin:0 0 14px 0;
}
.legal-toc ol{
  margin:0;
  padding-left:22px;
  columns:2;
  column-gap:34px;
}
.legal-toc li{
  margin-bottom:7px;
  break-inside:avoid;
}
.legal-toc a{
  color:var(--legal-azure);
  text-decoration:none;
  font-size:0.95rem;
}
.legal-toc a:hover{
  text-decoration:underline;
  text-decoration-color:var(--legal-accent);
  text-underline-offset:3px;
}

.legal-content section{
  background-color:transparent !important;
  margin-bottom:34px;
  scroll-margin-top:24px;
}
.legal-content h2{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.35rem;
  line-height:1.25;
  color:var(--legal-text);
  border-bottom:2px solid var(--legal-azure);
  padding-bottom:8px;
  margin:0 0 14px 0;
}
.legal-content h3{
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:1.05rem;
  color:var(--legal-text);
  margin:22px 0 8px 0;
}
.legal-content p{
  margin:0 0 1em 0;
  color:var(--legal-text);
}
.legal-content ul,
.legal-content ol{
  margin:0 0 1em 0;
  padding-left:24px;
  color:var(--legal-text);
}
.legal-content li{
  margin-bottom:8px;
}
.legal-content a{
  color:var(--legal-azure);
  text-decoration:underline;
  text-decoration-color:var(--legal-accent);
  text-underline-offset:3px;
}
.legal-content strong{
  color:var(--legal-text);
}

.legal-meta{
  background-color:var(--legal-tape);
  color:#FCEEE8;
  padding:20px 26px;
  margin:0 0 36px 0;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:0.88rem;
  line-height:1.7;
}
.legal-meta a{
  color:#FCEEE8;
  text-decoration:underline;
}

.legal-footer{
  background-color:var(--legal-text);
  padding:32px 0 36px 0;
  margin-top:52px;
}
.legal-footer-inner{
  max-width:860px;
  margin:0 auto;
  padding:0 24px;
  color:#EADCE8;
  font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;
  font-size:0.86rem;
  line-height:1.8;
}
.legal-footer a{
  color:#FCEEE8;
  text-decoration:underline;
  text-decoration-color:var(--legal-accent);
  text-underline-offset:3px;
}
.legal-footer p{
  margin:0 0 8px 0;
  color:#EADCE8;
}

@media (max-width:700px){
  .legal-toc ol{columns:1;}
  .legal-header h1{font-size:1.5rem;}
  .legal-content h2{font-size:1.18rem;}
}
