.privacy-page {
  background: var(--color-plum-950);
}

.privacy-page a {
  overflow-wrap: anywhere;
}

.privacy-hero {
  position: relative;
  overflow: hidden;
  padding-block: clamp(6rem, 10vw, 7.5rem);
  border-block-end: 1px solid rgba(242, 198, 109, 0.2);
  background: radial-gradient(circle at 80% 40%, rgba(169, 79, 53, 0.12), transparent 26rem);
}

.privacy-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  align-items: center;
  gap: var(--space-7);
}

.privacy-hero__grid > * { min-width: 0; }

.privacy-hero__content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-4);
}

.privacy-hero__content > * { margin: 0; }
.privacy-hero__content h1 { max-width: 12ch; }
.privacy-hero__lead { max-width: 60ch; }
.privacy-hero__copy { max-width: 62ch; }

.privacy-hero__meta {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-2);
}

.privacy-meta-row {
  display: grid;
  grid-template-columns: minmax(7rem, 0.22fr) minmax(0, 1fr);
  gap: var(--space-3);
  padding: var(--space-3) var(--space-4);
  border: 1px solid var(--color-border);
  background: rgba(28, 18, 35, 0.68);
  color: var(--color-text-muted);
  font-size: var(--text-small);
}

.privacy-meta-row > * { min-width: 0; }
.privacy-meta-row > span:first-child { color: var(--color-accent-bright); font-weight: 800; }

.privacy-hero__relic {
  position: relative;
  width: 100%;
  min-height: 19rem;
  opacity: 0.8;
}

.privacy-hero__relic::before,
.privacy-hero__relic::after,
.privacy-hero__relic span {
  position: absolute;
  border: 1px solid rgba(242, 198, 109, 0.38);
  border-radius: 50%;
  content: "";
}

.privacy-hero__relic::before { width: 17rem; height: 17rem; inset: 1rem auto auto 15%; border-inline-end-color: transparent; transform: rotate(-18deg); }
.privacy-hero__relic::after { width: 11rem; height: 11rem; inset: 4rem auto auto 32%; border-inline-start-color: transparent; }
.privacy-hero__relic span:nth-child(1) { width: 3rem; height: 3rem; inset: 8rem auto auto 45%; background: rgba(217,154,61,0.08); }
.privacy-hero__relic span:nth-child(2) { width: 1rem; height: 1rem; inset: 3rem auto auto 70%; background: var(--color-accent); }
.privacy-hero__relic span:nth-child(3) { width: 0.7rem; height: 0.7rem; inset: 14rem auto auto 75%; background: var(--color-accent-bright); }

.privacy-document { padding-block: clamp(4rem, 8vw, 7.5rem); }

.privacy-document__grid {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(2rem, 1fr) minmax(0, 8fr);
  align-items: start;
}

.privacy-document__grid > * { min-width: 0; }

.privacy-index {
  grid-column: 1;
  position: sticky;
  top: 6rem;
  width: 100%;
  min-width: 0;
  border-top: 2px solid var(--color-accent);
  border-inline: 1px solid var(--color-border);
  border-bottom: 1px solid var(--color-border);
  background: var(--color-plum-900);
}

.privacy-index__toggle { display: none; }
.privacy-index__body { display: flex; flex-direction: column; gap: var(--space-4); padding: var(--space-5); }
.privacy-index__title { margin: 0; color: var(--color-text); font-family: var(--font-heading); font-size: 1.45rem; }
.privacy-index__nav { display: flex; flex-direction: column; gap: var(--space-1); }
.privacy-index__nav a { display: flex; min-width: 0; align-items: center; gap: var(--space-3); padding: var(--space-2); color: var(--color-text-muted); font-size: var(--text-small); text-decoration: none; }
.privacy-index__nav a b { flex: 0 0 1.5rem; color: var(--color-accent); font-size: var(--text-meta); letter-spacing: 0.08em; }
.privacy-index__nav a[aria-current="true"] { color: var(--color-accent-bright); background: rgba(242,198,109,0.08); }

.privacy-reader { grid-column: 3; min-width: 0; }
.privacy-section { scroll-margin-top: 7rem; padding-block: 0 var(--space-9); }
.privacy-section + .privacy-section { padding-top: var(--space-3); }
.privacy-section > .eyebrow { margin-bottom: var(--space-3); }
.privacy-section > h2 { margin-bottom: var(--space-5); }
.privacy-section p { overflow-wrap: anywhere; }

.privacy-overview__intro { max-width: 55ch; }
.privacy-overview__note { display: flex; max-width: 55ch; flex-direction: column; gap: var(--space-3); padding: var(--space-5); border: 1px solid var(--color-border); border-inline-start: 2px solid var(--color-accent); background: rgba(42,25,49,0.58); }
.privacy-overview__note > * { margin: 0; }
.privacy-overview__note h3 { font-size: 1.5rem; }

