.terms-page{
  background:var(--color-paper);
  color:var(--color-ink)
}

.terms-page h1,
.terms-page h2,
.terms-page h3{
  font-family:var(--font-body)
}

.terms-hero{
  padding-block:var(--space-6) var(--space-5);
  background:#fff8ec;
  color:#1c1922
}

.terms-hero__inner{
  max-width:var(--container-standard)
}

.terms-hero__copy{
  display:grid;
  max-width:54rem;
  gap:var(--space-1);
  min-width:0
}

.terms-hero__copy h1{
  max-width:50rem;
  font-size:clamp(2.35rem,5vw,3.2rem);
  line-height:1.16;
  overflow-wrap:anywhere
}

.terms-hero__lead{
  max-width:50rem;
  color:#5d5864;
  font-size:var(--fs-3);
  line-height:1.65
}

.terms-hero__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-1);
  padding-top:var(--space-2);
  color:#5d5864;
  font-size:var(--fs-1)
}

.terms-document{
  padding-block:var(--space-6);
  background:#efedf5;
  color:#1c1922
}

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

.terms-layout>*{
  min-width:0
}

.terms-index{
  position:sticky;
  top:8.5rem;
  display:grid;
  gap:var(--space-3);
  padding:var(--space-3);
  border-radius:var(--radius-lg);
  background:#fff8ec;
  color:#1c1922
}

.terms-index__head{
  display:grid;
  gap:var(--space-1)
}

.terms-index__head h2{
  font-size:var(--fs-4)
}

.terms-index__head p,
.terms-index__contact p{
  color:#676270;
  font-size:var(--fs-1)
}

.terms-index__code{
  color:#29245c;
  font-size:var(--fs-0);
  font-weight:700;
  letter-spacing:.08em
}

.terms-index__nav{
  display:grid
}

.terms-index__nav a{
  display:grid;
  grid-template-columns:2rem minmax(0,1fr);
  gap:var(--space-1);
  padding-block:.7rem;
  border-bottom:1px solid var(--line-paper);
  color:#3f3a47;
  font-size:var(--fs-1);
  line-height:1.4
}

.terms-index__nav a:first-child{
  border-top:1px solid var(--line-paper)
}

.terms-index__nav a:hover{
  color:#29245c
}

.terms-index__nav a span{
  min-width:0;
  overflow-wrap:anywhere
}

.terms-index__nav a span:first-child{
  color:#6c68a0;
  font-size:var(--fs-0)
}

.terms-index__contact{
  display:grid;
  gap:var(--space-1);
  padding-top:var(--space-2)
}

.terms-index__contact .c-btn{
  margin-top:var(--space-2)
}

.terms-article{
  display:grid;
  gap:var(--space-4)
}

.terms-clause{
  scroll-margin-top:9rem;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:#fff;
  color:#1c1922;
  box-shadow:var(--shadow-soft)
}

.terms-clause__heading{
  display:grid;
  grid-template-columns:3rem minmax(0,1fr);
  gap:var(--space-2);
  align-items:start;
  padding:var(--space-3) clamp(1.5rem,4vw,2.5rem);
  background:#fff8ec;
  color:#1c1922
}

.terms-clause__heading>div{
  display:grid;
  min-width:0;
  gap:var(--space-1)
}

.terms-clause__heading h2{
  font-size:clamp(1.55rem,3vw,2.15rem);
  overflow-wrap:anywhere
}

.terms-clause__heading p{
  color:#676270
}

.terms-clause__number{
  display:inline-flex;
  width:3rem;
  height:3rem;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#29245c;
  color:#fff;
  font-size:var(--fs-1);
  line-height:1
}

.terms-clause__body{
  display:grid;
  gap:var(--space-2);
  padding:clamp(1.5rem,4vw,2.5rem)
}

.terms-clause__body p{
  max-width:64rem
}

