.cookie-policy-page {
  background: var(--surface-page);
}

.cookie-policy-page__title-band {
  padding-block: var(--space-8);
}

.cookie-policy-page__title-container {
  display: block;
}

.cookie-policy-page__title-content {
  width: min(100%, 56.25rem);
  min-width: 0;
}

.cookie-policy-page__title-content > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__title {
  margin-block-end: var(--space-5);
  color: var(--color-warm-ivory);
  font-size: clamp(3rem, 7vw, 5rem);
  line-height: var(--leading-tight);
}

.cookie-policy-page__date-line {
  display: flex;
  width: min(100%, 31rem);
  min-width: 0;
  align-items: center;
  gap: var(--space-3);
  color: var(--color-champagne-beige);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  line-height: 1.4;
  text-transform: uppercase;
}

.cookie-policy-page__date-line::before {
  width: var(--space-7);
  min-width: 0;
  height: 1px;
  background: var(--color-champagne-beige);
  content: "";
}

.cookie-policy-page__introduction {
  padding-block: var(--space-7) var(--space-2);
}

.cookie-policy-page__intro-column {
  width: min(100% - (var(--container-padding) * 2), 42.5rem);
  min-width: 0;
}

.cookie-policy-page__intro-column .lead {
  margin-block-end: 0;
}

.cookie-policy-page__section {
  padding-block-start: var(--section-space);
}

.cookie-policy-page__section--contact {
  padding-block-end: var(--section-space);
}

.cookie-policy-page__definition-column {
  width: min(100% - (var(--container-padding) * 2), 42.5rem);
  min-width: 0;
}

.cookie-policy-page__definition-column > h2 {
  margin-block-end: var(--space-6);
}

