/* KPP HOLDINGS SERIES C, LLC - legal pages
   Light vault theme. Legal pages load ONLY this stylesheet.
   Must define its own page background and text with strong contrast. */

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

html{background:#F4F3EC;}
body{
  font-family:Georgia,"Times New Roman",serif;
  font-size:16px;line-height:1.72;
  color:#2C3230;background:#F4F3EC;
  overflow-x:hidden;
}

a{color:#3d6d5a;text-decoration:underline;}
a:hover{color:#2c5245;}

/* scope isolation - only target legal pages and legal content sections */
.legal-page .legal-content section,
.legal-wrap .legal-content section{background:transparent !important;color:#2C3230;}

/* structure */
.legal-wrap{max-width:1040px;margin:0 auto;padding:0 24px;}

.legal-header{
  background:#252B28;
  padding:54px 0;margin-bottom:0;
  border-bottom:6px solid #4E8770;
  position:relative;
}
.legal-header-in{max-width:960px;margin:0 auto;padding:0 24px;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.legal-header a.home{
  color:#7f8f86;font-size:13px;font-weight:bold;
  letter-spacing:.12em;text-transform:uppercase;text-decoration:none;
  border:1px solid #4E8770;padding:8px 14px;border-radius:3px;
  display:inline-flex;align-items:center;
}
.legal-header a.home:hover{background:#4E8770;color:#FCFBF6;}
.legal-brandplate a{color:#FCFBF6;text-decoration:none;font-family:Georgia,serif;}
.legal-brandplate{display:flex;align-items:center;gap:10px;}
.legal-branddot{width:14px;height:14px;border:3px solid #4E8770;border-radius:50%;}
.legal-orgname{
  margin:14px 0 0;color:#FCFBF6;font-size:15px;letter-spacing:.1em;
  text-transform:uppercase;font-weight:bold;
}

.legal-head-kicker{color:#4E8770;font-size:13px;font-weight:bold;letter-spacing:.3em;text-transform:uppercase;}
.legal-h1{
  color:#F4F3EC;font-size:44px;line-height:1.05;margin-top:10px;
  font-family:Georgia,serif;border-left:6px solid #4E8770;padding-left:18px;
}
.legal-tagline{color:#EFE9D8;margin-top:16px;max-width:640px;font-size:17px;}

.legal-h2wrap{background:#EFE9D8;padding:30px 0 10px;}
.legal-h2head{font-size:20px;color:#2C3230;margin-bottom:10px;}
.legal-h2head span{color:#4E8770;}
.legal-toc p{color:#4a4f49;margin:4px 0;}
.legal-toc a{text-decoration:none;color:#3d6d5a;font-weight:bold;}
.legal-toc a:hover{text-decoration:underline;}

.legal-h2wrap blockquote{
  border-left:4px solid #4E8770;padding:10px 16px;background:#F4F3EC;
  font-style:italic;color:#555a54;
}
.legal-content{padding:44px 0 20px;}
.legal-page{background:#F4F3EC;}

/* rule divider for sections of the toc */
.legalh2rule{height:4px;background:#252B28;margin:26px 0 0;width:100%;}

/* the toc anchors are placed as <a> id="sec" */
.legal-anchor{scroll-margin-top:20px;}

/* section blocks for legal pages. each group gets a wrapper with strong visual diff, no gradients */
.lblock{background:#FCFBF6;border:1px solid #d7d3c2;padding:30px 32px;margin:0 0 8px;border-radius:5px;}
.lblock.bone{background:#EFE9D8;border-color:#bdb9a2;}

.legal-content h2{font-family:Georgia,serif;font-size:25px;color:#2C3230;
  margin:0 0 14px;line-height:1.25;}
.legal-content h2 span{color:#4E8770;margin-right:8px;}
.legal-content h3{font-size:18px;color:#3d6d5a;margin:22px 0 8px;font-family:Georgia,serif;}

.legal-content p{margin:0 0 15px;color:#3f443d;}
.legal-content ul,.legal-content ol{margin:0 0 16px 26px;color:#3f443d;}
.legal-content li{margin-bottom:8px;}
.legal-content .last-update{
  color:#4E8770;font-weight:bold;font-size:14px;letter-spacing:.03em;
  background:#F4F3EC;padding:8px 14px;display:inline-block;border-radius:3px;border:1px solid #4E8770;
}
.legal-content .dt-hint{font-size:13px;color:#777;margin:4px 0 0;}

/* the intro paragraph mention developer */
.legal-developer{background:#FCFBF6;border-left:6px solid #4E8770;color:#4a4f49;padding:16px 20px;border-radius:3px;}

/* strong contrast for any muted text on dark bands you add */
.legal-cap{color:#555a54;}

/* summary box */
.legal-box{
  background:#252B28;color:#EFE9D8;padding:28px 30px;margin:26px 0;border-radius:5px;
  border:2px solid #4E8770;
}
.legal-box p{color:#dcd6c0;}
.legal-box strong{color:#f7f4d6;}
.legal-content .legal-box p{color:#e8e2cb;}

/* table of contents navigation on legal pages */
.toc-nav{list-style:none;margin:16px 0 0;display:flex;flex-direction:column;gap:2px;padding-left:0;}
.toc-nav li{margin:0;padding:0;}
.toc-nav li a{display:inline-flex;padding:3px 0;}
.toc-nav li:before{content:"→";color:#4E8770;font-weight:bold;display:inline-block;width:16px;}

/* strong footer */
.legal-footer{background:#252B28;color:#7f8f86;padding:40px 0 0;border-top:6px solid #4E8770;margin-top:40px;}
.legal-footer-in{max-width:960px;margin:0 auto;padding:0 24px;
  display:flex;flex-wrap:wrap;gap:26px 40px;justify-content:space-between;}
.legal-foot-card{max-width:960px;margin:0 auto;padding:22px 24px;background:#FCFBF6;color:#2C3230;
  border-top:4px solid #4E8770;
  display:flex;flex-wrap:wrap;gap:8px 40px;justify-content:space-between;}
.legal-foot-card dt{font-weight:bold;}
.legal-foot-card dd{margin:0;color:#4a4f49;}
.legal-foot-card a{color:#3d6d5a;}
.legal-copyright{max-width:960px;margin:0 auto;padding:18px 24px 26px;color:#4E8770;font-size:13px;letter-spacing:.06em;text-align:center;}
.legal-copyright:before{content:"© ";}

.legal-foot-nav{display:flex;gap:18px;flex-wrap:wrap;}
.legal-foot-nav a{
  color:#9fbfaf;text-decoration:none;letter-spacing:.08em;font-weight:bold;
  text-transform:uppercase;font-size:13px;
}
.legal-foot-nav a:hover{color:#FCFBF6;}

/* developer attribution */
.legal-dev{font-size:13px;color:#7f8f86;letter-spacing:.1em;}

@media(max-width:720px){
  .legal-h1{font-size:30px;}
  body{font-size:16px;}
  .legal-content{padding:34px 0 12px;}
  .lblock{padding:22px 18px;}
}
@media(max-width:560px){.legal-h1{font-size:24px;}}
