.terms-hero{
  padding-block:var(--space-5) var(--space-6);
  background:#243034;
  color:#FFFFFF;
}

.terms-hero__inner{
  min-width:0;
}

.terms-hero__copy{
  display:flex;
  min-width:0;
  max-width:58rem;
  flex-direction:column;
  align-items:flex-start;
}

.terms-hero__heading{
  display:grid;
  min-width:0;
  gap:.5rem;
}

.terms-hero__heading h1{
  max-width:52rem;
  margin-inline:0;
  font-size:clamp(2.35rem,4.4vw,3.2rem);
  line-height:1.16;
  overflow-wrap:anywhere;
}

.terms-hero__heading p{
  max-width:48rem;
  margin-inline:0;
  color:#D9E0E1;
  font-size:var(--text-md);
}

.terms-hero__meta{
  display:grid;
  width:100%;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:var(--space-4) 0 0;
  border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
}

.terms-hero__meta div{
  min-width:0;
  padding:var(--space-2) var(--space-3);
}

.terms-hero__meta div:first-child{
  padding-inline-start:0;
}

.terms-hero__meta div+div{
  border-left:1px solid rgba(255,255,255,.16);
}

.terms-hero__meta dt{
  color:#B9C4C6;
  font-size:var(--text-xs);
  font-weight:650;
}

.terms-hero__meta dd{
  margin-top:.5rem;
  color:#FFFFFF;
  font-size:var(--text-sm);
  overflow-wrap:anywhere;
}

.terms-document{
  padding-block:var(--space-7);
  background:#FAF9F6;
  color:#243034;
}

.terms-layout{
  display:grid;
  grid-template-columns:minmax(15rem,18rem) minmax(0,1fr);
  align-items:start;
  gap:var(--space-5);
}

.terms-toc{
  position:sticky;
  top:calc(var(--header-size) + var(--space-2));
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-md);
  background:#FFFFFF;
  color:#243034;
}

.terms-toc__head{
  display:grid;
  gap:.5rem;
  padding-bottom:var(--space-2);
}

.terms-toc__label{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:#6B4A17;
  font-size:var(--text-xs);
  line-height:1.4;
  font-weight:800;
  letter-spacing:.08em;
}

.terms-toc h2{
  font-size:var(--text-xl);
  color:#243034;
}

.terms-toc ol{
  margin:0;
  padding:0;
  list-style:none;
  border-top:1px solid #D9DCD9;
}

.terms-toc li{
  font-size:var(--text-sm);
}

.terms-toc li+li{
  border-top:1px solid #D9DCD9;
}

.terms-toc ol a{
  display:grid;
  grid-template-columns:2rem minmax(0,1fr);
  align-items:start;
  gap:.5rem;
  padding:.75rem 0;
  color:#4C5558;
  font-size:var(--text-sm);
  line-height:1.45;
}

.terms-toc ol a:hover{
  color:#6B4A17;
}

.terms-toc ol a span{
  color:#9C3F0B;
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-variant-numeric:tabular-nums;
}

.terms-toc__action{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding-top:var(--space-3);
  border-top:1px solid #D9DCD9;
}

.terms-toc__action p{
  color:#697276;
  font-size:var(--text-sm);
}

.terms-toc__action .c-btn{
  width:auto;
  margin-top:var(--space-3);
  justify-self:start;
}

.terms-article{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--space-3);
}

.terms-clause{
  display:grid;
  min-width:0;
  grid-template-columns:3rem minmax(0,1fr);
  align-items:start;
  gap:var(--space-3);
  padding:var(--space-4);
  border-radius:var(--radius-md);
  background:#FFFFFF;
  color:#243034;
  scroll-margin-top:calc(var(--header-size) + var(--space-3));
}

.terms-clause--yellow{
  background:#F4E6B8;
  color:#302811;
}

.terms-clause--mint{
  background:#D5E7E4;
  color:#18302F;
}

.terms-clause--pink{
  background:#F2D7D5;
  color:#321E20;
}

.terms-clause__number{
  display:inline-flex;
  width:3rem;
  height:3rem;
  align-items:center;
  justify-content:center;
  border-radius:var(--radius-sm);
  background:#F4E6B8;
  color:#302811;
  font-size:var(--text-sm);
  line-height:1;
  font-weight:800;
}

.terms-clause--yellow .terms-clause__number{
  background:#243034;
  color:#FFFFFF;
}

.terms-clause--mint .terms-clause__number{
  background:#243034;
  color:#FFFFFF;
}

.terms-clause--pink .terms-clause__number{
  background:#243034;
  color:#FFFFFF;
}

.terms-clause__body{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:var(--space-2);
}

.terms-clause__body h2{
  margin-bottom:.5rem;
  color:inherit;
  font-size:clamp(1.7rem,3vw,2.35rem);
  overflow-wrap:anywhere;
}

.terms-clause__body p{
  color:inherit;
  line-height:1.72;
}

.terms-clause__body a:not(.c-btn){
  color:#6B4A17;
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
  overflow-wrap:anywhere;
}

.terms-clause--yellow .terms-clause__body a:not(.c-btn),
.terms-clause--mint .terms-clause__body a:not(.c-btn),
.terms-clause--pink .terms-clause__body a:not(.c-btn){
  color:inherit;
}

.terms-closing{
  padding-block:0 var(--space-6);
  background:#FAF9F6;
  color:#243034;
}

.terms-closing__copy{
  display:grid;
  min-width:0;
  gap:.5rem;
}

.terms-closing__copy h2{
  color:#FFFFFF;
  font-size:clamp(1.7rem,3vw,2.5rem);
}

.terms-closing__copy p{
  max-width:44rem;
  color:#D9E0E1;
}

.terms-closing__actions{
  display:flex;
  min-width:0;
  flex-direction:column;
  align-items:stretch;
  gap:var(--space-2);
}

.terms-closing__actions .c-btn-ghost{
  border-color:rgba(255,255,255,.42);
  color:#FFFFFF;
}

@media(max-width:64rem){
  .terms-layout{
    grid-template-columns:1fr;
  }

  .terms-toc{
    position:static;
  }

  .terms-toc ol{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .terms-toc li+li{
    border-top:0;
  }

  .terms-toc li{
    border-bottom:1px solid #D9DCD9;
  }

  .terms-toc li:nth-child(odd){
    padding-inline-end:var(--space-2);
  }

  .terms-toc li:nth-child(even){
    padding-inline-start:var(--space-2);
  }
}

@media(max-width:48rem){
  .terms-hero{
    padding-block:var(--space-5);
  }

  .terms-hero__meta{
    grid-template-columns:1fr;
  }

  .terms-hero__meta div{
    padding-inline:0;
  }

  .terms-hero__meta div+div{
    border-top:1px solid rgba(255,255,255,.16);
    border-left:0;
  }

  .terms-document{
    padding-block:var(--space-6);
  }

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

  .terms-toc li:nth-child(odd),
  .terms-toc li:nth-child(even){
    padding-inline:0;
  }

  .terms-toc li+li{
    border-top:0;
  }

  .terms-clause{
    grid-template-columns:1fr;
    padding:var(--space-3);
  }

  .terms-clause__number{
    width:2.75rem;
    height:2.75rem;
  }

  .terms-closing__actions{
    width:100%;
  }

  .terms-closing__actions .c-btn{
    width:100%;
    white-space:normal;
  }
}

@media(max-width:24.375rem){
  .terms-hero__heading h1{
    font-size:2.15rem;
  }

  .terms-toc,
  .terms-clause{
    padding-inline:var(--space-3);
  }
}