.cookie-policy-page__prose-unit {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookie-policy-page__prose-unit > * {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__prose-unit h3 {
  color: var(--color-deep-ocean);
  font-family: var(--font-body);
  font-size: var(--text-label);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: 1.4;
}

.cookie-policy-page__definition-divider {
  width: 100%;
  height: 1px;
  margin-block: var(--space-7);
  background: var(--color-border);
}

.cookie-policy-page__purpose-introduction {
  width: min(100% - (var(--container-padding) * 2), 42.5rem);
  min-width: 0;
}

.cookie-policy-page__purpose-introduction > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__purpose-list {
  display: grid;
  width: min(100% - (var(--container-padding) * 2), 47.5rem);
  min-width: 0;
  grid-template-columns: minmax(0, 1fr);
  margin: var(--space-7) auto 0;
}

.cookie-policy-page__purpose-item {
  display: grid;
  min-width: 0;
  grid-template-columns: 3rem minmax(15rem, 1fr);
  column-gap: var(--space-5);
  padding-block: var(--space-5);
  border-block-start: 1px solid var(--color-champagne-beige);
}

.cookie-policy-page__purpose-item:last-child {
  border-block-end: 1px solid var(--color-champagne-beige);
}

.cookie-policy-page__purpose-marker {
  width: 3rem;
  min-width: 0;
  color: var(--color-muted-eucalyptus);
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: var(--tracking-meta);
  line-height: 1.5;
}

.cookie-policy-page__purpose-content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
}

.cookie-policy-page__purpose-content > * {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__purpose-content h3 {
  color: var(--color-deep-ocean);
}

.cookie-policy-page__purpose-note {
  min-width: 0;
  margin-block-start: var(--space-3);
  padding: var(--space-4);
  border: var(--border-default);
  border-inline-start: 3px solid var(--color-muted-eucalyptus);
  border-radius: var(--radius-md);
  background: var(--surface-quiet);
}

.cookie-policy-page__purpose-note > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__controls-prose,
.cookie-policy-page__controls-follow-up {
  width: min(100% - (var(--container-padding) * 2), 42.5rem);
  min-width: 0;
}

.cookie-policy-page__controls-prose > :last-child,
.cookie-policy-page__controls-follow-up > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__browser-callout {
  display: flex;
  width: min(100% - (var(--container-padding) * 2), 47.5rem);
  min-width: 0;
  flex-direction: column;
  gap: var(--space-3);
  margin: var(--space-6) auto;
  padding: var(--space-6);
  border: var(--border-default);
  border-radius: var(--radius-lg);
  background: var(--surface-muted);
}

.cookie-policy-page__browser-callout > * {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__callout-label {
  color: var(--color-deep-ocean);
  font-size: var(--text-label);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: 1.35;
}

.cookie-policy-page__restriction-note {
  display: grid;
  min-width: 0;
  grid-template-columns: 1.125rem minmax(0, 1fr);
  column-gap: var(--space-3);
  padding: var(--space-4);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--surface-quiet);
}

.cookie-policy-page__info-marker {
  display: inline-flex;
  width: 1.125rem;
  min-width: 0;
  height: 1.125rem;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--color-deep-ocean);
  border-radius: 50%;
  color: var(--color-deep-ocean);
  font-family: var(--font-heading);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
}

.cookie-policy-page__restriction-note > div {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.cookie-policy-page__restriction-note h3,
.cookie-policy-page__restriction-note p {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__restriction-note h3 {
  color: var(--color-deep-ocean);
  font-family: var(--font-body);
  font-size: var(--text-label);
  font-weight: 700;
  letter-spacing: var(--tracking-label);
  line-height: 1.4;
}

.cookie-policy-page__controls-follow-up {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
}

.cookie-policy-page__controls-follow-up > * {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__changes-column {
  width: min(100% - (var(--container-padding) * 2), 41.25rem);
  min-width: 0;
}

.cookie-policy-page__changes-column > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__champagne-rule {
  width: 100%;
  height: 1px;
  margin-block-end: var(--space-5);
  background: var(--color-champagne-beige);
}

.cookie-policy-page__contact-column {
  width: min(100% - (var(--container-padding) * 2), 42.5rem);
  min-width: 0;
}

.cookie-policy-page__contact-column > h2 {
  margin-block-end: var(--space-6);
}

.cookie-policy-page__contact-strip {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-5);
  padding: var(--space-5);
  border: var(--border-default);
  border-radius: var(--radius-md);
  background: var(--surface-raised);
}

.cookie-policy-page__contact-strip > * {
  min-width: 0;
  margin-block: 0;
}

.cookie-policy-page__contact-links {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: var(--space-2);
}

.cookie-policy-page__contact-links > * {
  width: 100%;
  min-width: 0;
}

.cookie-policy-page__contact-link {
  display: flex;
  min-width: 0;
  min-height: 2.75rem;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding-block: var(--space-2);
}

.cookie-policy-page__contact-link span {
  min-width: 0;
  color: var(--color-charcoal);
  font-size: var(--text-label);
  font-weight: 700;
}

.cookie-policy-page__contact-link strong {
  min-width: 0;
  overflow-wrap: anywhere;
  text-align: end;
}

.cookie-policy-page__related-policy {
  width: min(100%, 37.5rem);
  min-width: 0;
  margin-block-start: var(--space-5);
}

.cookie-policy-page__related-policy > :last-child {
  margin-block-end: 0;
}

@media (max-width: 28.6875rem) {
  .cookie-policy-page__purpose-item {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--space-2);
  }

  .cookie-policy-page__purpose-marker {
    width: auto;
  }
}

@media (min-width: 48rem) {
  .cookie-policy-page__title-band {
    padding-block: var(--space-9);
  }

  .cookie-policy-page__introduction {
    padding-block-start: var(--space-8);
  }

  .cookie-policy-page__section--contact {
    padding-block-end: var(--space-9);
  }
}

@media (min-width: 64rem) {
  .cookie-policy-page__title-band {
    padding-block: var(--space-9);
  }

  .cookie-policy-page__section--contact {
    padding-block-end: var(--space-10);
  }
}

@media (max-width: 23.4375rem) {
  .cookie-policy-page__intro-column,
  .cookie-policy-page__definition-column,
  .cookie-policy-page__purpose-introduction,
  .cookie-policy-page__purpose-list,
  .cookie-policy-page__controls-prose,
  .cookie-policy-page__controls-follow-up,
  .cookie-policy-page__browser-callout,
  .cookie-policy-page__changes-column,
  .cookie-policy-page__contact-column {
    width: min(100% - 2rem, 47.5rem);
  }

  .cookie-policy-page__contact-link {
    align-items: flex-start;
    flex-direction: column;
    justify-content: center;
    gap: var(--space-1);
  }

  .cookie-policy-page__contact-link strong {
    text-align: start;
  }
}
