.legal-hero{
  padding-block:var(--sv-hero-crumb-top) var(--sv-space-5);
  background:#F7F6F2;
  color:#0F1F17
}

.legal-hero-inner{
  display:flex;
  min-width:0;
  flex-direction:column
}

.legal-hero-copy{
  display:flex;
  min-width:0;
  max-width:52rem;
  flex-direction:column;
  align-items:flex-start
}

.legal-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.legal-kicker+h1{
  margin-top:var(--sv-space-2)
}

.legal-hero h1{
  max-width:100%;
  color:#0F1F17;
  font-size:clamp(2.5rem,4.6vw,3.2rem);
  line-height:1.16
}

.legal-hero-lead{
  max-width:48rem;
  margin-top:var(--sv-space-1);
  color:#5E6B63;
  font-size:var(--sv-text-4)
}

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

.legal-meta-item{
  min-width:0;
  padding:var(--sv-space-3);
  border-radius:var(--sv-radius-md);
  background:#FFFFFF;
  color:#0F1F17
}

.legal-meta-item span{
  display:block;
  color:#5E6B63;
  font-size:var(--sv-text-2);
  line-height:var(--sv-leading-label)
}

.legal-meta-item strong{
  display:block;
  margin-top:var(--sv-space-1);
  color:#0F1F17;
  font-size:var(--sv-text-3);
  line-height:1.45;
  overflow-wrap:anywhere
}

.legal-content-section{
  background:#FFFFFF;
  color:#0F1F17
}

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

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

.legal-sidebar{
  position:sticky;
  top:7rem;
  padding:var(--sv-space-3);
  border-radius:var(--sv-radius-lg);
  background:#DCEAF6;
  color:#1F4260
}

.legal-sidebar-heading{
  display:flex;
  flex-direction:column;
  align-items:flex-start
}

.legal-sidebar-heading .c-kicker{
  width:fit-content;
  align-self:flex-start
}

.legal-sidebar-heading .c-kicker+h2{
  margin-top:var(--sv-space-2)
}

.legal-sidebar-heading h2{
  color:#1F4260;
  font-size:var(--sv-text-5)
}

.legal-toc{
  margin:var(--sv-space-3) 0 0;
  padding:0;
  list-style:none
}

.legal-toc li{
  margin:0
}

.legal-toc li+li{
  border-top:1px solid color-mix(in srgb,#1F4260 14%,transparent)
}

.legal-toc a{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:var(--sv-space-1);
  padding:.8rem 0;
  color:#1F4260
}

.legal-toc a:hover{
  color:#0F1F17
}

.legal-toc span{
  font-family:var(--sv-font-mono);
  font-size:var(--sv-text-1);
  font-variant-numeric:tabular-nums
}

.legal-toc strong{
  min-width:0;
  font-size:var(--sv-text-2);
  line-height:1.4;
  overflow-wrap:anywhere
}

.legal-sidebar-action{
  margin-top:var(--sv-space-3);
  padding-top:var(--sv-space-3);
  border-top:1px solid color-mix(in srgb,#1F4260 14%,transparent)
}

.legal-sidebar-action p{
  color:#1F4260;
  font-size:var(--sv-text-2)
}

.legal-sidebar-action .c-btn{
  width:auto;
  margin-top:var(--sv-space-3)
}

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

.legal-policy{
  min-width:0;
  padding:clamp(1.5rem,3.4vw,2.5rem);
  border-radius:var(--sv-radius-lg)
}

.legal-policy-mint{
  background:#DDF2E4;
  color:#1D4A36
}

.legal-policy-butter{
  background:#F8EFC9;
  color:#5C4A0B
}

.legal-policy-lilac{
  background:#EAE3F5;
  color:#4A3670
}

.legal-policy-peach{
  background:#F8DCD2;
  color:#7A3A26
}

.legal-policy-sky{
  background:#DCEAF6;
  color:#1F4260
}

.legal-policy-mint h2,
.legal-policy-mint h3,
.legal-policy-mint p,
.legal-policy-mint li,
.legal-policy-mint a{
  color:#1D4A36
}

.legal-policy-butter h2,
.legal-policy-butter h3,
.legal-policy-butter p,
.legal-policy-butter li,
.legal-policy-butter a{
  color:#5C4A0B
}

.legal-policy-lilac h2,
.legal-policy-lilac h3,
.legal-policy-lilac p,
.legal-policy-lilac li,
.legal-policy-lilac a{
  color:#4A3670
}

.legal-policy-peach h2,
.legal-policy-peach h3,
.legal-policy-peach p,
.legal-policy-peach li,
.legal-policy-peach a{
  color:#7A3A26
}

.legal-policy-sky h2,
.legal-policy-sky h3,
.legal-policy-sky p,
.legal-policy-sky li,
.legal-policy-sky a{
  color:#1F4260
}

.legal-policy a{
  font-weight:700;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  overflow-wrap:anywhere
}

.legal-policy-heading{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--sv-space-2)
}

.legal-policy-heading>div{
  min-width:0
}

.legal-number{
  display:inline-flex;
  width:2.75rem;
  height:2.75rem;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#2F5D12;
  color:#FFFFFF;
  font-family:var(--sv-font-mono);
  font-size:var(--sv-text-2);
  font-weight:700;
  line-height:1;
  font-variant-numeric:tabular-nums
}

.legal-eyebrow{
  font-size:var(--sv-text-1);
  font-weight:750;
  line-height:var(--sv-leading-label);
  letter-spacing:.08em
}

.legal-eyebrow+h2{
  margin-top:var(--sv-space-1)
}

.legal-policy h2{
  font-size:clamp(1.65rem,3vw,2.25rem)
}

.legal-prose{
  margin-top:var(--sv-space-3)
}

.legal-prose>p{
  max-width:56rem
}

.legal-prose>p+p{
  margin-top:var(--sv-space-2)
}

.legal-data-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));
  gap:var(--sv-space-2);
  margin-top:var(--sv-space-3)
}

