/* Long-form legal pages. Room pages deliberately own the viewport; legal
   documents do the opposite and use ordinary scrolling and reflow. */
.legal-page{
  min-height:100dvh;
  height:auto;
  overflow:auto;
  background:
    radial-gradient(circle at 78% 8%,rgba(229,140,62,.08),transparent 28rem),
    var(--ground);
  color:var(--ink);
}
.legal-header{
  width:min(920px,calc(100% - 40px));
  margin:0 auto;
  padding:24px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-block-end:1px solid var(--line);
}
.legal-brand,.legal-back{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-2);
}
.legal-brand{display:flex;align-items:center;gap:9px}
.legal-brand .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}
.legal-brand:hover,.legal-back:hover{color:var(--ink)}
.legal-main{
  width:min(760px,calc(100% - 40px));
  margin:0 auto;
  padding:clamp(56px,8vw,96px) 0 72px;
}
.legal-kicker,.legal-effective{
  margin:0;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--accent);
}
.legal-main h1{
  margin:16px 0 12px;
  max-width:14ch;
  font-family:var(--font-display);
  font-size:clamp(48px,8vw,84px);
  font-weight:400;
  line-height:.94;
  letter-spacing:-.035em;
}
.legal-effective{color:var(--ink-3)}
.legal-intro{
  margin:36px 0 56px;
  max-width:62ch;
  font-family:var(--font-display);
  font-size:clamp(21px,3vw,29px);
  line-height:1.35;
  color:var(--ink-2);
}
.legal-section{
  padding:34px 0;
  border-block-start:1px solid var(--line);
}
.legal-section h2{
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size:clamp(26px,4vw,36px);
  font-weight:400;
  line-height:1.1;
}
.legal-section p,.legal-section li{
  max-width:72ch;
  color:var(--ink-2);
  font-size:16px;
  line-height:1.72;
}
.legal-section p{margin:0 0 14px}
.legal-section p:last-child{margin-block-end:0}
.legal-section ul{margin:14px 0 0;padding-inline-start:22px}
.legal-section li+li{margin-block-start:10px}
.legal-links{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none}
.legal-links a{
  color:var(--accent);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:4px;
}
.legal-related{margin-block-start:22px}
.legal-page>.site-footer{
  position:static;
  width:min(920px,calc(100% - 40px));
  margin:0 auto;
  padding:24px 0 max(24px,env(safe-area-inset-bottom));
  border-block-start:1px solid var(--line);
}
@media(max-width:600px){
  .legal-header{align-items:flex-start;flex-direction:column;gap:12px}
  .legal-main{padding-block-start:48px}
  .legal-intro{margin-block-end:40px}
  .legal-section{padding-block:28px}
}
