.privacy-page {
  background: var(--color-midnight-charcoal);
}

.privacy-page .container--hero,
.privacy-page .container {
  width: min(100% - (var(--container-padding) * 2), var(--container-width));
  margin-inline: auto;
}

.privacy-page .container--hero {
  max-width: var(--container-hero-width);
}

.privacy-page a:focus-visible {
  outline: 2px solid var(--color-focus);
  outline-offset: 3px;
}

.privacy-hero {
  padding-block: clamp(var(--space-9), 12vw, var(--space-10)) clamp(var(--space-8), 8vw, var(--space-9));
  border-bottom: var(--border-default);
}

.privacy-hero__grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.privacy-hero__content {
  grid-column: 1 / span 7;
  width: min(100%, 38.75rem);
  min-width: 0;
}

.privacy-hero__content::before {
  display: block;
  width: 5rem;
  height: 1px;
  margin-bottom: var(--space-5);
  background: var(--color-champagne-gold);
  content: "";
}

.privacy-hero__content > :last-child { margin-block-end: 0; }
.privacy-hero__intro { max-width: 38rem; }

.privacy-date {
  display: flex;
  width: min(100%, 22.5rem);
  min-width: 0;
  align-items: center;
  gap: var(--space-3);
  margin-top: var(--space-6);
  padding: var(--space-3) var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-panel);
  background: var(--color-dark-slate);
}

.privacy-date > * { min-width: 0; }
.privacy-date svg { width: 1.25rem; flex: 0 0 1.25rem; color: var(--color-champagne-gold); }
.privacy-date span { color: var(--color-muted-stone); font-size: var(--font-size-small); }
.privacy-date strong { font-size: var(--font-size-small); }

.privacy-section { padding-block: clamp(var(--space-8), 10vw, var(--space-10)); }
.privacy-section + .privacy-section { border-top: 1px solid color-mix(in srgb, var(--color-border) 68%, transparent); }

