.privacy-page {
  overflow: clip;
}

.privacy-page .privacy-hero {
  border-block-end: 2px solid var(--color-graphite-900);
  background: var(--color-oak-100);
  padding-block: var(--space-8);
}

.privacy-page .privacy-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 8fr) minmax(14rem, 4fr);
  gap: var(--space-6);
  align-items: end;
}

.privacy-page .privacy-hero__grid > * { min-width: 0; }
.privacy-page .privacy-hero__copy { width: 100%; max-width: 45rem; }
.privacy-page .privacy-hero__copy .lead { max-width: 40rem; margin-block-end: 0; color: var(--color-graphite-900); }
.privacy-page .privacy-hero__meta { width: 100%; justify-self: end; max-width: 18rem; padding: var(--space-5); border: 1px solid var(--color-graphite-900); background: var(--color-cream-100); }
.privacy-page .privacy-hero__meta .technical-label { margin-block-start: var(--space-3); }
.privacy-page .privacy-hero__meta .meta { margin-block-end: 0; }

.privacy-page .privacy-scope { background: var(--color-cream-50); }
.privacy-page .privacy-scope__layout { display: grid; grid-template-columns: minmax(12rem, 3fr) minmax(0, 9fr); gap: var(--space-6); align-items: start; }
.privacy-page .privacy-scope__layout > * { min-width: 0; }
.privacy-page .privacy-index { position: sticky; top: var(--space-5); display: flex; flex-direction: column; gap: var(--space-2); width: 100%; max-width: 15.625rem; padding-inline-end: var(--space-5); }
.privacy-page .privacy-index > * { min-width: 0; }
.privacy-page .privacy-index a { display: block; min-height: 2.75rem; padding: var(--space-2) 0; border-block-end: 1px solid var(--color-line-oak); font-size: var(--text-meta); font-weight: 700; }
.privacy-page .privacy-index a.is-active { color: var(--color-copper-600); }
.privacy-page .privacy-scope__sheet { width: 100%; max-width: 47.5rem; padding: var(--space-6); }
.privacy-page .privacy-scope__definitions { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
.privacy-page .privacy-scope__definitions > * { min-width: 0; margin-block-end: 0; }

.privacy-page .privacy-section-heading { display: flex; gap: var(--space-3); align-items: flex-start; width: 100%; border-block-end: 1px solid var(--color-line-oak); padding-block-end: var(--space-4); margin-block-end: var(--space-5); }
.privacy-page .privacy-section-heading > * { min-width: 0; }
.privacy-page .privacy-section-heading h2 { margin-block-end: 0; }
.privacy-page .privacy-section-heading .technical-label { margin-block-end: var(--space-2); }
.privacy-page .privacy-minimisation,
.privacy-page .privacy-legal-note,
.privacy-page .privacy-request-note { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); }
.privacy-page .privacy-minimisation { width: 100%; max-width: 36rem; margin-block-start: var(--space-6); padding: var(--space-5); border: 1px solid color-mix(in srgb, var(--color-petrol-700) 40%, var(--color-border)); background: var(--color-petrol-100); }
.privacy-page .privacy-minimisation > * { min-width: 0; margin-block: 0; }

