.legal-hero{
  padding-block:var(--bam-space-4) var(--bam-space-5);
  background:#f1f2f6;
  color:#1c2028;
}

.legal-hero-inner{
  min-width:0;
}

.legal-hero-copy{
  max-width:52rem;
  min-width:0;
}

.legal-hero-title{
  display:grid;
  gap:var(--bam-space-1);
  min-width:0;
}

.legal-hero-title h1{
  max-width:50rem;
  color:#1c2028;
  font-size:clamp(2.25rem,5vw,3.2rem);
  line-height:1.16;
}

.legal-hero-title p{
  max-width:46rem;
  color:#575c65;
  font-size:var(--bam-fs-4);
}

.legal-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--bam-space-1);
  margin-top:var(--bam-space-3);
}

.legal-meta span{
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  align-items:center;
  padding:.45rem .7rem;
  border-radius:999px;
  background:#ffffff;
  color:#30343c;
  font-family:var(--bam-mono);
  font-size:var(--bam-fs-1);
  line-height:1.3;
  overflow-wrap:anywhere;
}

.legal-body-section{
  padding-block:var(--bam-section-pad);
  background:#ffffff;
  color:#1c2028;
}

.legal-layout{
  display:grid;
  grid-template-columns:minmax(13rem,16rem) minmax(0,1fr);
  align-items:start;
  gap:var(--bam-space-5);
}

.legal-layout>*{
  min-width:0;
}

.legal-toc{
  position:sticky;
  top:8rem;
  min-width:0;
  padding:var(--bam-space-3);
  border-radius:var(--bam-radius-md);
  background:#f4f0ea;
  color:#242019;
}

.legal-toc h2{
  color:#242019;
  font-size:var(--bam-fs-3);
  letter-spacing:-.01em;
}

.legal-toc ol{
  margin-top:var(--bam-space-2);
  list-style:none;
}

.legal-toc li{
  border-bottom:1px solid rgba(36,32,25,.13);
}

.legal-toc li:first-child{
  border-top:1px solid rgba(36,32,25,.13);
}

.legal-toc ol a{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--bam-space-1);
  padding:.75rem 0;
  color:#3f3a33;
  font-size:var(--bam-fs-2);
}

.legal-toc ol a:hover{
  color:#8f0026;
}

.legal-toc ol a span{
  color:#8f0026;
  font-family:var(--bam-mono);
  font-size:var(--bam-fs-1);
}

.legal-toc-action{
  width:fit-content;
  max-width:100%;
  margin-top:var(--bam-space-3);
}

.legal-content{
  min-width:0;
}

.legal-section{
  display:grid;
  gap:var(--bam-space-1);
  min-width:0;
  padding-bottom:var(--bam-space-4);
  scroll-margin-top:9rem;
}

.legal-section:not(:first-child){
  padding-top:var(--bam-space-4);
  border-top:1px solid var(--bam-line);
}

.legal-section-number{
  display:inline-flex;
  width:fit-content;
  align-self:flex-start;
  color:#9a0029;
  font-size:var(--bam-fs-1);
  font-weight:600;
  letter-spacing:.08em;
}

.legal-section h2{
  max-width:45rem;
  color:#1c2028;
  font-size:clamp(1.65rem,3vw,2.35rem);
}

.legal-section h3{
  margin-top:var(--bam-space-2);
  color:#1c2028;
  font-size:var(--bam-fs-4);
}

.legal-section p{
  max-width:48rem;
  color:#4f545d;
}

.legal-section a:not(.c-btn){
  color:#8f0026;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
  overflow-wrap:anywhere;
}

.legal-section ul,
.legal-section ol{
  display:grid;
  gap:var(--bam-space-1);
  max-width:48rem;
  padding-left:1.35rem;
}

.legal-section li{
  min-width:0;
  color:#4f545d;
  overflow-wrap:anywhere;
}

.legal-callout{
  display:grid;
  gap:var(--bam-space-1);
  max-width:48rem;
  margin-block:var(--bam-space-2);
  padding:var(--bam-space-3);
  border-radius:var(--bam-radius-md);
  background:#eaf2f1;
  color:#162421;
}

