.privacy-page {
  background: var(--color-crisp-white);
  padding-bottom: var(--space-9);
}

.privacy-page__hero {
  padding-block: var(--space-7) var(--space-8);
  border-bottom: var(--border-strong);
  background: var(--color-ink-paper);
  color: var(--color-crisp-white);
}

.privacy-page__hero-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-5);
}

.privacy-page__hero-copy {
  grid-column: 1 / span 8;
  min-width: 0;
}

.privacy-page__hero-copy .eyebrow { margin-bottom: var(--space-5); }
.privacy-page__hero-copy h1 { margin-bottom: var(--space-5); font-size: 4rem; line-height: 0.97; }
.privacy-page__hero-copy p { max-width: 58ch; margin-bottom: 0; font-size: var(--text-20); }
.privacy-page__hero-copy a { color: var(--color-acid-green); }

.privacy-page__hero-marker {
  grid-column: 11 / span 2;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  min-width: 0;
  padding: var(--space-4);
  border: var(--border);
  background: var(--color-electric-blue);
  color: var(--color-crisp-white);
}

.privacy-page__hero-marker span { font-family: var(--font-heading); font-size: var(--text-40); font-weight: 700; line-height: 1; }
.privacy-page__hero-marker strong { font-family: var(--font-heading); font-size: var(--text-12); line-height: var(--leading-label); }

.privacy-page__date-card {
  grid-column: 2 / span 6;
  display: flex;
  flex-direction: column;
  gap: var(--space-2);
  min-width: 0;
  padding: var(--space-4) var(--space-5);
  border: var(--border-strong);
  background: var(--color-sharp-yellow);
  box-shadow: var(--shadow-hard);
  color: var(--color-raw-black);
  font-family: var(--font-heading);
  font-size: var(--text-20);
  font-weight: 700;
  line-height: 1.25;
}

.privacy-page__date-card strong { font-size: var(--text-12); }

.privacy-page__section { padding-block: var(--space-9); }
.privacy-page__reading-grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--space-5); }
.privacy-page__section-number { grid-column: 1 / span 2; min-width: 0; color: var(--color-electric-blue); font-family: var(--font-heading); font-size: var(--text-40); font-weight: 700; line-height: 1; }
.privacy-page__scope-content, .privacy-page__purposes-content, .privacy-page__rights-content { grid-column: 3 / span 8; min-width: 0; }
.privacy-page__scope-content > h2, .privacy-page__purposes-content > h2, .privacy-page__rights-content > h2 { max-width: 24ch; }

.privacy-page__scope-copy { display: flex; flex-direction: column; gap: var(--space-4); max-width: 66ch; }
.privacy-page__scope-copy p { margin-bottom: 0; }
.privacy-page__blue-label, .privacy-page__green-label { display: inline-block; align-self: flex-start; padding: var(--space-1) var(--space-2); border: 2px solid var(--color-line-black); font-family: var(--font-heading); font-size: var(--text-12); font-weight: 700; line-height: var(--leading-label); text-transform: uppercase; }
.privacy-page__blue-label { background: var(--color-electric-blue); color: var(--color-crisp-white); }
.privacy-page__green-label { background: var(--color-acid-green); color: var(--color-raw-black); }

