


.p-legal .art-doc-num {
  margin: 0 0 var(--art-space-2) 0;
  font-size: var(--art-type-micro);
  line-height: var(--art-lh-micro);
  letter-spacing: var(--art-track-overline);
  text-transform: uppercase;
  font-variant-numeric: tabular-nums;
  color: var(--art-text-muted);
}

.p-legal .art-doc-note {
  font-size: var(--art-type-caption);
  line-height: var(--art-lh-caption);
  color: var(--art-text-muted);
}

.p-legal .art-doc-list { margin: var(--art-space-5) 0; padding-left: var(--art-space-5); }
.p-legal .art-doc-list > li { margin-bottom: var(--art-space-3); }

 
.p-legal .art-legal-block {
  margin: var(--art-space-5) 0;
  padding: var(--art-space-5);
  background: var(--art-surface-document);
  border: var(--art-border-hair) solid var(--art-border-default);
  border-left: var(--art-border-bar) solid var(--art-border-strong);
  border-radius: var(--art-radius-0);
  color: var(--art-nuit);
  font-size: var(--art-type-data);
  line-height: var(--art-lh-data);
  max-width: var(--art-measure-dense);
}
.p-legal .art-legal-block p { margin: 0; }
.p-legal .art-legal-block__name {
  font-family: var(--art-font-display);
  font-size: var(--art-type-label);
  line-height: var(--art-lh-h4);
  letter-spacing: var(--art-track-overline);
  text-transform: uppercase;
  margin-bottom: var(--art-space-2);
}



@media (max-width: 599px) {
  .p-legal .art-legal-block__name {
    text-transform: none;
    letter-spacing: 0;
    font-size: var(--art-type-h4);
  }
}

 
.p-legal .art-table-scroll { overflow-x: auto; margin: var(--art-space-6) 0; }
.p-legal .art-privacy-table {
  width: 100%;
  min-width: 52ch;
  border-collapse: collapse;
  font-size: var(--art-type-data);
  line-height: var(--art-lh-data);
}
.p-legal .art-privacy-table th,
.p-legal .art-privacy-table td {
  padding: var(--art-space-4);
  border: var(--art-border-hair) solid var(--art-border-default);
  text-align: left;
  vertical-align: top;
}
.p-legal .art-privacy-table thead th {
  font-size: var(--art-type-micro);
  letter-spacing: var(--art-track-overline);
  text-transform: uppercase;
  color: var(--art-text-muted);
  border-bottom: var(--art-border-emphasis) solid var(--art-border-strong);
}
.p-legal .art-privacy-table tbody th { font-weight: 400; color: var(--art-text-primary); }
.p-legal .art-privacy-table__open { color: var(--art-text-muted); background: var(--art-surface-sunken); }

@media print {
  .p-legal .art-section { padding: var(--art-space-4) 0; }
  .p-legal .art-legal-block,
  .p-legal .art-privacy-table tr { break-inside: avoid; }
  .p-legal a[href^="http"]::after,
  .p-legal a[href^="mailto"]::after { content: " (" attr(href) ")"; font-size: var(--art-type-micro); }
}



.p-legal .art-section--header { padding-block: var(--art-space-8) var(--art-space-9); }

.p-legal .x-cover__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--art-space-8);
  align-items: start;
  inline-size: 100%;
}
@media (min-width: 1024px) {
  .p-legal .x-cover__grid { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: var(--art-space-9); }
}

.p-legal .x-cover__lead > * + * { margin-block-start: var(--art-space-5); }

.p-legal .x-key { padding: var(--art-space-6); }
.p-legal .x-key__title {
  margin: 0 0 var(--art-space-4);
  font-family: var(--art-font-display);
  font-weight: var(--art-weight-sub);
  font-size: var(--art-type-h4);
  line-height: var(--art-lh-h4);
  color: var(--art-text-display);
}
.p-legal .x-key__list { margin: 0; padding: 0; list-style: none; counter-reset: x-toc; }
.p-legal .x-key__list > li {
  border-block-start: var(--art-border-hair) solid var(--art-glass-border);
  font-size: var(--art-type-data);
  line-height: var(--art-lh-data);
}
.p-legal .x-key__list > li > a {
  display: flex;
  gap: var(--art-space-4);
  align-items: baseline;
  min-block-size: var(--art-touch-min);
  padding-block: var(--art-space-3);
  color: var(--art-text-secondary);
  text-decoration: none;
}
.p-legal .x-key__list > li > a:hover { color: var(--art-text-link); }
.p-legal .x-key__list > li > a::before {
  counter-increment: x-toc;
  content: counter(x-toc);
  font-variant-numeric: tabular-nums;
  color: var(--art-text-muted);
  min-inline-size: 2ch;
}






.p-legal .x-scroll {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  max-inline-size: 100%;
}
.p-legal .x-scroll:focus-visible { outline: var(--art-border-emphasis) solid var(--art-focus-ring); outline-offset: var(--art-space-1); }


@media (max-width: 767px) {
  .p-legal .x-scroll > table { min-inline-size: max-content; }
}




.p-legal .s-prose > :is(p, ul, ol, dl, blockquote) {
  max-inline-size: var(--art-measure-prose);
  margin-inline: 0;
}

@media (min-width: 1024px) {
.p-legal .s-prose:has(> h2) {
    display: grid;
    grid-template-columns: minmax(0, 4fr) minmax(0, 7fr);
    column-gap: var(--art-space-9);
    align-items: start;
  }
.p-legal .s-prose:has(> h2) > h2:first-of-type {
    grid-column: 1;
    grid-row: 1 / -1;
    align-self: start;
    margin-block-start: 0;
    

    font-size: var(--art-type-h3);
    line-height: var(--art-lh-h3);
    letter-spacing: var(--art-track-h2);
    hyphens: manual;
    overflow-wrap: normal;
  }
.p-legal .s-prose:has(> h2) > :is(p, ul, ol, dl, table, div) + h3 { margin-block-start: var(--art-space-7); }
.p-legal .s-prose:has(> h2) > :not(h2:first-of-type) { grid-column: 2; }
.p-legal .s-prose:has(> h2) > :not(h2, p, ul, ol, dl, blockquote) { max-inline-size: none; }
.p-legal .s-prose:has(> h2) > :is(p, ul, ol, dl, blockquote) { max-inline-size: var(--art-measure-prose); }

  

.p-legal .s-prose--numbered:has(> h2) > p.art-doc-num {
    grid-column: 1;
    grid-row: 1 / -1;
    align-self: start;
  }
.p-legal .s-prose--numbered:has(> h2) > h2:first-of-type { padding-block-start: var(--art-space-6); }
}
