main.privacy-policy-page {
  background: var(--color-obsidian);
}

.privacy-policy-page .pp-opening,
.privacy-policy-page .pp-section {
  padding-block: var(--space-24);
}

.privacy-policy-page .pp-opening {
  background: var(--color-smoked-plum);
  border-bottom: 1px solid var(--border-ivory);
}

.privacy-policy-page .pp-section--obsidian {
  background: var(--color-obsidian);
}

.privacy-policy-page .pp-section--plum {
  background: var(--color-smoked-plum);
}

.privacy-policy-page .pp-section--petrol {
  background: var(--color-deep-petrol);
}

.privacy-policy-page .pp-section--green {
  background: var(--color-mineral-green);
}

.privacy-policy-page .pp-opening__grid,
.privacy-policy-page .pp-section__grid {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 7fr) minmax(0, 3fr);
  column-gap: var(--space-6);
  align-items: start;
}

.privacy-policy-page .pp-opening__rail,
.privacy-policy-page .pp-section__rail {
  grid-column: 1;
  width: 100%;
  min-width: 0;
  padding-top: var(--space-2);
}

.privacy-policy-page .pp-opening__content,
.privacy-policy-page .pp-section__content {
  grid-column: 2;
  width: 100%;
  min-width: 0;
  max-width: 42.5rem;
}

.privacy-policy-page .pp-opening__space,
.privacy-policy-page .pp-section__space {
  grid-column: 3;
  width: 100%;
  min-width: 0;
  min-height: 1px;
}

.privacy-policy-page .pp-rail-index {
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: var(--space-2);
  color: var(--color-champagne-gold);
  font-size: var(--text-12);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.privacy-policy-page .pp-rail-index::after {
  width: 2.5rem;
  height: 1px;
  flex: 0 0 auto;
  background: var(--color-champagne-gold);
  content: "";
  opacity: 0.7;
}

.privacy-policy-page .pp-eyebrow {
  margin: 0 0 var(--space-3);
}

.privacy-policy-page .pp-opening h1 {
  max-width: 45rem;
  margin-bottom: var(--space-6);
}

.privacy-policy-page .pp-opening__lead {
  max-width: 38.75rem;
  margin-bottom: var(--space-6);
  color: var(--color-muted-lilac);
  font-size: var(--text-18);
  line-height: 1.5;
}

.privacy-policy-page .pp-opening__gold-rule {
  width: 5rem;
  height: 1px;
  margin-bottom: var(--space-6);
  background: var(--color-champagne-gold);
}

.privacy-policy-page .pp-scope-note {
  display: grid;
  grid-template-columns: 3px minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--space-4);
  border: 1px solid var(--border-ivory);
  border-radius: var(--radius-sm);
  background: rgba(8, 9, 13, 0.22);
}

.privacy-policy-page .pp-scope-note::before {
  width: 3px;
  min-width: 3px;
  background: var(--color-aurora-copper);
  content: "";
}

.privacy-policy-page .pp-scope-note__copy {
  min-width: 0;
}