.privacy-page__admin-card { display: flex; flex-direction: column; gap: var(--space-4); width: min(100%, 52ch); min-width: 0; margin-top: var(--space-5); padding: var(--space-5); border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__admin-card p { margin-bottom: 0; }
.privacy-page__titlebar { margin: calc(var(--space-5) * -1) calc(var(--space-5) * -1) 0; padding: var(--space-2) var(--space-3); border-bottom: var(--border); background: var(--color-raw-black); color: var(--color-crisp-white); font-family: var(--font-heading); font-size: var(--text-12); font-weight: 700; letter-spacing: -0.02em; line-height: var(--leading-label); text-transform: uppercase; }
.privacy-page__admin-card dl { display: grid; grid-template-columns: 1fr; gap: var(--space-3); margin: 0; }
.privacy-page__admin-card dl > div { display: grid; grid-template-columns: minmax(5rem, 0.32fr) minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-top: var(--space-3); border-top: 2px solid var(--color-line-black); }
.privacy-page__admin-card dd { min-width: 0; margin: 0; overflow-wrap: anywhere; }

.privacy-page__data-heading { width: min(100%, 68ch); min-width: 0; }
.privacy-page__data-heading p { max-width: 64ch; }
.privacy-page__data-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); margin-top: var(--space-6); }
.privacy-page__data-card { display: flex; flex-direction: column; min-width: 0; border: var(--border); box-shadow: var(--shadow-hard); background: var(--color-crisp-white); }
.privacy-page__data-card .privacy-page__titlebar { margin: 0; }
.privacy-page__data-card--query .privacy-page__titlebar { background: var(--color-electric-blue); }
.privacy-page__data-card--service .privacy-page__titlebar { background: var(--color-ink-paper); color: var(--color-acid-green); }
.privacy-page__data-card-content { display: flex; flex: 1; flex-direction: column; gap: var(--space-4); min-width: 0; padding: var(--space-5); }
.privacy-page__data-card-content h3, .privacy-page__data-card-content p { margin-bottom: 0; }

.privacy-page__purpose-records { display: flex; flex-direction: column; gap: var(--space-4); }
.privacy-page__purpose-record { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 6fr); min-width: 0; border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__purpose-label { min-width: 0; padding: var(--space-4); border-right: var(--border); font-family: var(--font-heading); font-size: var(--text-20); font-weight: 700; line-height: 1.2; }
.privacy-page__purpose-label--yellow { background: var(--color-sharp-yellow); }
.privacy-page__purpose-label--green { background: var(--color-acid-green); }
.privacy-page__purpose-label--blue { background: var(--color-electric-blue); color: var(--color-crisp-white); }
.privacy-page__purpose-copy { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; padding: var(--space-5); }
.privacy-page__purpose-copy h3, .privacy-page__purpose-copy p { margin-bottom: 0; }
.privacy-page__purpose-copy p { max-width: 64ch; }
.privacy-page__legal-basis { display: grid; grid-template-columns: minmax(6rem, 0.3fr) minmax(0, 1fr); gap: var(--space-3); min-width: 0; padding-top: var(--space-3); border-top: var(--border); font-size: var(--text-14); line-height: 1.43; }
.privacy-page__legal-basis strong { font-family: var(--font-heading); font-size: var(--text-12); }