.privacy-controller__layout,
.privacy-data__layout,
.privacy-basis__layout,
.privacy-retention__layout,
.privacy-cookies__layout,
.privacy-rights__layout,
.privacy-remedy__layout {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.privacy-controller__layout { row-gap: var(--space-6); }
.privacy-controller__intro { grid-column: 1 / span 7; width: min(100%, 42.5rem); min-width: 0; }
.privacy-contact-panel {
  display: grid;
  grid-column: 1 / span 9;
  grid-template-columns: 1fr;
  min-width: 0;
  gap: 0;
  padding: var(--space-6);
  border-top: var(--border-accent);
  border-right: var(--border-default);
  border-bottom: var(--border-default);
  border-left: var(--border-default);
  border-radius: var(--radius-panel);
  background: var(--color-emerald-slate);
}

.privacy-contact-panel__item {
  display: grid;
  grid-template-columns: 1.5rem minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  padding-block: var(--space-4);
  border-bottom: var(--border-default);
}
.privacy-contact-panel__item:first-child { padding-top: 0; }
.privacy-contact-panel__item:last-child { padding-bottom: 0; border-bottom: 0; }
.privacy-contact-panel__item svg { width: 1.375rem; color: var(--color-champagne-gold); }
.privacy-contact-panel__item div { display: flex; min-width: 0; flex-direction: column; gap: var(--space-1); }
.privacy-contact-panel__label { color: var(--color-muted-stone); font-size: var(--font-size-meta); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.privacy-contact-panel__item strong,
.privacy-contact-panel__item a { overflow-wrap: anywhere; }

.privacy-data__layout { row-gap: var(--space-6); }
.privacy-data__heading { grid-column: 1 / span 9; width: min(100%, 43.75rem); min-width: 0; }
.privacy-numbered-list {
  display: grid;
  grid-column: 1 / span 9;
  grid-template-columns: 1fr;
  min-width: 0;
  gap: 0;
  margin: 0;
  padding: 0;
}
.privacy-numbered-list__item {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
  gap: var(--space-4);
  padding-block: var(--space-6);
  border-top: var(--border-default);
}
.privacy-numbered-list__item:last-child { border-bottom: var(--border-default); }
.privacy-numbered-list__number { color: var(--color-champagne-gold); font-size: 1.125rem; font-weight: 750; letter-spacing: .08em; }
.privacy-numbered-list__content { width: min(100%, 48.75rem); min-width: 0; }
.privacy-numbered-list__content > :last-child { margin-block-end: 0; }

.privacy-basis__layout { row-gap: var(--space-6); }
.privacy-basis__heading { grid-column: 1 / span 10; width: min(100%, 43.75rem); min-width: 0; }
.privacy-basis__rows { display: grid; grid-column: 1 / span 10; grid-template-columns: 1fr; min-width: 0; }
.privacy-basis-row {
  display: grid;
  grid-template-columns: minmax(0, 4fr) minmax(0, 6fr);
  min-width: 0;
  gap: var(--space-6);
  padding-block: var(--space-6);
  border-top: var(--border-default);
}
.privacy-basis-row:last-child { border-bottom: var(--border-default); }
.privacy-basis-row__purpose,
.privacy-basis-row__legal { min-width: 0; }
.privacy-basis-row__purpose > :last-child,
.privacy-basis-row__legal > :last-child { margin-block-end: 0; }
.privacy-basis-row__legal { width: min(100%, 32.5rem); }
.privacy-basis-row__legal > span,
.privacy-rights-summary span { display: block; margin-bottom: var(--space-2); color: var(--color-champagne-gold); font-size: var(--font-size-meta); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.privacy-legal-note {
  display: grid;
  grid-column: 1 / span 8;
  grid-template-columns: 1fr;
  min-width: 0;
  gap: var(--space-4);
  padding: var(--space-6);
  border: var(--border-default);
  border-radius: var(--radius-panel);
  background: var(--color-dark-slate);
}
.privacy-legal-note > * { margin: 0; min-width: 0; }

.privacy-retention__layout { row-gap: var(--space-5); }
.privacy-retention__layout > .eyebrow,
.privacy-retention__layout > h2,
.privacy-rule-block,
.privacy-access-block,
.privacy-transfer-panel { grid-column: 1 / span 8; width: min(100%, 47.5rem); min-width: 0; }
.privacy-retention__layout > h2 { margin-bottom: var(--space-2); }
.privacy-rule-block { padding-left: var(--space-5); border-left: 1px solid var(--color-champagne-gold); }
.privacy-rule-block > :last-child,
.privacy-access-block > :last-child { margin-block-end: 0; }
.privacy-access-block { padding-top: var(--space-5); border-top: var(--border-default); }
.privacy-principles { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-5); }
.privacy-principles span { min-width: 0; padding: var(--space-2) var(--space-3); border: var(--border-default); color: var(--color-text); font-size: var(--font-size-small); }
.privacy-transfer-panel { padding: var(--space-6); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-dark-slate); }
.privacy-transfer-panel > :last-child { margin-block-end: 0; }

.privacy-cookies__layout { row-gap: var(--space-5); }
.privacy-cookies__layout > .eyebrow,
.privacy-cookies__layout > h2,
.privacy-cookies__block,
.privacy-security-block,
.privacy-update-note { grid-column: 1 / span 8; width: min(100%, 45rem); min-width: 0; }
.privacy-cookies__layout > h2 { margin-bottom: var(--space-2); }
.privacy-cookies__block > :last-child,
.privacy-security-block > :last-child { margin-block-end: 0; }
.privacy-security-block { padding-left: var(--space-5); border-left: 2px solid var(--color-emerald); }
.privacy-update-note { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-5); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-dark-slate); }
.privacy-update-note > * { min-width: 0; margin: 0; }
.privacy-update-note strong { color: var(--color-crisp-white); font-size: var(--font-size-small); }

.privacy-rights__layout { row-gap: var(--space-6); }
.privacy-rights__heading { grid-column: 1 / span 9; width: min(100%, 43.75rem); min-width: 0; }
.privacy-rights__cards { display: grid; grid-column: 1 / span 10; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); }
.privacy-right-card { min-width: 0; padding: var(--space-6); border: var(--border-default); border-radius: var(--radius-panel); }
.privacy-right-card > :last-child { margin-block-end: 0; }
.privacy-rights-summary { display: grid; grid-column: 1 / span 10; grid-template-columns: 1fr; min-width: 0; gap: var(--space-5); padding: var(--space-6); border: var(--border-default); border-radius: var(--radius-panel); background: var(--color-emerald-slate); }
.privacy-rights-summary > * { min-width: 0; margin: 0; }
.privacy-rights-summary__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); min-width: 0; gap: var(--space-5); }
.privacy-rights-summary__grid > div { min-width: 0; }
.privacy-rights-summary__grid p { margin: 0; }
.privacy-request-panel { display: grid; grid-column: 1 / span 10; grid-template-columns: 1fr; min-width: 0; gap: var(--space-4); padding: var(--space-6); border-top: var(--border-accent); border-right: var(--border-default); border-bottom: var(--border-default); border-left: var(--border-default); border-radius: var(--radius-panel); background: var(--color-emerald-slate); box-shadow: var(--shadow-deep); }
.privacy-request-panel > * { min-width: 0; margin: 0; }
.privacy-request-panel__contact { display: flex; min-width: 0; flex-direction: column; gap: var(--space-2); padding-top: var(--space-4); border-top: var(--border-default); }
.privacy-request-panel__contact span,
.privacy-request-panel__contact a { min-width: 0; overflow-wrap: anywhere; }