.privacy-page .privacy-purposes { background: var(--color-cream-100); }
.privacy-page .privacy-purposes__frame { width: min(100% - (var(--page-padding) * 2), 60rem); margin-inline: auto; }
.privacy-page .privacy-purposes__heading { max-width: 43.75rem; }
.privacy-page .privacy-purpose-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-5); width: 100%; max-width: 43.75rem; }
.privacy-page .privacy-purpose { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); gap: var(--space-4); width: 100%; padding-block-end: var(--space-5); border-block-end: 1px solid var(--color-line-oak); }
.privacy-page .privacy-purpose > * { min-width: 0; }
.privacy-page .privacy-purpose__number { display: inline-flex; align-items: center; justify-content: center; width: 2rem; height: 2rem; border: 1px solid var(--color-copper-600); color: var(--color-copper-600); font-family: var(--font-heading); font-size: .75rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.privacy-page .privacy-purpose h3 { margin-block-end: var(--space-2); }
.privacy-page .privacy-purpose p { margin-block-end: 0; }
.privacy-page .privacy-legal-note { width: 100%; max-width: 43.75rem; margin-block-start: var(--space-6); padding: var(--space-5); border: 1px solid var(--color-petrol-700); background: var(--color-petrol-100); }
.privacy-page .privacy-legal-note > * { min-width: 0; margin-block: 0; }

.privacy-page .privacy-retention { background: var(--color-cream-50); }
.privacy-page .privacy-retention__sheet { width: min(100%, 61.25rem); margin-inline: auto; padding: var(--space-6); }
.privacy-page .privacy-retention__intro { width: 100%; max-width: 42.5rem; }
.privacy-page .privacy-retention__table { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; border: 1px solid var(--color-metal-300); }
.privacy-page .privacy-retention__row { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 4fr) minmax(0, 3fr); width: 100%; border-block-end: 1px solid var(--color-metal-300); }
.privacy-page .privacy-retention__row:last-child { border-block-end: 0; }
.privacy-page .privacy-retention__row > span { min-width: 0; padding: var(--space-3); border-inline-end: 1px solid var(--color-metal-300); }
.privacy-page .privacy-retention__row > span:last-child { border-inline-end: 0; }
.privacy-page .privacy-retention__row--head { background: var(--color-petrol-100); color: var(--color-graphite-900); font-family: var(--font-heading); font-weight: 700; }
.privacy-page .privacy-recipients__title { margin-block: var(--space-6) var(--space-3); }
.privacy-page .privacy-recipients { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; }
.privacy-page .privacy-recipients > * { min-width: 0; padding: var(--space-4); border: 1px solid var(--color-line-oak); }
.privacy-page .privacy-recipients p { margin-block-end: 0; }

.privacy-page .privacy-rights__frame { width: min(100% - (var(--page-padding) * 2), 45rem); margin-inline: auto; }
.privacy-page .privacy-right-list { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; }
.privacy-page .privacy-right-list article { display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-3); width: 100%; padding-block-end: var(--space-3); border-block-end: 1px solid var(--color-line-oak); }
.privacy-page .privacy-right-list article > * { min-width: 0; }
.privacy-page .privacy-right-list article > span { color: var(--color-copper-600); font-family: var(--font-heading); font-size: .75rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.privacy-page .privacy-right-list h3 { margin-block-end: var(--space-1); font-size: 1.125rem; }
.privacy-page .privacy-right-list p { margin-block-end: 0; }
.privacy-page .privacy-request-note { width: 100%; max-width: 38.75rem; margin-block-start: var(--space-6); padding: var(--space-5); border: 1px solid var(--color-line-oak); background: var(--color-cream-100); }
.privacy-page .privacy-request-note > * { min-width: 0; margin-block: 0; }

.privacy-page .privacy-technologies { background: var(--color-petrol-100); border-block: 1px solid color-mix(in srgb, var(--color-petrol-700) 40%, var(--color-border)); }
.privacy-page .privacy-technologies__layout { display: grid; grid-template-columns: minmax(0, 8fr) minmax(14rem, 4fr); gap: var(--space-6); align-items: center; width: min(100% - (var(--page-padding) * 2), 60rem); margin-inline: auto; }
.privacy-page .privacy-technologies__layout > * { min-width: 0; }
.privacy-page .privacy-technologies__copy { width: 100%; max-width: 43.75rem; }
.privacy-page .privacy-technologies__copy > .stage-marker { margin-block-end: var(--space-3); }
.privacy-page .privacy-technologies__copy p { margin-block-end: 0; }
.privacy-page .privacy-cookies-link { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; min-height: 10rem; padding: var(--space-5); border: 1px solid var(--color-graphite-900); background: var(--color-cream-50); color: var(--color-petrol-700); text-decoration-thickness: 2px; }
.privacy-page .privacy-cookies-link > * { min-width: 0; }
.privacy-page .privacy-cookies-link strong { font-family: var(--font-heading); font-size: 1.25rem; color: var(--color-graphite-900); }
.privacy-page .privacy-cookies-link span:last-child { color: var(--color-graphite-700); font-size: var(--text-meta); font-weight: 500; }

.privacy-page .privacy-external__frame { width: min(100% - (var(--page-padding) * 2), 51.25rem); margin-inline: auto; }
.privacy-page .privacy-external__copy { width: 100%; max-width: 45rem; border-inline-start: 2px solid var(--color-petrol-700); padding-inline-start: var(--space-5); }
.privacy-page .privacy-external__copy p:last-child { margin-block-end: 0; }
.privacy-page .privacy-independence { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-3); width: 100%; max-width: 51.25rem; margin-block-start: var(--space-6); padding: var(--space-5); border: 1px solid var(--color-graphite-900); background: var(--color-graphite-900); color: var(--color-cream-50); }
.privacy-page .privacy-independence > * { min-width: 0; margin-block: 0; }
.privacy-page .privacy-independence .technical-label { color: var(--color-oak-100); }

