.terms-page{
  background:#ffffff;
  color:#172128;
}

.terms-hero{
  padding-block:var(--vm-space-5);
  background:#fcfcfa;
  color:#172128;
}

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

.terms-hero-copy{
  max-width:52rem;
  margin-inline:0;
  min-width:0;
}

.terms-hero-copy h1{
  max-width:48rem;
  margin-inline:0;
  font-size:clamp(2.35rem,5vw,3.2rem);
  line-height:1.18;
}

.terms-hero-lead{
  max-width:48rem;
  margin-top:var(--vm-space-1);
  color:#596167;
  font-size:var(--vm-fs-3);
}

.terms-meta{
  display:flex;
  flex-wrap:wrap;
  gap:var(--vm-space-1);
  margin-top:var(--vm-space-2);
}

.terms-meta span{
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  align-items:center;
  min-height:2rem;
  padding:.4rem .75rem;
  border-radius:var(--vm-radius-pill);
  background:#f4f0e7;
  color:#352f22;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-0);
  font-weight:650;
  line-height:1.35;
}

.terms-overview{
  background:#ffffff;
  color:#172128;
}

.terms-overview-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);
  align-items:start;
  gap:var(--vm-space-4);
}

.terms-overview-grid > *{
  min-width:0;
}

.terms-scope-card{
  min-width:0;
  padding:var(--vm-space-4);
  border-radius:var(--vm-radius-lg);
  background:#fff1e4;
  color:#3e2516;
}

.terms-scope-card h2{
  max-width:42rem;
  margin-inline:0;
  font-size:clamp(1.9rem,4vw,2.5rem);
}

.terms-fact-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  align-items:start;
  gap:var(--vm-space-3);
  margin-top:var(--vm-space-4);
}

.terms-fact{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:#ffffff;
  color:#172128;
}

.terms-fact strong{
  display:block;
  color:#172128;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-3);
  line-height:1.4;
}

.terms-fact p{
  margin-top:var(--vm-space-1);
  color:#596167;
}

.terms-toc-wrap{
  align-self:stretch;
  min-width:0;
}

.terms-toc{
  position:sticky;
  top:calc(var(--vm-header-height) + var(--vm-space-3));
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:#f1edff;
  color:#2c2548;
}

.terms-toc-title{
  display:block;
  color:#2c2548;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-1);
  line-height:1.4;
}

.terms-toc ol{
  margin-top:var(--vm-space-2);
  padding:0;
  list-style:none;
  border-top:1px solid #ddd7ef;
}

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

.terms-toc ol a{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:.7rem;
  min-width:0;
  padding:.75rem 0;
  color:#2c2548;
  font-size:var(--vm-fs-1);
  line-height:1.4;
}

.terms-toc ol a:hover{
  color:#005f2c;
}

.terms-toc ol a span{
  min-width:0;
  color:#625b80;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-fs-0);
  font-variant-numeric:tabular-nums;
}

.terms-toc-action{
  width:auto;
  margin-top:var(--vm-space-3);
  justify-self:start;
}

.terms-content-section{
  background:#fcfcfa;
  color:#172128;
}

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

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

.terms-rail{
  position:sticky;
  top:calc(var(--vm-header-height) + var(--vm-space-3));
  display:grid;
  gap:var(--vm-space-1);
  padding-top:.3rem;
  color:#7d8589;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-fs-0);
  line-height:1.4;
  letter-spacing:.08em;
  writing-mode:vertical-rl;
}

.terms-document{
  min-width:0;
  max-width:54rem;
}

.terms-clause{
  scroll-margin-top:calc(var(--vm-header-height) + var(--vm-space-3));
  padding:var(--vm-space-4);
  border-radius:var(--vm-radius-lg);
  background:#ffffff;
  color:#172128;
}

.terms-clause + .terms-clause{
  margin-top:var(--vm-space-4);
}

.terms-section-head{
  min-width:0;
}

.terms-index{
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  align-items:center;
  justify-content:center;
  min-height:2rem;
  margin-bottom:.75rem;
  padding:.4rem .75rem;
  border-radius:var(--vm-radius-pill);
  background:#e7f4fa;
  color:#17343e;
  font-family:var(--vm-font-mono);
  font-size:var(--vm-fs-0);
  font-weight:750;
  line-height:1.2;
  font-variant-numeric:tabular-nums;
}

.terms-section-head h2{
  max-width:44rem;
  margin-inline:0;
  font-size:clamp(1.75rem,3.5vw,2.35rem);
}

.terms-section-head p{
  max-width:44rem;
  margin-top:var(--vm-space-1);
  color:#596167;
}

