.legal-hero{
  padding:var(--mr-space-5) 0 var(--mr-space-6);
  overflow:hidden;
  background:var(--mr-dark);
  color:var(--mr-light)
}

.legal-hero__breadcrumb{
  margin-bottom:var(--mr-space-4);
  color:var(--mr-light)
}

.legal-hero__breadcrumb a:hover{
  color:var(--mr-accent)
}

.legal-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);
  align-items:center;
  gap:var(--mr-space-5)
}

.legal-hero__copy,
.legal-hero__summary{
  min-width:0
}

.legal-hero__copy .p-kicker{
  color:var(--mr-accent)
}

.legal-hero__copy h1{
  margin:var(--mr-space-2) 0 var(--mr-space-3);
  color:var(--mr-surface)
}

.legal-hero__lead{
  max-width:45rem;
  margin-bottom:var(--mr-space-3);
  color:var(--mr-light);
  font-size:var(--mr-fs-md)
}

.legal-hero__meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:var(--mr-space-2);
  color:var(--mr-light);
  font-size:var(--mr-fs-sm)
}

.legal-hero__summary{
  padding:var(--mr-space-3);
  border:1px solid var(--mr-text);
  border-radius:var(--mr-radius-lg);
  background:var(--mr-ink);
  box-shadow:var(--mr-shadow-raised)
}

.legal-hero__summary-icon{
  width:3rem;
  height:3rem;
  display:grid;
  place-items:center;
  margin-bottom:var(--mr-space-2);
  border-radius:var(--mr-radius-md);
  background:var(--mr-light);
  color:var(--mr-primary)
}

.legal-hero__summary-icon svg{
  width:1.5rem;
  height:1.5rem
}

.legal-hero__summary h2{
  margin-bottom:var(--mr-space-3);
  color:var(--mr-surface);
  font-size:var(--mr-fs-lg)
}

.legal-hero__summary dl{
  margin:0
}

.legal-hero__summary dl div{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:var(--mr-space-2);
  padding:var(--mr-space-2) 0;
  border-top:1px solid var(--mr-text)
}

.legal-hero__summary dt{
  color:var(--mr-accent);
  font-weight:750
}

.legal-hero__summary dd{
  min-width:0;
  margin:0;
  color:var(--mr-light)
}

.legal-layout{
  display:grid;
  grid-template-columns:minmax(max-content,14rem) minmax(0,1fr);
  align-items:start;
  gap:var(--mr-space-5)
}

.legal-toc{
  position:sticky;
  top:calc(var(--mr-header-height) + var(--mr-space-3));
  min-width:0;
  padding:var(--mr-space-3);
  border:1px solid var(--mr-line);
  border-radius:var(--mr-radius-md);
  background:var(--mr-pale)
}

.legal-toc h2{
  margin-bottom:var(--mr-space-2);
  font-size:var(--mr-fs-md);
  letter-spacing:-.02em
}

.legal-toc ol{
  list-style:none;
  margin:0;
  padding:0
}

.legal-toc li+li{
  margin-top:var(--mr-space-1)
}

.legal-toc a{
  display:block;
  padding:var(--mr-space-1);
  border-radius:var(--mr-radius-sm);
  color:var(--mr-text);
  font-size:var(--mr-fs-sm);
  transition:background .2s var(--mr-ease),color .2s var(--mr-ease)
}

.legal-toc a:hover,
.legal-toc a:focus-visible{
  background:var(--mr-light);
  color:var(--mr-primary)
}

.legal-body{
  min-width:0
}

.legal-section{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--mr-space-3);
  scroll-margin-top:calc(var(--mr-header-height) + var(--mr-space-3))
}

.legal-section+.legal-section{
  margin-top:var(--mr-space-5);
  padding-top:var(--mr-space-5);
  border-top:1px solid var(--mr-line)
}

.legal-section__number{
  width:2.75rem;
  height:2.75rem;
  display:grid;
  place-items:center;
  border-radius:var(--mr-radius-sm);
  background:var(--mr-light);
  color:var(--mr-primary);
  font-family:var(--mr-font-mono);
  font-size:var(--mr-fs-sm);
  font-weight:750;
  font-variant-numeric:tabular-nums
}

.legal-section__content{
  min-width:0
}

.legal-section__content h2{
  margin-bottom:var(--mr-space-3);
  font-size:clamp(1.8rem,3vw,var(--mr-fs-xl))
}

.legal-section__content h3{
  margin-top:var(--mr-space-4);
  margin-bottom:var(--mr-space-2)
}

.legal-section__content p{
  margin-bottom:var(--mr-space-3)
}

.legal-section__content a:not(.c-btn){
  color:var(--mr-primary);
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  overflow-wrap:anywhere
}

.legal-section__content .c-alert{
  margin-top:var(--mr-space-3);
  margin-bottom:var(--mr-space-3)
}

.legal-section__content .c-table-scroll{
  margin:var(--mr-space-3) 0
}

.legal-section__content caption{
  padding:var(--mr-space-2);
  background:var(--mr-pale);
  color:var(--mr-dark);
  font-family:var(--mr-font-heading);
  font-weight:750;
  text-align:left
}

