/* Bracton Partners — shared styling for legal pages (privacy / terms / disclosures).
   Palette, fonts, nav and footer mirror index.html so the pages read as one site. */
:root{
  --ground:#EEF0F2; --paper:#FFFFFF; --paper-2:#E8ECEF;
  --ink:#131E29; --muted:#4E5A66; --faint:#828E9A;
  --hair:#D5DCE3; --hair-2:#E4E9ED;
  --navy:#153049; --navy-deep:#0B2135; --navy-ink:#061525;
  --gold:#B08B4F; --gold-deep:#8A6A31; --gold-lt:#D6B265;
  --display:"Libre Caslon Display",Georgia,"Times New Roman",serif;
  --heading:"Libre Caslon Text",Georgia,"Times New Roman",serif;
  --body:"Libre Franklin","Helvetica Neue","Arial",system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:clip}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{
  margin:0;background:var(--ground);color:var(--ink);font-family:var(--body);
  line-height:1.68;font-weight:400;-webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;
  font-feature-settings:"kern" 1,"liga" 1;
}

/* ---- Nav (mirrors index.html) ---- */
.nav{position:sticky;top:0;z-index:60;background:rgba(238,240,242,.82);backdrop-filter:saturate(140%) blur(12px);border-bottom:1px solid var(--hair)}
.nav .in{max-width:1120px;margin:0 auto;padding:16px 30px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.logo{display:flex;align-items:center;font-family:var(--heading);font-size:24px;font-weight:700;letter-spacing:.07em;color:var(--navy);text-transform:uppercase;text-decoration:none}
.logo .mono{width:30px;height:30px;border:1px solid var(--gold);display:inline-flex;align-items:center;justify-content:center;font-size:12.5px;color:var(--gold-deep);letter-spacing:.04em;flex:none}
.nav ul{list-style:none;display:flex;gap:30px;margin:0;padding:0}
.nav a:not(.btn){font-size:13px;color:var(--muted);text-decoration:none;letter-spacing:.02em}
.nav a:not(.btn):hover{color:var(--navy)}
.btn{font-family:var(--body);font-size:12.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:var(--navy);color:#F3F6F9;padding:11px 20px;border-radius:2px;text-decoration:none;border:1px solid var(--navy);transition:background .25s,color .25s,border-color .25s}
.btn:hover{background:var(--navy-deep)}
@media (max-width:860px){.nav ul{display:none}}

/* ---- Legal masthead ---- */
.masthead{background:linear-gradient(158deg,#153452 0%,var(--navy-deep) 55%,var(--navy-ink));color:#E9EFF5;position:relative;overflow:hidden}
.masthead::after{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),rgba(176,139,79,0) 62%)}
.masthead .in{max-width:840px;margin:0 auto;padding:78px 30px 60px}
.masthead .eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-lt);font-weight:600;margin:0}
.masthead h1{font-family:var(--display);font-weight:400;font-size:clamp(32px,5.4vw,52px);line-height:1.05;letter-spacing:-.012em;margin:20px 0 0}
.masthead .dates{margin:22px 0 0;font-size:13px;color:#9DB0C1;letter-spacing:.02em}

/* ---- Legal article ---- */
.legal{max-width:840px;margin:0 auto;padding:56px 30px 84px}
.legal .intro{font-size:17px;line-height:1.7;color:var(--muted);font-weight:300;max-width:70ch;margin:0 0 40px}
.legal h2{font-family:var(--heading);font-weight:700;font-size:22px;color:var(--navy);letter-spacing:-.005em;margin:44px 0 4px;scroll-margin-top:88px}
.legal h2 .num{color:var(--gold-deep);font-family:var(--body);font-weight:600;font-size:14px;margin-right:12px;letter-spacing:.04em}
.legal h3{font-family:var(--body);font-weight:600;font-size:15.5px;color:var(--ink);margin:26px 0 2px}
.legal p{font-size:15.5px;line-height:1.72;color:#2B3742;margin:14px 0;max-width:74ch}
.legal ul{margin:14px 0;padding-left:0;list-style:none;max-width:74ch}
.legal li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.7;color:#2B3742;margin:9px 0}
.legal li::before{content:"";position:absolute;left:2px;top:11px;width:6px;height:6px;background:var(--gold);border-radius:1px}
.legal a{color:var(--gold-deep);text-decoration:none;border-bottom:1px solid rgba(176,139,79,.4)}
.legal a:hover{color:var(--navy);border-color:var(--navy)}
.legal strong{font-weight:600;color:var(--ink)}
.legal .lede-rule{height:1px;background:var(--hair);border:0;margin:44px 0}
.legal .callout{background:var(--paper);border:1px solid var(--hair);border-left:3px solid var(--gold);border-radius:2px;padding:20px 24px;margin:28px 0}
.legal .callout p{margin:0;font-size:14.5px;color:var(--muted)}
.toc{background:var(--paper);border:1px solid var(--hair);border-radius:3px;padding:22px 26px;margin:0 0 40px}
.toc h4{font-family:var(--body);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep);font-weight:600;margin:0 0 14px}
.toc ol{margin:0;padding-left:20px;columns:2;column-gap:36px}
@media (max-width:600px){.toc ol{columns:1}}
.toc li{font-size:14px;margin:6px 0;color:var(--muted)}
.toc a{color:var(--muted);text-decoration:none;border:0}
.toc a:hover{color:var(--gold-deep)}

/* ---- Footer (mirrors index.html) ---- */
footer{background:var(--navy-ink);color:#8DA2B7}
.foot{max-width:1120px;margin:0 auto;padding:66px 30px 42px}
.foot-top{display:grid;grid-template-columns:1.35fr 2fr;gap:44px;padding-bottom:38px;border-bottom:1px solid rgba(176,139,79,.22)}
@media (max-width:760px){.foot-top{grid-template-columns:1fr;gap:34px}}
.foot-brand .brandline{font-family:var(--heading);font-size:18px;color:#EAF0F6;display:flex;align-items:center;gap:12px;letter-spacing:.09em;text-transform:uppercase;margin-bottom:15px}
.foot-brand .brandline .mono{width:28px;height:28px;border:1px solid rgba(176,139,79,.6);display:inline-flex;align-items:center;justify-content:center;font-size:12px;color:var(--gold-lt);letter-spacing:.04em;flex:none}
.foot-brand p{font-size:13.5px;line-height:1.62;color:#7E93A6;max-width:40ch;margin:0}
.foot-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media (max-width:520px){.foot-cols{grid-template-columns:1fr 1fr;gap:28px 16px}}
.foot-col h5{font-family:var(--body);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:600;margin:0 0 15px}
.foot-col a{display:block;font-size:13.5px;color:#9DB0C1;text-decoration:none;margin-bottom:11px;transition:color .2s}
.foot-col a:hover{color:var(--gold-lt)}
.foot-col a.here{color:var(--gold-lt)}
.foot-bottom{padding-top:28px;display:flex;flex-direction:column;gap:15px}
.foot-bottom .disclosure{font-size:11.5px;line-height:1.7;color:#5F7486;max-width:100ch}
.foot-bottom .copy{font-size:11.5px;color:#54697B;letter-spacing:.02em}
@media (max-width:600px){
  .nav .in{padding:12px 20px}.logo{font-size:15.5px;letter-spacing:.04em;gap:9px}
  .logo .mono{width:26px;height:26px;font-size:11px}.nav .btn{display:none}
  .masthead .in{padding:56px 20px 44px}.legal{padding:40px 20px 64px}
}