.terms-prose{
  margin-top:var(--vm-space-3);
}

.terms-prose p{
  color:#303a40;
  line-height:1.75;
}

.terms-prose p + p{
  margin-top:var(--vm-space-2);
}

.terms-prose a:not(.vm-btn){
  color:#005f2c;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.2em;
}

.terms-payment-note{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--vm-space-2);
  margin-top:var(--vm-space-3);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:#e7f4fa;
  color:#17343e;
}

.terms-payment-note svg{
  width:1.25rem;
  height:1.25rem;
  margin-top:.15rem;
  color:#005f2c;
}

.terms-payment-note div{
  min-width:0;
}

.terms-payment-note strong{
  display:block;
  color:#17343e;
  font-family:var(--vm-font-heading);
  line-height:1.4;
}

.terms-payment-note p{
  margin-top:var(--vm-space-1);
  color:#36545d;
}

.terms-boundary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  gap:var(--vm-space-3);
  margin-top:var(--vm-space-3);
}

.terms-boundary-card{
  min-width:0;
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-md);
  background:#f4f0e7;
  color:#352f22;
}

.terms-boundary-card > span{
  display:inline-flex;
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  padding:.35rem .65rem;
  border-radius:var(--vm-radius-pill);
  background:#ffffff;
  color:#005f2c;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-0);
  font-weight:750;
  line-height:1.2;
}

.terms-boundary-card h3{
  margin-top:.75rem;
  color:#352f22;
}

.terms-boundary-card p{
  margin-top:var(--vm-space-1);
  color:#5d574a;
}

.terms-boundary-card-dark{
  background:#172128;
  color:#ffffff;
}

.terms-boundary-card-dark > span{
  background:#fff1e4;
  color:#3e2516;
}

.terms-boundary-card-dark h3{
  color:#ffffff;
}

.terms-boundary-card-dark p{
  color:#b7c0c5;
}

.terms-support-note{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:var(--vm-space-3);
  margin-top:var(--vm-space-4);
  padding:var(--vm-space-3);
  border-radius:var(--vm-radius-lg);
  background:#fff0f5;
  color:#482332;
}

.terms-support-note > div{
  min-width:0;
}

.terms-support-note strong{
  display:block;
  color:#482332;
  font-family:var(--vm-font-heading);
  font-size:var(--vm-fs-3);
  line-height:1.4;
}

.terms-support-note p{
  margin-top:var(--vm-space-1);
  color:#684553;
  overflow-wrap:anywhere;
}

.terms-support-actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:.75rem;
}

.terms-closing-section{
  padding-block:var(--vm-space-5);
  background:#ffffff;
  color:#172128;
}

.terms-closing{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(15rem,20rem);
  align-items:center;
  gap:var(--vm-space-4);
  padding:var(--vm-space-4);
  border-radius:var(--vm-radius-lg);
  background:#172128;
  color:#ffffff;
}

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

.terms-closing-copy .vm-kicker{
  background:#e7f4fa;
  color:#17343e;
}

.terms-closing-copy .vm-kicker::before{
  background:#005f2c;
}

.terms-closing-copy h2{
  max-width:44rem;
  margin-inline:0;
  color:#ffffff;
}

.terms-closing-copy p{
  max-width:44rem;
  margin-top:var(--vm-space-1);
  color:#b7c0c5;
}

.terms-closing-actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:.75rem;
  min-width:0;
}

.terms-closing-actions .vm-btn{
  width:100%;
}

.terms-closing-actions .vm-btn-ghost{
  border-color:rgba(255,255,255,.38);
  background:transparent;
  color:#ffffff;
}

.terms-closing-actions .vm-btn-ghost:hover{
  background:rgba(255,255,255,.08);
}

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

  .terms-toc-wrap{
    align-self:start;
  }

  .terms-toc{
    position:static;
  }

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

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

  .terms-rail{
    display:none;
  }

  .terms-document{
    max-width:none;
  }

  .terms-closing{
    grid-template-columns:minmax(0,1fr) minmax(14rem,18rem);
  }
}

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

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

  .terms-support-note{
    grid-template-columns:1fr;
    align-items:start;
  }

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

  .terms-closing-actions{
    width:100%;
  }
}

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

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

  .terms-meta span{
    width:100%;
    border-radius:var(--vm-radius-sm);
  }

  .terms-scope-card,
  .terms-clause,
  .terms-closing{
    padding:var(--vm-space-3);
  }

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

  .terms-toc-action{
    width:100%;
  }

  .terms-support-actions{
    width:100%;
  }

  .terms-support-actions .vm-btn{
    width:100%;
  }
}