.privacy-policy-page .pp-scope-note__label {
  display: block;
  margin-bottom: var(--space-2);
  color: var(--color-aurora-copper);
  font-size: var(--text-12);
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.privacy-policy-page .pp-scope-note p {
  margin: 0;
  color: var(--color-muted-lilac);
}

.privacy-policy-page .pp-section__content > h2 {
  margin-bottom: var(--space-6);
}

.privacy-policy-page .pp-copy {
  max-width: 40rem;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-copy--wide {
  max-width: 42.5rem;
}

.privacy-policy-page .pp-copy--lead {
  max-width: 40rem;
  font-size: var(--text-18);
  line-height: 1.5;
}

.privacy-policy-page .pp-unit + .pp-unit {
  margin-top: var(--space-8);
  padding-top: var(--space-8);
  border-top: 1px solid var(--border-ivory);
}

.privacy-policy-page .pp-unit h3 {
  margin-bottom: var(--space-4);
}

.privacy-policy-page .pp-inline-accent {
  color: var(--color-aurora-copper);
  font-weight: 600;
}

.privacy-policy-page .pp-meta-label {
  display: block;
  margin-bottom: var(--space-3);
  color: var(--color-champagne-gold);
  font-size: var(--text-12);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.privacy-policy-page .pp-definition-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-6);
  margin: 0;
}

.privacy-policy-page .pp-definition-list > div {
  width: 100%;
  min-width: 0;
}

.privacy-policy-page .pp-definition-list dt {
  margin-bottom: var(--space-2);
  color: var(--color-ivory);
}

.privacy-policy-page .pp-definition-list dd {
  margin: 0;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-guidance-note,
.privacy-policy-page .pp-choice-inset,
.privacy-policy-page .pp-offline-callout,
.privacy-policy-page .pp-enquiry-panel {
  width: 100%;
  min-width: 0;
  padding: var(--space-6);
  border: 1px solid var(--border-ivory);
  border-radius: var(--radius-sm);
}

.privacy-policy-page .pp-guidance-note {
  background: rgba(12, 32, 36, 0.8);
}

.privacy-policy-page .pp-choice-inset,
.privacy-policy-page .pp-enquiry-panel {
  background: rgba(16, 42, 39, 0.86);
}

.privacy-policy-page .pp-guidance-note h3,
.privacy-policy-page .pp-choice-inset h3,
.privacy-policy-page .pp-offline-callout h3,
.privacy-policy-page .pp-enquiry-panel h3 {
  margin-bottom: var(--space-3);
}

.privacy-policy-page .pp-guidance-note p,
.privacy-policy-page .pp-choice-inset p,
.privacy-policy-page .pp-offline-callout p,
.privacy-policy-page .pp-enquiry-panel p {
  margin: 0;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-purpose-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
}

.privacy-policy-page .pp-purpose-row {
  display: grid;
  grid-template-columns: 3.5rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  column-gap: var(--space-4);
  padding-block: var(--space-6);
}

.privacy-policy-page .pp-purpose-row + .pp-purpose-row {
  border-top: 1px solid var(--border-ivory);
}

.privacy-policy-page .pp-purpose-row__number {
  width: 3.5rem;
  min-width: 0;
  color: rgba(217, 186, 122, 0.48);
  font-family: var(--font-serif);
  font-size: 2.5rem;
  line-height: 1;
}

.privacy-policy-page .pp-purpose-row__copy {
  width: 100%;
  min-width: 0;
  max-width: 40rem;
}

.privacy-policy-page .pp-purpose-row__copy h3 {
  margin-bottom: var(--space-3);
  font-size: var(--text-24);
}

.privacy-policy-page .pp-purpose-row__copy p {
  margin: 0;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-purpose-row--accent {
  border-left: 2px solid var(--color-soft-teal);
  padding-left: var(--space-4);
}

.privacy-policy-page .pp-recipient-list {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-4);
  margin: 0;
}

.privacy-policy-page .pp-recipient-list > div,
.privacy-policy-page .pp-cookie-definition {
  display: grid;
  grid-template-columns: 9.375rem minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  gap: var(--space-4);
}

.privacy-policy-page .pp-recipient-list dt,
.privacy-policy-page .pp-cookie-definition dt {
  width: 100%;
  min-width: 0;
  color: var(--color-ivory);
}

.privacy-policy-page .pp-recipient-list dd,
.privacy-policy-page .pp-cookie-definition dd {
  width: 100%;
  min-width: 0;
  max-width: 38.75rem;
  margin: 0;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-legal-context {
  max-width: 40rem;
}

.privacy-policy-page .pp-offline-callout {
  position: relative;
  overflow: hidden;
  background: rgba(12, 32, 36, 0.78);
}

.privacy-policy-page .pp-offline-callout::after {
  position: absolute;
  top: -1.5rem;
  right: -1.5rem;
  width: 5rem;
  height: 5rem;
  border: 1px solid var(--border-gold);
  border-radius: 50%;
  content: "";
}

.privacy-policy-page .pp-choice-inset__label,
.privacy-policy-page .pp-enquiry-panel__label {
  display: block;
  margin-bottom: var(--space-2);
  color: var(--color-soft-teal);
  font-size: var(--text-12);
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.privacy-policy-page .pp-link-unit {
  max-width: 40rem;
}

.privacy-policy-page .pp-link-unit p {
  margin-bottom: var(--space-4);
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-security-meta {
  display: flex;
  width: 100%;
  min-width: 0;
  flex-wrap: wrap;
  gap: var(--space-2);
  margin-top: var(--space-4);
  color: var(--color-champagne-gold);
  font-size: var(--text-12);
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 1.3;
  text-transform: uppercase;
}

.privacy-policy-page .pp-security-meta span {
  min-width: 0;
}

.privacy-policy-page .pp-security-meta span:not(:last-child)::after {
  margin-left: var(--space-2);
  color: var(--color-muted-lilac);
  content: "·";
}

.privacy-policy-page .pp-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  min-width: 0;
  gap: var(--space-6);
  margin-top: var(--space-6);
}

.privacy-policy-page .pp-choice-grid > article {
  width: 100%;
  min-width: 0;
}

.privacy-policy-page .pp-choice-grid h3 {
  margin-bottom: var(--space-3);
}

.privacy-policy-page .pp-choice-grid p {
  margin: 0;
  color: var(--color-muted-lilac);
  line-height: 1.65;
}

.privacy-policy-page .pp-final-label {
  display: block;
  margin-bottom: var(--space-3);
}

.privacy-policy-page .pp-closing-rule {
  width: 100%;
  max-width: 40rem;
  height: 1px;
  margin-block: var(--space-6);
  background: var(--border-gold);
}

.privacy-policy-page .pp-closing-line {
  max-width: 35rem;
  margin: 0;
  color: var(--color-ivory);
  font-family: var(--font-serif);
  font-size: var(--text-24);
  font-style: italic;
  line-height: 1.2;
}

@media (max-width: 56.25rem) {
  .privacy-policy-page .pp-opening,
  .privacy-policy-page .pp-section {
    padding-block: var(--space-18);
  }

  .privacy-policy-page .pp-opening__grid,
  .privacy-policy-page .pp-section__grid {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-4);
  }

  .privacy-policy-page .pp-opening__rail,
  .privacy-policy-page .pp-section__rail,
  .privacy-policy-page .pp-opening__content,
  .privacy-policy-page .pp-section__content {
    grid-column: 1;
  }

  .privacy-policy-page .pp-opening__content,
  .privacy-policy-page .pp-section__content {
    max-width: 42.5rem;
  }

  .privacy-policy-page .pp-opening__space,
  .privacy-policy-page .pp-section__space {
    display: none;
  }
}

@media (max-width: 47.5rem) {
  .privacy-policy-page .pp-definition-list,
  .privacy-policy-page .pp-choice-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-4);
  }

  .privacy-policy-page .pp-recipient-list > div,
  .privacy-policy-page .pp-cookie-definition {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }
}

@media (max-width: 40rem) {
  .privacy-policy-page .pp-opening,
  .privacy-policy-page .pp-section {
    padding-block: var(--space-12);
  }

  .privacy-policy-page .pp-opening h1 {
    font-size: clamp(2.875rem, 12vw, 3.5rem);
    line-height: 1;
  }

  .privacy-policy-page .pp-section__content > h2 {
    font-size: clamp(1.875rem, 9vw, 2.375rem);
    line-height: 1.1;
  }

  .privacy-policy-page .pp-opening__lead,
  .privacy-policy-page .pp-copy--lead {
    font-size: 1.0625rem;
  }

  .privacy-policy-page .pp-scope-note,
  .privacy-policy-page .pp-guidance-note,
  .privacy-policy-page .pp-choice-inset,
  .privacy-policy-page .pp-offline-callout,
  .privacy-policy-page .pp-enquiry-panel {
    padding: var(--space-4);
  }

  .privacy-policy-page .pp-purpose-row {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-2);
  }

  .privacy-policy-page .pp-purpose-row__number {
    width: auto;
    font-size: 1.625rem;
  }

  .privacy-policy-page .pp-purpose-row--accent {
    padding-left: var(--space-3);
  }

  .privacy-policy-page .pp-closing-line {
    font-size: var(--text-24);
  }
}
