:root{
  --bg:#FAF5F1;
  --paper:#FFFFFF;
  --ink:#2B1F24;
  --ink-soft:#4A3B43;
  --muted-ink:#5C4B53;
  --cranberry:#A93F55;
  --light-berry:#F0D5DC;
  --hairline:#D9A7B3;
}

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

html{scroll-behavior:smooth}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.75;
  overflow-x:hidden;
}

h1,h2,.toc-title{
  font-family:Georgia,"Times New Roman",serif;
}

a{color:inherit}

.legal-page .legal-header{
  background:var(--cranberry);
  color:#FFFFFF;
  padding:64px 24px 60px;
  text-align:center;
}
.legal-header-inner{max-width:860px;margin:0 auto;padding:0 24px}
.legal-home-link{
  display:inline-block;
  color:var(--light-berry);
  text-decoration:none;
  font-family:Georgia,"Times New Roman",serif;
  font-weight:700;
  font-size:20px;
  letter-spacing:4px;
  margin-bottom:26px;
}
.legal-home-link span{color:#FFFFFF}
.legal-title{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(32px,5vw,46px);
  color:#FFFFFF;
  line-height:1.15;
  margin-bottom:12px;
}
.legal-subtitle{color:#FBE6EB;font-size:15px}

.legal-content{padding:56px 0 80px}
.legal-container{max-width:820px;margin:0 auto;padding:0 24px}

.legal-toc{
  background:var(--paper);
  border:1px solid var(--hairline);
  border-left:5px solid var(--cranberry);
  border-radius:8px;
  padding:26px 30px;
  margin-bottom:44px;
}
.toc-title{
  color:var(--ink);
  font-size:20px;
  margin-bottom:14px;
}
.legal-toc ol{margin:0;padding-left:20px;color:var(--muted-ink)}
.legal-toc li{margin-bottom:8px;font-size:15px}
.legal-toc a{color:var(--cranberry);text-decoration:none;font-weight:600}
.legal-toc a:hover{text-decoration:underline}

.legal-content section{margin-bottom:44px;padding-top:4px}
.legal-content section h2{
  font-family:Georgia,"Times New Roman",serif;
  font-size:26px;
  color:var(--ink);
  margin-bottom:16px;
  padding-bottom:10px;
  border-bottom:2px solid var(--light-berry);
  scroll-margin-top:24px;
}
.legal-content section p{color:var(--ink-soft);margin-bottom:16px;font-size:16px}
.legal-content section ul,.legal-content section ol{margin:0 0 16px 22px;color:var(--ink-soft)}
.legal-content section li{margin-bottom:8px}

.legal-page .legal-content section{background-color:transparent !important}

.legal-footer{
  background:var(--ink);
  color:#C6B6BC;
  padding:34px 24px;
  text-align:center;
  font-size:14px;
}
.legal-footer a{color:var(--light-berry);text-decoration:none}
.legal-footer a:hover{text-decoration:underline}
