[hidden]{display:none!important}

.legal-hero{
  padding-block:var(--space-6) var(--space-5);
  background:#061113;
  color:#FFFFFF;
  --muted:#A3B4B6;
  --line:rgba(255,255,255,.08);
}
.legal-hero__kicker{
  width:fit-content;
  margin:0 0 var(--space-2);
  color:#A3B4B6;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  line-height:1.5;
  letter-spacing:.12em;
}
.legal-hero__title{
  max-width:100%;
  margin:0;
  color:#FFFFFF;
  font-size:clamp(2.25rem,4vw,3.2rem);
  line-height:1.22;
  overflow-wrap:break-word;
}
.legal-hero__lead{
  max-width:48rem;
  margin:var(--space-2) 0 0;
  color:#B9C9CA;
  line-height:1.7;
  overflow-wrap:break-word;
}
.legal-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-2);
  margin:var(--space-3) 0 0;
}
.legal-pill{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  gap:.4em;
  padding:.4em .9em;
  border-radius:var(--radius-pill);
  background:#0F2225;
  color:#DCE9E9;
  font-size:var(--text-sm);
  line-height:1;
}

.legal-layout{
  display:grid;
  grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);
  gap:var(--space-6);
  align-items:start;
  padding-block:var(--space-6);
}
.legal-toc{
  position:sticky;
  top:calc(4rem + var(--space-3));
  z-index:2;
  min-width:0;
  max-height:calc(100vh - 7rem);
  overflow-y:auto;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#0B1A1D;
  color:#FFFFFF;
  --muted:#A3B4B6;
  --line:rgba(255,255,255,.08);
}
.legal-toc__heading{
  margin:0 0 var(--space-2);
  color:#A3B4B6;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  letter-spacing:.1em;
}
.legal-index{
  display:grid;
  gap:var(--space-1);
  list-style:none;
  margin:0;
  padding:0;
}
.legal-index a{
  display:block;
  min-width:0;
  padding:.5rem .75rem;
  border-radius:var(--radius-sm);
  color:#B5C6C7;
  font-size:var(--text-sm);
  line-height:1.45;
  overflow-wrap:break-word;
}
.legal-index a:hover,
.legal-index a:focus-visible{
  color:#FFFFFF;
}
.legal-index a.is-active{
  background:#15332C;
  color:#D6F8E9;
}
.legal-toc__cta{
  display:inline-flex;
  width:auto;
  max-width:100%;
  margin-top:var(--space-3);
  justify-self:start;
}

.legal-doc{
  min-width:0;
  max-width:72ch;
}
.legal-section{
  min-width:0;
  scroll-margin-top:7rem;
}
.legal-section+.legal-section{
  margin-top:var(--space-6);
  padding-top:var(--space-4);
  border-top:1px solid rgba(255,255,255,.08);
}
.legal-section h2{
  margin:0 0 var(--space-3);
  color:#FFFFFF;
  font-size:clamp(1.3rem,2vw,1.6rem);
  line-height:1.4;
  overflow-wrap:break-word;
}
.legal-section p{
  margin:0 0 var(--space-3);
  color:#C2D0D1;
  font-size:var(--text-base);
  line-height:1.75;
  overflow-wrap:break-word;
}
.legal-section p:last-child{
  margin-bottom:0;
}
.legal-section a:not(.c-btn){
  color:#83DDBD;
  text-decoration:underline;
  text-decoration-color:rgba(131,221,189,.45);
  text-underline-offset:.2em;
  overflow-wrap:anywhere;
}
.legal-section a:not(.c-btn):hover{
  color:#B6F2D8;
}

.legal-closing{
  padding-block:var(--space-5) var(--space-6);
}
.legal-closing__card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);
  gap:var(--space-4);
  align-items:center;
  min-width:0;
  padding:var(--space-5);
  border-radius:var(--radius-lg);
  background:#0F2225;
  color:#FFFFFF;
  --muted:#A3B4B6;
  --line:rgba(255,255,255,.08);
}
.legal-closing__copy,
.legal-closing__actions{
  min-width:0;
}
.legal-closing__label{
  margin:0 0 var(--space-2);
  color:#A3B4B6;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  letter-spacing:.1em;
}
.legal-closing__copy h2{
  margin:0;
  color:#FFFFFF;
  font-size:clamp(1.5rem,2.5vw,2rem);
}
.legal-closing__copy>p:last-child{
  margin:var(--space-2) 0 0;
  color:#C2D0D1;
}
.legal-closing__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:var(--space-2);
}
.legal-closing__actions .c-btn{
  width:100%;
  white-space:normal;
}

@media(max-width:64rem){
  .legal-layout{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-4);
  }
  .legal-toc{
    position:static;
    max-height:none;
    overflow:visible;
  }
  .legal-index{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:42rem){
  .legal-hero{
    padding-block:var(--space-5);
  }
  .legal-layout{
    padding-block:var(--space-5);
  }
  .legal-index{
    grid-template-columns:minmax(0,1fr);
  }
  .legal-section+.legal-section{
    margin-top:var(--space-5);
  }
  .legal-closing__card{
    grid-template-columns:minmax(0,1fr);
    padding:var(--space-3);
  }
}
