.legal-hero{
  padding-block:var(--space-4);
  background:#FCFCFA;
  color:#202127;
  --legal-muted:#596168;
  --legal-rule:#E4E7E5;
}
.legal-hero__kicker{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  margin:0 0 var(--space-2);
  padding:.4em .9em;
  border-radius:999px;
  background:#E0EDBB;
  color:#263A00;
  font-size:var(--text-sm);
  font-weight:700;
  line-height:1;
}
.legal-hero__title{
  max-width:22ch;
  margin:0 0 var(--space-2);
  font-size:clamp(2rem,4vw,2.75rem);
  line-height:1.2;
  color:#202127;
}
.legal-hero__lead{
  max-width:62ch;
  margin:0;
  color:#596168;
  font-size:1rem;
  line-height:1.7;
}
.legal-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-1);
  margin:var(--space-3) 0 0;
}
.legal-pill{
  display:inline-flex;
  align-items:center;
  gap:.4em;
  width:fit-content;
  padding:.4em .9em;
  border-radius:999px;
  background:#FFFFFF;
  color:#353A40;
  font-size:var(--text-sm);
  line-height:1;
}

.legal-layout{
  display:grid;
  grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);
  align-items:start;
  gap:var(--space-4);
  padding-block:var(--space-5);
}
.legal-layout>*{min-width:0}
.legal-toc{
  position:sticky;
  top:calc(5rem + var(--space-3));
  z-index:1;
  max-height:calc(100vh - 8rem);
  overflow-y:auto;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#FCFCFA;
  color:#202127;
  --legal-muted:#596168;
  --legal-rule:#E4E7E5;
}
.legal-toc__heading{
  margin:0 0 var(--space-2);
  color:#596168;
  font-size:var(--text-sm);
  font-weight:700;
}
.legal-index{
  display:grid;
  gap:var(--space-1);
  margin:0;
  padding:0;
  list-style:none;
}
.legal-index li{min-width:0}
.legal-index a{
  display:block;
  padding:.45rem .65rem;
  border-radius:var(--radius-sm);
  color:#454E54;
  font-size:var(--text-sm);
  line-height:1.45;
  overflow-wrap:break-word;
}
.legal-index a:hover,
.legal-index a:focus-visible{
  background:#E7EFF5;
  color:#233548;
}
.legal-index a.is-active{
  background:#E0EDBB;
  color:#263A00;
  font-weight:700;
}
.legal-toc .legal-toc__cta{
  display:inline-flex;
  width:auto;
  margin-top:var(--space-3);
  color:#202127;
  border-color:color-mix(in srgb,currentColor 45%,transparent);
}

.legal-doc{
  min-width:0;
  color:#202127;
}
.legal-section{
  max-width:72ch;
  scroll-margin-top:7rem;
}
.legal-section+.legal-section{
  margin-top:var(--space-4);
  padding-top:var(--space-3);
  border-top:1px solid #E4E7E5;
}
.legal-section h2{
  margin:0 0 var(--space-3);
  color:#202127;
  font-size:var(--text-lg);
  line-height:1.4;
}
.legal-section p,
.legal-section li{
  color:#353A40;
  font-size:1rem;
  line-height:1.75;
}
.legal-section p{margin:0 0 var(--space-2)}
.legal-section p:last-child{margin-bottom:0}
.legal-section a:not(.c-btn){
  color:#155000;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
}
.legal-section a:not(.c-btn):hover{color:#344A00}
.legal-section .table-scroll{
  max-width:100%;
  margin-block:var(--space-3);
  overflow-x:auto;
}
.legal-price-table{
  display:table;
  width:100%;
  min-width:40rem;
  background:#FFFFFF;
  color:#202127;
}
.legal-price-table caption{
  padding-bottom:var(--space-1);
  color:#596168;
  font-size:var(--text-sm);
  text-align:left;
}
.legal-price-table th,
.legal-price-table td{
  color:#202127;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.legal-price-table th:first-child{min-width:13rem}

.legal-end{padding-block:var(--space-3)}
.legal-end .c-closing{
  align-items:center;
  background:#202127;
  color:#F5F6F4;
  --legal-muted:#B9BEC2;
  --legal-rule:#45474D;
}
.legal-end__copy{min-width:0}
.legal-end__copy h2{
  margin-bottom:var(--space-1);
  color:#F5F6F4;
}
.legal-end__copy p{
  max-width:56ch;
  margin:0;
  color:#B9BEC2;
}
.legal-end__actions{
  display:flex;
  flex:0 0 auto;
  flex-direction:column;
  align-items:stretch;
  gap:var(--space-2);
  min-width:11rem;
}
.legal-end__actions .c-btn{
  margin:0;
  background:#E0EDBB;
  color:#263A00;
  border-color:transparent;
}
.legal-end__actions .c-btn:hover{
  background:#F4EECF;
  color:#3C3319;
}
.legal-end__actions .c-btn-ghost{
  background:transparent;
  color:#F5F6F4;
  border-color:color-mix(in srgb,currentColor 45%,transparent);
}
.legal-end__actions .c-btn-ghost:hover{
  background:#363941;
  color:#F5F6F4;
}

@media(max-width:64rem){
  .legal-layout{grid-template-columns:minmax(0,1fr)}
  .legal-toc{
    position:static;
    max-height:none;
    overflow:visible;
  }
  .legal-index{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:42rem){
  .legal-layout{gap:var(--space-3)}
  .legal-index{grid-template-columns:minmax(0,1fr)}
  .legal-end__actions{
    width:100%;
    margin-top:var(--space-3);
  }
  .legal-end__actions .c-btn{width:100%}
}