.privacy-controller-block,
.privacy-contact-block,
.privacy-data-block,
.privacy-communication-block,
.privacy-access-block,
.privacy-remedy-intro { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: var(--space-4); }

.privacy-controller-block { max-width: 66ch; padding: var(--space-5); border-inline-start: 2px solid var(--color-accent); background: rgba(28,18,35,0.74); }
.privacy-controller-block > *, .privacy-contact-block > *, .privacy-data-block > *, .privacy-communication-block > *, .privacy-access-block > *, .privacy-remedy-intro > * { margin: 0; }
.privacy-controller-block h3, .privacy-contact-block h3, .privacy-data-block h3, .privacy-communication-block h3, .privacy-access-block h3, .privacy-remedy-intro h3 { font-size: 1.7rem; }
.privacy-controller-block address { color: var(--color-text); line-height: var(--leading-body); }

.privacy-contact-block { max-width: 68ch; margin-top: var(--space-5); }
.privacy-contact-line { display: grid; min-height: 2.75rem; grid-template-columns: minmax(6rem, 0.2fr) minmax(0, 1fr); align-items: center; gap: var(--space-3); padding: var(--space-3) var(--space-4); border: 1px solid var(--color-border); background: var(--color-plum-900); text-decoration: none; }
.privacy-contact-line span { color: var(--color-text-subtle); font-size: var(--text-small); }
.privacy-contact-line strong { min-width: 0; }
.privacy-controller__closing { max-width: 62ch; margin-top: var(--space-5); }

.privacy-data-block { max-width: 68ch; }
.privacy-data-rows { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
.privacy-data-rows > div { display: grid; grid-template-columns: minmax(8rem, 1fr) minmax(0, 2fr); gap: var(--space-4); padding: var(--space-3) 0; border-block-start: 1px solid rgba(242,198,109,0.16); }
.privacy-data-rows > div > * { min-width: 0; margin: 0; }
.privacy-data-rows span { color: var(--color-accent-bright); font-size: var(--text-small); font-weight: 800; }
.privacy-data-rows p { position: relative; padding-inline-start: 1rem; }
.privacy-data-rows p::before { position: absolute; inset: 0.8em auto auto 0; width: 0.5rem; height: 1px; background: var(--color-accent); content: ""; }

.privacy-communication-block { max-width: 68ch; margin-top: var(--space-6); }
.privacy-caution { max-width: 55ch; padding: var(--space-4); border: 1px solid rgba(201,183,211,0.25); background: rgba(240,231,244,0.05); color: var(--color-lilac-300); }
.privacy-caution strong { color: var(--color-accent-bright); }

.privacy-tech-panel,
.privacy-legal-basis,
.privacy-retention-panel,
.privacy-security-panel,
.privacy-request-panel,
.privacy-remedy-panel { display: flex; min-width: 0; flex-direction: column; align-items: stretch; gap: var(--space-3); padding: var(--space-5); border: 1px solid var(--color-border); background: var(--color-plum-800); }
.privacy-tech-panel { margin-top: var(--space-6); }
.privacy-tech-panel > *, .privacy-legal-basis > *, .privacy-retention-panel > *, .privacy-security-panel > *, .privacy-request-panel > *, .privacy-remedy-panel > * { margin: 0; }
.privacy-tech-panel h3, .privacy-legal-basis h3, .privacy-retention-panel h3, .privacy-security-panel h3, .privacy-request-panel h3, .privacy-remedy-panel h3 { font-size: 1.65rem; }

.privacy-purpose-card { display: grid; grid-template-columns: minmax(4rem, 0.14fr) minmax(0, 1fr); gap: var(--space-4); padding: var(--space-5); border: 1px solid var(--color-border); background: var(--color-plum-900); }
.privacy-purpose-card > * { min-width: 0; }
.privacy-purpose-card__number { color: var(--color-accent); font-family: var(--font-heading); font-size: clamp(2.5rem, 5vw, 4rem); font-weight: 600; line-height: 0.85; }
.privacy-purpose-card div { display: flex; flex-direction: column; gap: var(--space-3); max-width: 64ch; }
.privacy-purpose-card h3, .privacy-purpose-card p { margin: 0; }
.privacy-purpose-card h3 { font-size: 1.75rem; }
.privacy-legal-basis { max-width: 68ch; margin-top: var(--space-5); }

.privacy-principles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); margin-top: var(--space-5); }
.privacy-principles > article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid rgba(242,198,109,0.2); background: rgba(28,18,35,0.74); }
.privacy-principles h3, .privacy-principles p { margin: 0; }
.privacy-principles h3 { font-size: 1.4rem; }