.privacy-page .privacy-update { background: var(--color-cream-100); }
.privacy-page .privacy-update__frame { width: min(100% - (var(--page-padding) * 2), 60rem); margin-inline: auto; }
.privacy-page .privacy-update__panel { width: 100%; max-width: 47.5rem; margin-inline: auto; padding: var(--space-6); }
.privacy-page .privacy-update__date { margin-block-end: var(--space-6); }
.privacy-page .privacy-checklist { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); padding-block-start: var(--space-5); border-block-start: 1px solid var(--color-line-oak); }
.privacy-page .privacy-checklist > * { min-width: 0; }
.privacy-page .privacy-checklist__heading { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
.privacy-page .privacy-checklist__heading > * { min-width: 0; margin-block: 0; }
.privacy-page .privacy-checklist ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3) var(--space-4); margin: 0; padding: 0; list-style: none; }
.privacy-page .privacy-checklist li { position: relative; min-width: 0; padding-inline-start: var(--space-5); }
.privacy-page .privacy-checklist li::before { content: ""; position: absolute; inset-inline-start: 0; inset-block-start: .45em; width: .625rem; height: .625rem; border: 1px solid var(--color-copper-600); background: var(--color-cream-50); }

@media (max-width: 58.74rem) {
  .privacy-page .privacy-scope__layout { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .privacy-page .privacy-index { position: static; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); max-width: none; padding-inline-end: 0; }
  .privacy-page .privacy-index a { min-height: 2.75rem; }
  .privacy-page .privacy-scope__sheet { max-width: 47.5rem; }
}

@media (max-width: 51.19rem) {
  .privacy-page .privacy-hero { padding-block: var(--space-6); }
  .privacy-page .privacy-hero__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .privacy-page .privacy-hero__meta { justify-self: start; max-width: 22rem; }
}

@media (max-width: 48.74rem) {
  .privacy-page .privacy-technologies__layout { grid-template-columns: minmax(0, 1fr); gap: var(--space-5); }
  .privacy-page .privacy-cookies-link { min-height: 2.75rem; }
}

@media (max-width: 47.49rem) {
  .privacy-page .privacy-retention__row { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); padding: var(--space-4); border-block-end: 1px solid var(--color-metal-300); }
  .privacy-page .privacy-retention__row > span { padding: 0; border: 0; }
  .privacy-page .privacy-retention__row--head { display: none; }
  .privacy-page .privacy-retention__row > span::before { content: attr(data-label); display: block; margin-block-end: var(--space-1); color: var(--color-petrol-700); font-size: var(--text-label); font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
  .privacy-page .privacy-checklist ul { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 39.99rem) {
  .privacy-page .privacy-purpose { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
  .privacy-page .privacy-purpose__number { margin-block-end: var(--space-1); }
  .privacy-page .privacy-right-list article { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
  .privacy-page .privacy-external__copy { border-inline-start: 0; padding-inline-start: 0; }
  .privacy-page .privacy-external__copy::before { content: ""; display: block; width: 2rem; height: 2px; margin-block-end: var(--space-3); background: var(--color-petrol-700); }
}

@media (max-width: 37.49rem) {
  .privacy-page .privacy-index { grid-template-columns: minmax(0, 1fr); }
  .privacy-page .privacy-scope__sheet,
  .privacy-page .privacy-retention__sheet,
  .privacy-page .privacy-update__panel { padding: var(--space-5); }
}