.terms-clause__body a:not(.c-btn){
  color:#29245c;
  font-weight:700;
  text-decoration:underline;
  text-decoration-color:color-mix(in srgb,#29245c 35%,transparent);
  text-underline-offset:.2em;
  overflow-wrap:anywhere
}

.terms-fact-row{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,10rem),1fr));
  margin-top:var(--space-2);
  border-top:1px solid var(--line-paper);
  border-bottom:1px solid var(--line-paper)
}

.terms-fact-row>div{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2)
}

.terms-fact-row strong{
  color:#29245c;
  font-family:var(--font-mono);
  font-size:var(--fs-3);
  font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere
}

.terms-fact-row span{
  color:#676270;
  font-size:var(--fs-1)
}

.terms-spec-table,
.terms-price-table{
  min-width:44rem
}

.terms-spec-table caption,
.terms-price-table caption{
  padding:0 0 var(--space-1);
  color:#676270;
  font-size:var(--fs-1);
  font-weight:700;
  text-align:left
}

.terms-spec-table th,
.terms-spec-table td,
.terms-price-table th,
.terms-price-table td{
  text-align:left;
  overflow-wrap:anywhere
}

.terms-list{
  display:grid;
  margin:0;
  padding:0;
  list-style:none
}

.terms-list li{
  display:grid;
  grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);
  gap:var(--space-2);
  min-width:0;
  padding-block:var(--space-2);
  border-bottom:1px solid var(--line-paper)
}

.terms-list li:first-child{
  border-top:1px solid var(--line-paper)
}

.terms-list strong,
.terms-list span{
  min-width:0;
  overflow-wrap:anywhere
}

.terms-list span{
  color:#676270
}

.terms-list--regions{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));
  column-gap:var(--space-3)
}

.terms-list--regions li{
  grid-template-columns:1fr;
  gap:var(--space-1)
}

.terms-process{
  display:grid;
  margin:0;
  padding:0;
  list-style:none
}

.terms-process li{
  display:grid;
  grid-template-columns:3rem minmax(0,1fr);
  gap:var(--space-2);
  align-items:start;
  padding-block:var(--space-2);
  border-bottom:1px solid var(--line-paper)
}

.terms-process li:first-child{
  border-top:1px solid var(--line-paper)
}

.terms-process li>div{
  display:grid;
  min-width:0;
  gap:var(--space-1)
}

.terms-process li p{
  color:#676270
}

.terms-process__marker{
  display:inline-flex;
  width:2.5rem;
  height:2.5rem;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#efedf5;
  color:#29245c;
  font-size:var(--fs-0);
  line-height:1;
  font-weight:700
}

.terms-closing{
  padding-block:var(--space-6);
  background:#fff;
  color:#1c1922
}

.terms-closing__card{
  padding:clamp(1.5rem,4vw,2.5rem);
  background:#17151d;
  color:#f9f4ee
}

.terms-closing__copy{
  display:grid;
  max-width:48rem;
  gap:var(--space-1);
  min-width:0
}

.terms-closing__copy .c-kicker{
  color:#aab7ff
}

.terms-closing__copy h2{
  color:#f9f4ee
}

.terms-closing__copy p{
  color:#c7c1cb
}

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

.terms-closing__actions .c-btn--ghost{
  color:#f9f4ee;
  border-color:color-mix(in srgb,#f9f4ee 45%,transparent)
}

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

  .terms-index{
    position:static
  }

  .terms-index__nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:var(--space-3)
  }
}

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

  .terms-document,
  .terms-closing{
    padding-block:var(--space-5)
  }

  .terms-index__nav{
    grid-template-columns:1fr
  }

  .terms-clause__heading{
    grid-template-columns:1fr
  }

  .terms-list li{
    grid-template-columns:1fr;
    gap:var(--space-1)
  }
}

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

  .terms-hero__meta{
    align-items:flex-start;
    flex-direction:column
  }

  .terms-process li{
    grid-template-columns:2.5rem minmax(0,1fr);
    gap:var(--space-1)
  }

  .terms-closing__actions{
    width:100%
  }

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