:root{
  --white:#FFFFFF;
  --paper:#FBFAF7;
  --tint:#F2F5F0;
  --sage:#5F7F5C;
  --sage-deep:#2F4A38;
  --sage-ink:#3C5A45;
  --ink:#1C2420;
  --soft:#4E5752;
  --muted:#6E7772;
  --gold:#B08D3E;
  --line:#E3E0D3;
}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--paper);color:var(--ink);
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif;
  font-size:17px;line-height:1.75;-webkit-font-smoothing:antialiased;
}
a{color:var(--sage-ink);}
::selection{background:var(--sage);color:#fff;}

.legal-header{
  position:sticky;top:0;z-index:50;
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:18px clamp(20px,5vw,64px);
  background:rgba(251,250,247,.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.legal-header a.brand{
  font-family:'Fraunces',Georgia,serif;font-weight:700;font-size:1.2rem;
  color:var(--sage-deep);text-decoration:none;letter-spacing:.02em;
}
.legal-header a.back{
  font-size:.9rem;font-weight:600;text-decoration:none;color:var(--soft);
  display:inline-flex;align-items:center;gap:6px;
}
.legal-header a.back:hover{color:var(--sage-ink);}

.legal-wrap{max-width:760px;margin:0 auto;padding:clamp(40px,7vw,72px) clamp(20px,5vw,24px) 100px;}
.legal-eyebrow{
  color:var(--sage-ink);font-size:.76rem;font-weight:600;
  letter-spacing:.3em;text-transform:uppercase;margin-bottom:14px;
}
.legal-wrap h1{
  font-family:'Fraunces',Georgia,serif;font-weight:600;
  font-size:clamp(2rem,4.5vw,2.8rem);line-height:1.1;margin-bottom:10px;letter-spacing:-.01em;
}
.legal-updated{color:var(--muted);font-size:.9rem;margin-bottom:44px;}
.legal-wrap h2{
  font-family:'Fraunces',Georgia,serif;font-weight:600;
  font-size:1.4rem;margin:40px 0 14px;color:var(--sage-deep);
}
.legal-wrap p{margin-bottom:16px;color:var(--soft);max-width:66ch;}
.legal-wrap ul{margin:0 0 16px 22px;color:var(--soft);}
.legal-wrap li{margin-bottom:8px;}
.legal-wrap strong{color:var(--ink);}
.legal-wrap table{width:100%;border-collapse:collapse;margin:20px 0;font-size:.94rem;}
.legal-wrap th,.legal-wrap td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--soft);}
.legal-wrap th{color:var(--ink);font-weight:600;}
.legal-fill{
  background:#FDF3DC;border:1px dashed var(--gold);border-radius:8px;
  padding:2px 8px;color:#7A5E17;font-weight:600;font-size:.94em;
}
.legal-note{
  margin-top:48px;padding:20px 22px;background:var(--tint);border-radius:14px;
  border:1px solid var(--line);color:var(--soft);font-size:.92rem;
}
.legal-note strong{color:var(--sage-deep);}
.legal-footer{
  text-align:center;padding:28px 20px 48px;color:var(--muted);font-size:.85rem;
}
.legal-footer a{color:var(--soft);text-decoration:underline;}
