/* legal.css — shared stylesheet for privacy.html and terms-of-service.html */

/* scope isolation: only legal pages are styled here */
.legal-page,
.legal-page *{box-sizing:border-box}

/* page background and text colors with strong contrast (legal pages load ONLY this sheet) */
body{
  margin:0;
  font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
}
body.legal-page{
  margin:0;
  font-family:"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.78;
  background-color:#E9EBE0;
  color:#1A1D21;
  overflow-x:hidden;
}

.legal-page a{color:#2E5A2E}
.legal-page a:hover{color:#173A17;text-decoration:none}
.legal-page .visually-hidden{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ===== TOP MARK STRIP ===== */
.legal-top{background:#171A1E;color:#EDEDE4}
.legal-top .legal-top-in{max-width:960px;margin:0 auto;padding:0 24px}
.legal-top-row{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:16px 0}
.legal-home{color:#C6D92E;font-weight:700;letter-spacing:.1em;text-transform:uppercase;font-size:13px}
.legal-home:hover{color:#FFFFFF}
.legal-plate{display:inline-flex;align-items:center;gap:10px;color:#C6D92E;font-size:12px;letter-spacing:.24em;text-transform:uppercase;font-weight:700}
.legal-plate i{display:inline-block;width:22px;height:6px;border-radius:4px;background-color:#C6D92E}
.legal-double{border-top:6px solid #C6D92E;border-top:2px solid #EDEDE4}

/* ===== CONTENT LAYOUT ===== */
.legal-wrap{max-width:960px;margin:0 auto;padding:0 24px}
.legal-banner{margin:0 -24px;background:#23272E;color:#EDEDE4;padding:54px 30px 40px;border-top:6px solid #C6D92E;border-bottom:6px solid #8C949E}
.legal-banner .crumb{color:#C6D92E;letter-spacing:.22em;text-transform:uppercase;font-size:12px;font-weight:700;margin-bottom:12px}
.legal-banner h1{font-size:46px;line-height:1.06;color:#FFFFFF;font-weight:900;margin:0 0 10px}
.legal-banner .upd{color:#8C949E;font-size:14px;margin:0}
.legal-banner .kicker{max-width:640px;color:#D8D2C2;font-size:16px;line-height:1.7;margin:16px 0 0}

.legal-hero{background:#EDEDE4;color:#1A1D21;border-bottom:4px solid #C6D92E}
.legal-hero-in{max-width:960px;margin:0 auto;padding:0 24px;padding-top:44px;padding-bottom:20px}
.legal-hero h1{margin:0;font-size:44px;line-height:1.1;color:#101318;font-weight:900}
.legal-hero p{margin:10px 0 0;color:#3A3F44;max-width:640px;font-size:15px}

/* TOC */
.legal-toc{max-width:960px;margin:34px auto;padding:0 24px}
.toc-card{border:2px solid #C6D92E;background:#FBFFF0;padding:24px 28px}
.toc-card h2{color:#101318;font-size:18px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 6px}
.toc-card p{margin:0 0 16px;color:#4a4f54;font-size:14px}
.toc-card ol{margin:0;padding:0;list-style:none;columns:2 240px;column-gap:30px}
.toc-card li{margin-bottom:9px;break-inside:avoid;padding-left:26px;position:relative}
.toc-card li::before{content:"";position:absolute;left:0;top:8px;width:14px;height:14px;background-color:#C6D92E;transform:rotate(45deg)}
.toc-card a{color:#2E5A2E;font-weight:600;text-decoration:none}
.toc-card a:hover{position:relative}
.toc-card a::after{content:"";display:block;width:0;height:3px;background-color:#C6D92E;transition:none}

/* SECTIONS scoped ONLY to .legal-page .legal-content section */
.legal-page .legal-content section{
  background-color:transparent !important;
  background-image:none !important;
  margin-bottom:10px;
  border-bottom:1px solid #cdd1c4;
  padding-bottom:28px;
}
.legal-page .legal-content{margin-top:14px}
.legal-content-in{max-width:960px;margin:0 auto;padding:0 24px}
.legal-content section h2{
  color:#101318;
  font-size:26px;
  font-weight:900;
  margin:0 0 16px;
  padding-bottom:10px;
  border-bottom:4px solid #C6D92E;
  position:relative;
  scroll-margin-top:40px;
}
.legal-content section h2 .rum{display:inline-block;margin-right:12px;background-color:#C6D92E;color:#101318;font-size:14px;padding:2px 10px;border-radius:4px;vertical-align:2px}
.legal-content p{color:#30353a;margin:0 0 16px;line-height:1.85}
.legal-content strong{color:#101318}
.legal-content ul,.legal-content ol{margin:0 0 18px 24px;padding:0}
.legal-content ul li,.legal-content ol li{margin-bottom:10px;color:#30353a;line-height:1.8}
.legal-content ul li{list-style:disc}
.legal-content ol li{list-style:decimal}
.legal-content .backlink{display:inline-block;margin-top:6px;color:#2E5A2E;font-weight:700;font-size:14px}
.legal-content .backlink a{text-decoration:none}

/* address / data boxes */
.legal-box{background:#FBFFF0;border-left:6px solid #C6D92E;padding:20px 24px;margin:24px 0;color:#30353a}
.legal-box b{color:#101318}
.legal-box p{margin:0 0 8px}
.legal-box p:last-child{margin-bottom:0}
.legal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:22px 0}
.legal-grid .cell{background:#FBFFF0;border:1px solid #d7dbc9;padding:16px 18px}
.legal-grid .cell b{display:block;color:#101318;margin-bottom:6px}
.legal-grid .cell span{color:#3A3F44;font-size:14px;line-height:1.6}

/* footer (legal) */
.legal-foot{margin-top:46px;border-top:6px solid #C6D92E;background:#171A1E;color:#D8D2C2}
.legal-foot .lf-in{max-width:960px;margin:0 auto;padding:34px 24px}
.legal-foot address{font-style:normal;color:#8C949E;line-height:1.8;font-size:14px}
.legal-foot a{color:#C6D92E}
.legal-foot .lf-row{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
.legal-foot .lf-legal{color:#8C949E;font-size:13px}
.legal-foot .lf-copy{padding-top:18px;border-top:1px solid #3A4048;margin-top:22px;color:#C6D92E;font-size:13px}

/* in-article anchor chips linking to TOC */
.toc-jump-box{display:flex;flex-wrap:wrap;gap:10px}
.toc-jump-box a{background:#EDEDE4;color:#2E5A2E;border:1px solid #c9cdbd;padding:8px 16px;border-radius:20px;text-decoration:none;font-size:13px;font-weight:600}
.toc-jump-box a:hover{border-color:#C6D92E}

@media (max-width:640px){
  .legal-banner h1{font-size:34px}
  .legal-hero h1{font-size:34px}
  .legal-content section h2{font-size:22px}
  .toc-card ol{columns:1}
}