.legal-callout h3{
  margin-top:0;
  color:#162421;
}

.legal-callout p,
.legal-callout li{
  color:#455954;
}

.legal-callout ol{
  max-width:none;
}

.legal-facts{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--bam-space-2);
  max-width:48rem;
  margin-top:var(--bam-space-2);
}

.legal-facts div{
  display:grid;
  min-width:0;
  gap:var(--bam-space-1);
  padding:var(--bam-space-3);
  border-radius:var(--bam-radius-md);
  background:#f2eef5;
  color:#211b27;
}

.legal-facts strong{
  color:#211b27;
  font-family:var(--bam-mono);
  font-size:var(--bam-fs-4);
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere;
}

.legal-facts span{
  min-width:0;
  color:#5b5561;
  font-size:var(--bam-fs-2);
  overflow-wrap:anywhere;
}

.legal-section .table-scroll{
  width:100%;
  margin-block:var(--bam-space-2);
}

.legal-price-table{
  min-width:43rem;
  table-layout:fixed;
  color:#1c2028;
}

.legal-price-table caption{
  padding:0 0 var(--bam-space-1);
  color:#5b6069;
  font-size:var(--bam-fs-2);
  text-align:left;
}

.legal-price-table th,
.legal-price-table td{
  text-align:left;
}

.legal-price-table tbody th{
  background:#fcfcfd;
  color:#1c2028;
}

.legal-price-table tbody th span{
  color:#666b74;
  font-family:var(--bam-mono);
  font-size:var(--bam-fs-1);
  font-weight:500;
}

.legal-price-table td{
  background:#ffffff;
  color:#1c2028;
  font-variant-numeric:tabular-nums;
}

.legal-close-section{
  padding-block:var(--bam-space-5);
  background:#ffffff;
  color:#1c2028;
}

.legal-closing{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(14rem,auto);
  align-items:end;
  gap:var(--bam-space-4);
  padding:var(--bam-space-5);
  border-radius:var(--bam-radius-lg);
  background:#111318;
  color:#fcfcfd;
}

.legal-closing-copy{
  min-width:0;
}

.legal-closing-copy .c-kicker{
  background:#eaf2f1;
  color:#162421;
}

.legal-closing-copy .c-kicker::before{
  background:#8f0026;
}

.legal-closing-copy>div{
  display:grid;
  gap:var(--bam-space-1);
}

.legal-closing h2{
  max-width:42rem;
  color:#fcfcfd;
  font-size:clamp(1.75rem,3vw,2.65rem);
}

.legal-closing p{
  max-width:39rem;
  color:#bac0ca;
}

.legal-closing-actions{
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  margin-top:0;
}

.legal-closing-actions .c-btn{
  width:100%;
}

.legal-closing .c-btn-ghost{
  background:transparent;
  color:#fcfcfd;
  border-color:rgba(252,252,253,.45);
}

.legal-closing .c-btn-ghost:hover{
  background:rgba(252,252,253,.08);
  color:#ffffff;
  border-color:rgba(252,252,253,.65);
}

@media(max-width:64rem){
  .legal-layout{
    grid-template-columns:1fr;
    gap:var(--bam-space-4);
  }

  .legal-toc{
    position:static;
  }

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

  .legal-closing{
    grid-template-columns:1fr;
    align-items:start;
  }

  .legal-closing-actions{
    align-items:flex-start;
  }

  .legal-closing-actions .c-btn{
    width:auto;
  }
}

@media(max-width:44rem){
  .legal-hero{
    padding-block:var(--bam-space-4);
  }

  .legal-hero-title p{
    font-size:var(--bam-fs-3);
  }

  .legal-toc ol{
    grid-template-columns:1fr;
  }

  .legal-facts{
    grid-template-columns:1fr;
  }

  .legal-closing{
    padding:var(--bam-space-3);
  }

  .legal-closing-actions{
    width:100%;
    align-items:stretch;
  }

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

@media(max-width:24.375rem){
  .legal-meta{
    align-items:stretch;
    flex-direction:column;
  }

  .legal-meta span{
    width:100%;
  }
}