.privacy-page__single-column { display: flex; flex-direction: column; gap: var(--space-5); min-width: 0; }
.privacy-page__single-column > h2 { width: min(100%, 26ch); margin-bottom: 0; }
.privacy-page__recipient-card { display: flex; flex-direction: column; width: min(100%, 8 / 12 * 100%); min-width: 0; border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__recipient-card .privacy-page__titlebar { margin: 0; }
.privacy-page__recipient-content { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; padding: var(--space-5); }
.privacy-page__recipient-content p { max-width: 65ch; margin-bottom: 0; }
.privacy-page__recipient-list { display: grid; gap: var(--space-2); max-width: 64ch; margin: 0; }
.privacy-page__transfer-panel { display: flex; flex-direction: column; gap: var(--space-4); width: min(100%, 58ch); min-width: 0; margin-left: calc((100% / 12) + var(--space-5)); padding: var(--space-5); border: var(--border); background: var(--color-ink-paper); box-shadow: var(--shadow-hard); color: var(--color-crisp-white); }
.privacy-page__transfer-panel h3, .privacy-page__transfer-panel p { margin-bottom: 0; }
.privacy-page__transfer-panel p { max-width: 58ch; }

.privacy-page__retention-heading { width: min(100%, 8 / 12 * 100%); min-width: 0; }
.privacy-page__retention-heading h2 { margin-bottom: var(--space-6); }
.privacy-page__retention-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-5); }
.privacy-page__retention-card { display: flex; flex-direction: column; min-width: 0; border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__retention-title { padding: var(--space-3) var(--space-4); border-bottom: var(--border); font-family: var(--font-heading); font-size: var(--text-20); font-weight: 700; line-height: 1.2; }
.privacy-page__retention-title--yellow { background: var(--color-sharp-yellow); }
.privacy-page__retention-title--blue { background: var(--color-electric-blue); color: var(--color-crisp-white); }
.privacy-page__retention-copy { display: flex; flex: 1; flex-direction: column; gap: var(--space-4); min-width: 0; padding: var(--space-5); }
.privacy-page__retention-copy h3, .privacy-page__retention-copy p { margin-bottom: 0; }
.privacy-page__retention-copy p { max-width: 55ch; }

.privacy-page__rights-records { display: flex; flex-direction: column; gap: var(--space-4); }
.privacy-page__right-record { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 6fr); min-width: 0; border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__right-record > div:last-child { display: flex; flex-direction: column; gap: var(--space-3); min-width: 0; padding: var(--space-5); }
.privacy-page__right-record h3, .privacy-page__right-record p { margin-bottom: 0; }
.privacy-page__right-record p { max-width: 66ch; }
.privacy-page__right-label { min-width: 0; padding: var(--space-4); border-right: var(--border); background: var(--color-sharp-yellow); font-family: var(--font-heading); font-size: var(--text-14); font-weight: 700; line-height: 1.25; }
.privacy-page__right-label--green { background: var(--color-acid-green); }
.privacy-page__right-label--blue { background: var(--color-electric-blue); color: var(--color-crisp-white); }
.privacy-page__rights-callout { display: flex; flex-direction: column; gap: var(--space-3); width: min(100%, 52ch); min-width: 0; margin-top: var(--space-6); margin-left: calc((100% / 8) + var(--space-5)); padding: var(--space-5); border: var(--border); background: var(--color-acid-green); box-shadow: var(--shadow-hard); }
.privacy-page__rights-callout span { font-family: var(--font-heading); font-size: var(--text-12); font-weight: 700; }
.privacy-page__rights-callout p { margin-bottom: 0; }
.privacy-page__rights-callout a { display: flex; align-items: center; min-height: 2.75rem; width: fit-content; max-width: 100%; color: var(--color-raw-black); font-family: var(--font-heading); font-size: var(--text-20); font-weight: 700; overflow-wrap: anywhere; }

.privacy-page__cookies-card { display: grid; grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.5fr); gap: var(--space-5); width: min(100%, 70ch); min-width: 0; padding: var(--space-5); border: var(--border); background: var(--color-crisp-white); box-shadow: var(--shadow-hard); }
.privacy-page__cookies-copy { display: flex; flex-direction: column; gap: var(--space-4); min-width: 0; }
.privacy-page__cookies-copy h3, .privacy-page__cookies-copy p { margin-bottom: 0; }
.privacy-page__cookies-copy p { max-width: 64ch; }
.privacy-page__cookies-link { align-self: center; min-width: 0; }
.privacy-page__changes-panel { display: flex; flex-direction: column; gap: var(--space-4); width: min(100%, 58ch); min-width: 0; margin-left: calc((100% / 12) + var(--space-5)); padding: var(--space-5); border: var(--border); background: var(--color-ink-paper); box-shadow: var(--shadow-hard); color: var(--color-crisp-white); }
.privacy-page__changes-panel h3, .privacy-page__changes-panel p { margin-bottom: 0; }
.privacy-page__changes-panel p { max-width: 58ch; }
.privacy-page__closing-date { width: fit-content; max-width: 100%; margin-left: calc((100% / 12) + var(--space-5)); padding: var(--space-3) var(--space-4); border: var(--border-strong); background: var(--color-sharp-yellow); box-shadow: var(--shadow-hard); font-family: var(--font-heading); font-size: var(--text-14); font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }

@media (max-width: 61.24rem) {
  .privacy-page__data-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .privacy-page__data-card--service { grid-column: 1 / span 2; }
}

@media (max-width: 56.24rem) {
  .privacy-page__hero-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: var(--space-4); }
  .privacy-page__hero-copy { grid-column: 1 / span 8; }
  .privacy-page__hero-marker { grid-column: 1 / span 2; grid-row: 1; width: 100%; }
  .privacy-page__hero-copy { grid-row: 2; }
  .privacy-page__date-card { grid-column: 1 / span 5; grid-row: 3; }
  .privacy-page__reading-grid { grid-template-columns: repeat(8, minmax(0, 1fr)); }
  .privacy-page__section-number { grid-column: 1 / span 8; }
  .privacy-page__scope-content, .privacy-page__purposes-content, .privacy-page__rights-content { grid-column: 1 / span 8; }
}

@media (max-width: 51.24rem) {
  .privacy-page__purpose-record, .privacy-page__right-record { grid-template-columns: 1fr; }
  .privacy-page__purpose-label, .privacy-page__right-label { border-right: 0; border-bottom: var(--border); }
  .privacy-page__rights-callout { margin-left: 0; }
}

@media (max-width: 48.74rem) {
  .privacy-page__transfer-panel, .privacy-page__changes-panel, .privacy-page__closing-date { margin-left: 0; }
  .privacy-page__recipient-card { width: 100%; }
}

@media (max-width: 43.74rem) {
  .privacy-page__retention-cards { grid-template-columns: 1fr; }
  .privacy-page__cookies-card { grid-template-columns: 1fr; }
  .privacy-page__cookies-link { width: 100%; }
}

@media (max-width: 47.99rem) {
  .privacy-page { padding-bottom: var(--space-7); }
  .privacy-page__hero { padding-block: var(--space-6) var(--space-7); }
  .privacy-page__hero-grid, .privacy-page__reading-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-4); }
  .privacy-page__hero-copy, .privacy-page__section-number, .privacy-page__scope-content, .privacy-page__purposes-content, .privacy-page__rights-content { grid-column: 1 / span 4; }
  .privacy-page__hero-marker { grid-column: 1 / span 2; }
  .privacy-page__date-card { grid-column: 1 / span 4; width: 100%; }
  .privacy-page__hero-copy h1 { font-size: 2.625rem; line-height: 1.02; }
  .privacy-page__hero-copy p { font-size: 1.125rem; }
  .privacy-page__section { padding-block: 3.5rem; }
  .privacy-page__section-number { font-size: var(--text-28); }
  .privacy-page__scope-content > h2, .privacy-page__purposes-content > h2, .privacy-page__rights-content > h2, .privacy-page__single-column > h2 { width: 100%; max-width: none; }
  .privacy-page__admin-card, .privacy-page__transfer-panel, .privacy-page__rights-callout, .privacy-page__cookies-card, .privacy-page__changes-panel { width: 100%; padding: var(--space-4); }
  .privacy-page__titlebar { margin: calc(var(--space-4) * -1) calc(var(--space-4) * -1) 0; }
  .privacy-page__data-cards { grid-template-columns: 1fr; gap: var(--space-5); }
  .privacy-page__data-card--service { grid-column: auto; }
  .privacy-page__data-card-content, .privacy-page__purpose-copy, .privacy-page__retention-copy, .privacy-page__recipient-content, .privacy-page__right-record > div:last-child { padding: var(--space-4); }
  .privacy-page__purpose-label, .privacy-page__right-label { padding: var(--space-3) var(--space-4); }
  .privacy-page__legal-basis { grid-template-columns: 1fr; gap: var(--space-2); }
  .privacy-page__admin-card dl > div { grid-template-columns: 1fr; gap: var(--space-1); }
  .privacy-page__retention-heading { width: 100%; }
  .privacy-page__closing-date { width: 100%; margin-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-page a { transition: none; }
}