.legal-data-grid>div{
  min-width:0;
  padding:var(--sv-space-3);
  border-radius:var(--sv-radius-md);
  background:#FFFFFF;
  color:#0F1F17
}

.legal-data-grid strong{
  display:block;
  color:#0F1F17;
  font-size:var(--sv-text-3);
  line-height:1.4
}

.legal-data-grid span{
  display:block;
  margin-top:var(--sv-space-1);
  color:#5E6B63;
  font-size:var(--sv-text-2);
  line-height:1.55;
  overflow-wrap:anywhere
}

.legal-check-list{
  display:grid;
  margin:var(--sv-space-3) 0 0;
  padding:0;
  list-style:none
}

.legal-check-list li{
  position:relative;
  padding:.75rem 0 .75rem 1.75rem
}

.legal-check-list li+li{
  border-top:1px solid color-mix(in srgb,currentColor 14%,transparent)
}

.legal-check-list li:before{
  position:absolute;
  top:1.12rem;
  left:.15rem;
  width:.55rem;
  height:.55rem;
  border-radius:50%;
  background:#2F5D12;
  content:""
}

.legal-boundary{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--sv-space-2);
  margin-top:var(--sv-space-3);
  padding:var(--sv-space-3);
  border-radius:var(--sv-radius-md);
  background:#FFFFFF;
  color:#0F1F17
}

.legal-boundary svg{
  width:1.25rem;
  height:1.25rem;
  color:#2F5D12
}

.legal-boundary strong{
  display:block;
  color:#0F1F17;
  line-height:1.4
}

.legal-boundary p{
  margin-top:var(--sv-space-1);
  color:#5E6B63
}

.legal-contact-note{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:start;
  gap:var(--sv-space-2);
  padding:clamp(1.5rem,3.4vw,2.5rem);
  border-radius:var(--sv-radius-lg);
  background:#F7F6F2;
  color:#0F1F17
}

.legal-contact-note>svg{
  width:1.5rem;
  height:1.5rem;
  color:#2F5D12
}

.legal-contact-note h2{
  color:#0F1F17;
  font-size:var(--sv-text-5)
}

.legal-contact-note p{
  max-width:50rem;
  margin-top:var(--sv-space-1);
  color:#5E6B63
}

.legal-contact-note .sv-actions{
  justify-content:flex-start;
  margin-top:var(--sv-space-3)
}

.legal-closing-section{
  padding-top:0;
  background:#FFFFFF;
  color:#0F1F17
}

.legal-closing-actions{
  justify-content:flex-end
}

.legal-closing-actions .c-btn-ghost{
  border-color:rgba(255,255,255,.42);
  color:#F6F8F4
}

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

  .legal-sidebar{
    position:static
  }

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

  .legal-toc li+li{
    border-top:0
  }

  .legal-toc li{
    border-bottom:1px solid color-mix(in srgb,#1F4260 14%,transparent)
  }
}

@media(max-width:48rem){
  .legal-hero{
    padding-bottom:var(--sv-space-4)
  }

  .legal-meta{
    grid-template-columns:1fr
  }

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

  .legal-policy-heading{
    grid-template-columns:1fr
  }

  .legal-contact-note{
    grid-template-columns:1fr
  }

  .legal-contact-note .sv-actions,
  .legal-closing-actions{
    width:100%;
    justify-content:flex-start
  }

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

@media(max-width:24.375rem){
  .legal-policy,
  .legal-sidebar,
  .legal-contact-note{
    padding-inline:var(--sv-space-3)
  }

  .legal-data-grid{
    grid-template-columns:1fr
  }
}