.legal-card-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--mr-space-2);
  margin:var(--mr-space-3) 0
}

.legal-info-card{
  min-width:0;
  padding:var(--mr-space-3);
  border:1px solid var(--mr-line);
  border-radius:var(--mr-radius-md);
  background:var(--mr-surface)
}

.legal-info-card svg{
  width:1.75rem;
  height:1.75rem;
  margin-bottom:var(--mr-space-2);
  color:var(--mr-primary)
}

.legal-info-card h3{
  margin:0 0 var(--mr-space-1);
  font-size:var(--mr-fs-md)
}

.legal-info-card p{
  margin:0;
  font-size:var(--mr-fs-sm)
}

.legal-purpose-list,
.legal-checklist{
  margin:var(--mr-space-3) 0;
  padding:0;
  list-style:none
}

.legal-purpose-list{
  display:grid;
  gap:var(--mr-space-2)
}

.legal-purpose-list li{
  display:grid;
  grid-template-columns:minmax(max-content,9rem) minmax(0,1fr);
  gap:var(--mr-space-2);
  padding:var(--mr-space-2);
  border:1px solid var(--mr-line);
  border-radius:var(--mr-radius-sm)
}

.legal-purpose-list strong{
  color:var(--mr-dark)
}

.legal-purpose-list span{
  min-width:0;
  color:var(--mr-text)
}

.legal-sharing,
.legal-rights-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--mr-space-2);
  margin:var(--mr-space-3) 0
}

.legal-sharing>div,
.legal-rights-grid>div{
  min-width:0;
  padding:var(--mr-space-3);
  border-radius:var(--mr-radius-md);
  background:var(--mr-pale)
}

.legal-sharing h3,
.legal-rights-grid h3{
  margin:0 0 var(--mr-space-1);
  font-size:var(--mr-fs-md)
}

.legal-sharing p,
.legal-rights-grid p{
  margin:0;
  font-size:var(--mr-fs-sm)
}

.legal-checklist{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--mr-space-2)
}

.legal-checklist li{
  min-width:0;
  padding:var(--mr-space-2);
  border-left:3px solid var(--mr-accent);
  border-radius:0 var(--mr-radius-sm) var(--mr-radius-sm) 0;
  background:var(--mr-light);
  color:var(--mr-text)
}

.legal-request-steps{
  list-style:none;
  margin:var(--mr-space-3) 0;
  padding:0
}

.legal-request-steps li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--mr-space-2)
}

.legal-request-steps li+li{
  margin-top:var(--mr-space-3)
}

.legal-request-steps li>span{
  width:2.5rem;
  height:2.5rem;
  display:grid;
  place-items:center;
  border-radius:var(--mr-radius-sm);
  background:var(--mr-dark);
  color:var(--mr-surface);
  font-family:var(--mr-font-mono);
  font-weight:750
}

.legal-request-steps div{
  min-width:0;
  padding-bottom:var(--mr-space-3);
  border-bottom:1px solid var(--mr-line)
}

.legal-request-steps strong{
  display:block;
  margin-bottom:var(--mr-space-1);
  color:var(--mr-dark);
  font-family:var(--mr-font-heading);
  font-size:var(--mr-fs-md)
}

.legal-request-steps p{
  margin:0
}

.legal-cta{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--mr-space-4)
}

.legal-cta .p-kicker{
  margin-bottom:var(--mr-space-2)
}

.legal-cta h2{
  margin-bottom:var(--mr-space-2)
}

.legal-cta p{
  max-width:44rem;
  margin-bottom:0
}

.legal-cta__actions{
  display:grid;
  gap:var(--mr-space-2);
  min-width:0
}

@media(max-width:900px){
  .legal-hero__grid,
  .legal-layout,
  .legal-cta{
    grid-template-columns:1fr
  }

  .legal-toc{
    position:static
  }

  .legal-toc ol{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--mr-space-1)
  }

  .legal-cta__actions{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }
}

@media(max-width:640px){
  .legal-hero{
    padding:var(--mr-space-4) 0 var(--mr-space-5)
  }

  .legal-hero__breadcrumb{
    margin-bottom:var(--mr-space-3)
  }

  .legal-hero__summary dl div,
  .legal-section,
  .legal-purpose-list li{
    grid-template-columns:1fr
  }

  .legal-section__number{
    margin-bottom:0
  }

  .legal-card-grid,
  .legal-sharing,
  .legal-rights-grid,
  .legal-checklist,
  .legal-toc ol,
  .legal-cta__actions{
    grid-template-columns:1fr
  }

  .legal-section+.legal-section{
    margin-top:var(--mr-space-4);
    padding-top:var(--mr-space-4)
  }

  .legal-info-card,
  .legal-sharing>div,
  .legal-rights-grid>div{
    padding:var(--mr-space-2)
  }

  .legal-request-steps li{
    gap:var(--mr-space-1)
  }

  .legal-cta__actions .c-btn{
    width:100%;
    white-space:normal
  }
}