.privacy-remedy__layout { row-gap: var(--space-6); }
.privacy-remedy__heading { grid-column: 1 / span 10; width: min(100%, 43.75rem); min-width: 0; }
.privacy-remedy__grid { display: grid; grid-column: 1 / span 10; grid-template-columns: repeat(2, minmax(0, 1fr)); min-width: 0; gap: var(--space-6); }
.privacy-remedy__contact,
.privacy-remedy__legal { min-width: 0; }
.privacy-remedy__contact > :last-child,
.privacy-remedy__legal > :last-child { margin-block-end: 0; }
.privacy-remedy__legal { color: var(--color-muted-stone); }
.privacy-remedy__legal h3 { color: var(--color-text); }
.privacy-remedy__contact-line { display: flex; min-width: 0; flex-wrap: wrap; gap: var(--space-3); margin-top: var(--space-5); }
.privacy-remedy__contact-line a { min-width: 0; padding: var(--space-2) 0; font-weight: 700; overflow-wrap: anywhere; }
.privacy-closing-note { grid-column: 1 / span 7; width: min(100%, 38.75rem); min-width: 0; padding-top: var(--space-5); border-top: var(--border-accent); }
.privacy-closing-note p { margin: 0; }

@media (max-width: 65rem) {
  .privacy-hero__grid,
  .privacy-controller__layout,
  .privacy-data__layout,
  .privacy-basis__layout,
  .privacy-retention__layout,
  .privacy-cookies__layout,
  .privacy-rights__layout,
  .privacy-remedy__layout { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .privacy-hero__content { grid-column: 1 / span 6; }
  .privacy-controller__intro { grid-column: 1 / span 6; }
  .privacy-contact-panel { grid-column: 1 / span 6; }
  .privacy-data__heading,
  .privacy-numbered-list,
  .privacy-basis__heading,
  .privacy-basis__rows,
  .privacy-rights__heading,
  .privacy-rights__cards,
  .privacy-rights-summary,
  .privacy-request-panel,
  .privacy-remedy__heading,
  .privacy-remedy__grid { grid-column: 1 / span 6; }
  .privacy-retention__layout > .eyebrow,
  .privacy-retention__layout > h2,
  .privacy-rule-block,
  .privacy-access-block,
  .privacy-transfer-panel,
  .privacy-cookies__layout > .eyebrow,
  .privacy-cookies__layout > h2,
  .privacy-cookies__block,
  .privacy-security-block,
  .privacy-update-note,
  .privacy-closing-note { grid-column: 1 / span 6; }
  .privacy-numbered-list__item { grid-template-columns: 3.75rem minmax(0, 1fr); }
  .privacy-basis-row { grid-template-columns: minmax(0, 2fr) minmax(0, 4fr); }
  .privacy-rights__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .privacy-remedy__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 52.5rem) {
  .privacy-basis-row { grid-template-columns: 1fr; gap: var(--space-3); }
  .privacy-basis-row__legal { width: 100%; }
}

@media (max-width: 51.25rem) {
  .privacy-rights__cards,
  .privacy-remedy__grid { grid-template-columns: 1fr; }
  .privacy-rights-summary__grid { grid-template-columns: 1fr; gap: var(--space-4); }
}

@media (max-width: 45rem) {
  .privacy-hero { padding-top: var(--space-9); }
  .privacy-hero__content { width: 100%; }
  .privacy-hero h1 { font-size: clamp(2.625rem, 12vw, 3.5rem); }
  .privacy-hero .lead { font-size: 1.0625rem; }
  .privacy-date { width: 100%; }
  .privacy-section { padding-block: clamp(var(--space-8), 16vw, var(--space-9)); }
  .privacy-contact-panel,
  .privacy-legal-note,
  .privacy-transfer-panel,
  .privacy-update-note,
  .privacy-right-card,
  .privacy-rights-summary,
  .privacy-request-panel { padding: var(--space-5); }
  .privacy-numbered-list__item { grid-template-columns: 1fr; gap: var(--space-2); }
  .privacy-numbered-list__number { font-size: 1rem; }
  .privacy-rule-block,
  .privacy-security-block { padding-left: var(--space-4); }
  .privacy-contact-panel__item { grid-template-columns: 1.5rem minmax(0, 1fr); gap: var(--space-3); }
}
