/* Lineup legal pages — shares tokens with index.html */
:root{
  --bg:#FEF9F5;
  --bg-deep:#F6EDE2;
  --ink:#211B14;
  --ink-soft:#3A322A;
  --muted:#5C5246;
  --line:#E6DACB;
  --coral:#E85D3A;
  --coral-deep:#C2431F;
  --green:#1C342A;
  --serif:"Instrument Serif", Georgia, serif;
  --sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
  --ease-out:cubic-bezier(0.23,1,0.32,1);
  --z-nav:10;
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  background:var(--bg);color:var(--ink);
  font-family:var(--sans);font-size:1.0313rem;line-height:1.7;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit}
::selection{background:var(--coral);color:#fff}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:2px}
.wrap{width:min(1180px,100% - 3rem);margin-inline:auto}

.btn{
  display:inline-flex;align-items:center;gap:.55em;
  font-family:var(--sans);font-weight:600;font-size:.88rem;
  padding:.62em 1.3em;border-radius:999px;border:1px solid transparent;
  cursor:pointer;text-decoration:none;white-space:nowrap;
  background:var(--ink);color:var(--bg);
  transition:transform 160ms var(--ease-out), background-color 180ms ease;
}
.btn:active{transform:scale(.97)}
@media (hover:hover) and (pointer:fine){.btn:hover{background:#000}}

.nav{
  position:sticky;top:0;z-index:var(--z-nav);
  background:color-mix(in srgb, var(--bg) 86%, transparent);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid color-mix(in srgb, var(--line) 60%, transparent);
}
.nav-in{display:flex;align-items:center;justify-content:space-between;padding:1.05rem 0}
.wordmark{
  font-family:var(--serif);font-size:1.45rem;letter-spacing:.32em;
  text-decoration:none;display:flex;align-items:center;gap:.6rem;
}
.wordmark svg{flex:none}

.legal-head{padding:clamp(3rem,7vw,5rem) 0 clamp(1.8rem,4vw,2.6rem);border-bottom:1px solid var(--line)}
.legal-head .crumb{font-size:.85rem;color:var(--muted)}
.legal-head .crumb a{color:var(--coral-deep);text-decoration:none}
@media (hover:hover) and (pointer:fine){.legal-head .crumb a:hover{text-decoration:underline}}
.legal-head h1{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(2.4rem,5.4vw,4rem);line-height:1.06;letter-spacing:-0.01em;
  margin:.7rem 0 .9rem;text-wrap:balance;
}
.legal-head h1 em{font-style:italic;color:var(--coral)}
.legal-head .meta{display:flex;gap:1.6rem;flex-wrap:wrap;font-size:.85rem;color:var(--muted)}
.legal-head .meta b{color:var(--ink);font-weight:600}

.legal-body{
  display:grid;grid-template-columns:230px minmax(0,1fr);
  gap:clamp(2.5rem,6vw,5rem);
  padding:clamp(2.5rem,5vw,4rem) 0 clamp(4rem,8vw,6rem);
}
@media (max-width:860px){.legal-body{grid-template-columns:1fr}}

.toc{position:sticky;top:5.4rem;align-self:start;font-size:.88rem}
.toc p{
  font-family:var(--serif);font-style:italic;font-size:1.05rem;
  color:var(--ink);margin-bottom:.9rem;
}
.toc ol{list-style:none;display:grid;gap:.45rem;border-left:1px solid var(--line)}
.toc a{
  display:block;text-decoration:none;color:var(--muted);
  padding:.1rem 0 .1rem 1rem;margin-left:-1px;border-left:1px solid transparent;
  transition:color 160ms ease,border-color 160ms ease;
}
@media (hover:hover) and (pointer:fine){.toc a:hover{color:var(--coral-deep);border-color:var(--coral)}}
@media (max-width:860px){.toc{position:static;padding-bottom:.5rem;border-bottom:1px solid var(--line)}}

.prose{max-width:68ch}
.prose section{padding-top:1rem}
.prose section + section{margin-top:2.6rem}
.prose h2{
  font-family:var(--serif);font-weight:400;font-size:1.75rem;line-height:1.2;
  margin-bottom:.9rem;text-wrap:balance;scroll-margin-top:5.5rem;
}
.prose h2 .no{font-style:italic;color:var(--coral);margin-right:.5rem;font-size:.85em}
.prose h3{font-size:1.02rem;font-weight:600;margin:1.6rem 0 .5rem}
.prose p{margin-bottom:1rem;color:var(--ink-soft);text-wrap:pretty}
.prose ul{margin:0 0 1rem 1.2rem}
.prose li{margin-bottom:.45rem;color:var(--ink-soft)}
.prose li::marker{color:var(--coral)}
.prose strong{font-weight:600;color:var(--ink)}
.prose a{color:var(--coral-deep);text-decoration:underline;text-underline-offset:2px}
.prose .callout{
  background:var(--bg-deep);border:1px solid var(--line);border-radius:12px;
  padding:1.1rem 1.3rem;margin:1.4rem 0;font-size:.95rem;color:var(--ink-soft);
}
.prose .contact-card{
  border:1px solid var(--ink);background:#FBF4EA;
  padding:1.4rem 1.6rem;margin-top:1.2rem;
  box-shadow:8px 8px 0 0 color-mix(in srgb, var(--ink) 8%, transparent);
}
.prose .contact-card b{font-family:var(--serif);font-weight:400;font-size:1.25rem;display:block;margin-bottom:.3rem}
.prose .contact-card span{display:block;font-size:.95rem;color:var(--muted)}

footer{border-top:1px solid var(--line);padding:2.2rem 0 2.6rem}
.foot{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;flex-wrap:wrap}
.foot .wordmark{font-size:1.1rem}
.foot-links{display:flex;gap:1.6rem;list-style:none;font-size:.85rem;flex-wrap:wrap}
.foot-links a{text-decoration:none;color:var(--muted);transition:color 160ms ease}
@media (hover:hover) and (pointer:fine){.foot-links a:hover{color:var(--coral)}}
.foot small{color:var(--muted);font-size:.8rem}

@media (prefers-reduced-motion:reduce){.btn{transition:none}}