.privacy-retention-panel { max-width: 68ch; border-top: 2px solid var(--color-accent); }
.privacy-panel-label { color: var(--color-accent-bright); font-size: var(--text-meta); font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.privacy-access-block { max-width: 68ch; margin-top: var(--space-6); }
.privacy-access-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.privacy-access-cards > article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid rgba(242,198,109,0.2); background: rgba(42,25,49,0.48); }
.privacy-access-cards h4, .privacy-access-cards p { margin: 0; }
.privacy-access-cards h4 { font-size: 1.35rem; }
.privacy-security-panel { max-width: 68ch; margin-top: var(--space-5); border-inline-start: 2px solid var(--color-accent); background: var(--color-plum-900); }

.privacy-rights__intro { max-width: 64ch; }
.privacy-rights-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.privacy-rights-grid > article { display: flex; min-width: 0; flex-direction: column; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); background: var(--color-plum-800); }
.privacy-rights-grid article > * { margin: 0; }
.privacy-rights-grid span { color: var(--color-accent); font-size: var(--text-meta); font-weight: 800; letter-spacing: 0.1em; }
.privacy-rights-grid h3 { font-size: 1.45rem; }
.privacy-rights-grid small { color: var(--color-lilac-300); }
.privacy-request-panel { max-width: 68ch; margin-top: var(--space-5); border-block-start: 2px solid var(--color-accent); }

.privacy-remedy-intro { max-width: 68ch; }
.privacy-remedy-contacts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-3); }
.privacy-remedy-contacts > div { display: flex; min-width: 0; min-height: 7rem; flex-direction: column; justify-content: space-between; gap: var(--space-3); padding: var(--space-4); border: 1px solid var(--color-border); background: var(--color-plum-900); }
.privacy-remedy-contacts span { color: var(--color-accent-bright); font-size: var(--text-small); font-weight: 800; }
.privacy-remedy-contacts strong, .privacy-remedy-contacts a { min-width: 0; overflow-wrap: anywhere; }
.privacy-remedy-panel { max-width: 68ch; margin-top: var(--space-5); }
.privacy-closing-note { max-width: 50ch; margin-top: var(--space-7); padding-top: var(--space-5); border-top: 1px solid transparent; border-image: linear-gradient(90deg, var(--color-accent), transparent) 1; }
.privacy-closing-note p { margin: 0; }

@media (max-width: 67.5rem) {
  .privacy-hero__grid { grid-template-columns: minmax(0, 1fr); }
  .privacy-hero__relic { display: none; }
  .privacy-hero__content { max-width: 46rem; }
}

@media (max-width: 64rem) {
  .privacy-document__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
  .privacy-index { grid-column: 1; position: static; }
  .privacy-reader { grid-column: 1; }
  .privacy-index__toggle { display: flex; width: 100%; min-height: 2.75rem; align-items: center; justify-content: space-between; padding: var(--space-3) var(--space-4); color: var(--color-text); font-weight: 800; text-align: left; }
  .privacy-index__toggle span { color: var(--color-accent); font-size: 1.35rem; }
  .privacy-index__body { display: none; padding-top: 0; }
  .privacy-index__body.is-open { display: flex; }
  .privacy-index__nav a { min-height: 2.75rem; }
}

@media (max-width: 61.25rem) {
  .privacy-data-rows > div { grid-template-columns: minmax(0, 1fr); gap: var(--space-2); }
}

@media (max-width: 55rem) {
  .privacy-principles { grid-template-columns: minmax(0, 1fr); }
  .privacy-access-cards { grid-template-columns: minmax(0, 1fr); }
  .privacy-rights-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 57.5rem) {
  .privacy-remedy-contacts { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 47.9375rem) {
  .privacy-hero { padding-block: 4rem 3.5rem; }
  .privacy-hero__content { gap: var(--space-3); }
  .privacy-hero__content h1 { font-size: clamp(2.6rem, 12vw, 4.1rem); }
  .privacy-hero__lead { max-width: 34ch; font-size: 1rem; line-height: var(--leading-body); }
  .privacy-hero__copy { max-width: none; }
  .privacy-meta-row { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
  .privacy-document { padding-block: 4rem; }
  .privacy-section { padding-bottom: var(--space-8); }
  .privacy-section > h2 { margin-bottom: var(--space-4); }
  .privacy-controller-block, .privacy-tech-panel, .privacy-legal-basis, .privacy-retention-panel, .privacy-security-panel, .privacy-request-panel, .privacy-remedy-panel, .privacy-purpose-card { padding: var(--space-4); }
  .privacy-contact-line { grid-template-columns: minmax(0, 1fr); gap: var(--space-1); }
  .privacy-purpose-card { grid-template-columns: minmax(0, 1fr); }
  .privacy-purpose-card__number { font-size: 2.7rem; }
  .privacy-principles > article, .privacy-access-cards > article, .privacy-rights-grid > article, .privacy-remedy-contacts > div { padding: var(--space-4); }
}

@media (prefers-reduced-motion: reduce) {
  .privacy-page * { scroll-behavior: auto; }
}
