.cookie-policy-page {
  min-width: 0;
  background-color: var(--color-night-teal);
}

.cookie-policy-page__hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: var(--space-9) var(--space-8);
}

.cookie-policy-page__hero::before,
.cookie-policy-page__hero::after {
  position: absolute;
  z-index: -1;
  content: "";
  pointer-events: none;
}

.cookie-policy-page__hero::before {
  inset: 0;
  opacity: 0.38;
  background-image: radial-gradient(rgba(242, 235, 221, 0.14) 0.6px, transparent 0.75px);
  background-position: 0 0;
  background-size: 8px 8px;
}

.cookie-policy-page__hero::after {
  inline-size: 15rem;
  block-size: 15rem;
  inset-block-start: -5rem;
  inset-inline-end: 7%;
  border: 1px solid rgba(198, 154, 83, 0.36);
  border-radius: 50%;
  box-shadow: 0 0 0 1.1rem rgba(166, 218, 221, 0.04), 0 0 4rem rgba(198, 154, 83, 0.08);
}

.cookie-policy-page__hero-container,
.cookie-policy-page__content-container {
  min-width: 0;
}

.cookie-policy-page__hero-copy {
  display: flex;
  inline-size: min(100%, 45rem);
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-5);
}

.cookie-policy-page__hero-copy > * {
  min-width: 0;
  margin-block-end: 0;
}

.cookie-policy-page__hero-copy h1 {
  max-inline-size: 16ch;
  color: var(--color-mist);
}

.cookie-policy-page__hero-lead {
  max-inline-size: 64ch;
  color: var(--color-mist);
}

.cookie-policy-page__hero-lead a {
  color: var(--color-spirit-blue);
}

.cookie-policy-page__eyebrow {
  color: var(--color-spirit-blue);
}

.cookie-policy-page__document-meta {
  display: grid;
  inline-size: min(100%, 45rem);
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-end: 0;
}

.cookie-policy-page__meta-item {
  min-width: 0;
  padding: var(--space-3) var(--space-4);
  border-inline-start: 1px solid var(--color-border-dark);
}

.cookie-policy-page__meta-item dt {
  color: var(--color-spirit-blue);
}

.cookie-policy-page__meta-item dd {
  margin-block: var(--space-1) 0;
  color: var(--color-mist);
  font-size: var(--text-small);
  line-height: var(--leading-small);
  overflow-wrap: anywhere;
}

.cookie-policy-page__reading-surface {
  padding-block: var(--space-8) var(--space-9);
}

.cookie-policy-page__article {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--section-space);
}

.cookie-policy-page__article > * {
  min-width: 0;
}

.cookie-policy-page__section {
  min-width: 0;
}

.cookie-policy-page__reader-copy {
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
}

.cookie-policy-page__reader-copy > :last-child,
.cookie-policy-page__categories-intro > :last-child,
.cookie-policy-page__concept-note > :last-child,
.cookie-policy-page__consequence-note > :last-child,
.cookie-policy-page__third-party-note > :last-child,
.cookie-policy-page__category-card > :last-child,
.cookie-policy-page__step-copy > :last-child {
  margin-block-end: 0;
}

.cookie-policy-page__reader-copy p {
  max-inline-size: 68ch;
}

.cookie-policy-page__reader-copy h2 {
  max-inline-size: 23ch;
}

.cookie-policy-page__reader-copy h3 {
  max-inline-size: 28ch;
  margin-block-start: var(--space-6);
}

.cookie-policy-page__reader-copy .eyebrow + h2 {
  margin-block-start: var(--space-3);
}

.cookie-policy-page__concept-note {
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
  margin-block-start: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-inline-start: 3px solid var(--color-sage);
  background: rgba(104, 119, 108, 0.08);
}

.cookie-policy-page__concept-note p:not(.meta) {
  max-inline-size: 60ch;
}

.cookie-policy-page__categories-intro {
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
}

.cookie-policy-page__categories-intro p:not(.eyebrow) {
  max-inline-size: 66ch;
}

.cookie-policy-page__categories-intro .eyebrow + h2 {
  margin-block-start: var(--space-3);
}

.cookie-policy-page__category-grid {
  display: grid;
  inline-size: min(100%, 61.25rem);
  min-width: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-4);
  margin-block-start: var(--space-6);
}

.cookie-policy-page__category-card {
  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-light);
  border-radius: var(--radius-card);
  background: var(--color-parchment);
}

.cookie-policy-page__category-card > * {
  min-width: 0;
  margin-block-end: 0;
}

.cookie-policy-page__category-card h3 {
  max-inline-size: 22ch;
}

.cookie-policy-page__category-card p:not(.meta) {
  max-inline-size: 52ch;
}

.cookie-policy-page__category-card--necessary {
  border-block-start-color: var(--color-sage);
}

.cookie-policy-page__category-card--preferences {
  border-block-start-color: rgba(104, 119, 108, 0.68);
}

.cookie-policy-page__category-card--statistics {
  border-block-start-color: rgba(166, 218, 221, 0.84);
}

.cookie-policy-page__category-card--marketing {
  border-block-start-color: var(--color-border-amber);
}

.cookie-policy-page__category-card--statistics .meta {
  color: #456c70;
}

.cookie-policy-page__category-card--marketing .meta {
  color: #8a6225;
}

.cookie-policy-page__choice-list {
  display: flex;
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-5);
  margin-block: var(--space-6) 0;
  padding-inline-start: 0;
  list-style: none;
}

.cookie-policy-page__choice-item {
  display: flex;
  min-width: 0;
  align-items: flex-start;
  gap: var(--space-4);
  padding-block-end: var(--space-5);
  border-block-end: 1px solid rgba(104, 119, 108, 0.38);
}

.cookie-policy-page__choice-item:last-child {
  padding-block-end: 0;
  border-block-end: 0;
}

.cookie-policy-page__step-number {
  flex: 0 0 3.5rem;
  min-inline-size: 3.5rem;
  color: #8a6225;
  font-size: var(--text-meta);
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: var(--leading-meta);
}

.cookie-policy-page__step-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.cookie-policy-page__step-copy h3 {
  max-inline-size: 26ch;
}

.cookie-policy-page__step-copy p {
  max-inline-size: 64ch;
}

.cookie-policy-page__consequence-note {
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
  margin-block-start: var(--space-5);
  padding: var(--space-4) var(--space-5);
  border-inline-start: 3px solid var(--color-amber);
  background: rgba(198, 154, 83, 0.08);
}

.cookie-policy-page__consequence-note p {
  max-inline-size: 58ch;
}

.cookie-policy-page__third-party-note {
  inline-size: min(100%, var(--container-reader));
  min-width: 0;
  margin-block-start: var(--space-6);
  padding: var(--space-5);
  border: 3px double rgba(104, 119, 108, 0.62);
  border-radius: var(--radius-small);
  background: rgba(242, 235, 221, 0.42);
}

.cookie-policy-page__third-party-note h3 {
  max-inline-size: 25ch;
}

.cookie-policy-page__third-party-note p:not(.meta) {
  max-inline-size: 62ch;
}

.cookie-policy-page__closing {
  padding-block-start: var(--space-6);
  border-block-start: 1px solid rgba(104, 119, 108, 0.52);
}

.cookie-policy-page__contact-link {
  display: inline-flex;
  min-block-size: 2.75rem;
  align-items: center;
  color: var(--color-night-teal);
  font-weight: 700;
  overflow-wrap: anywhere;
}

.cookie-policy-page__effective-line {
  display: block;
  inline-size: fit-content;
  max-inline-size: 100%;
  margin-block-start: var(--space-6);
  padding-block-start: var(--space-3);
  border-block-start: 2px solid var(--color-amber);
  color: var(--color-ink);
  font-size: var(--text-small);
  font-weight: 700;
}

@media (max-width: 67.4375rem) {
  .cookie-policy-page__category-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .cookie-policy-page__category-card {
    inline-size: 100%;
  }
}

@media (max-width: 47.9375rem) {
  .cookie-policy-page__hero {
    padding-block: var(--space-7) var(--space-6);
  }

  .cookie-policy-page__hero::after {
    inline-size: 10rem;
    block-size: 10rem;
    inset-block-start: -3rem;
    inset-inline-end: -3rem;
    box-shadow: 0 0 0 0.75rem rgba(166, 218, 221, 0.035), 0 0 2.5rem rgba(198, 154, 83, 0.06);
  }

  .cookie-policy-page__hero-copy {
    inline-size: 100%;
    gap: var(--space-4);
  }

  .cookie-policy-page__hero-copy h1 {
    font-size: clamp(2.5rem, 10vw, 3.5rem);
  }

  .cookie-policy-page__hero-lead {
    max-inline-size: 100%;
  }

  .cookie-policy-page__document-meta {
    grid-template-columns: minmax(0, 1fr);
    gap: var(--space-2);
  }

  .cookie-policy-page__meta-item {
    padding-inline: var(--space-3);
  }

  .cookie-policy-page__reading-surface {
    padding-block: var(--space-6) var(--space-7);
  }

  .cookie-policy-page__article {
    gap: var(--section-space);
  }

  .cookie-policy-page__reader-copy,
  .cookie-policy-page__categories-intro,
  .cookie-policy-page__concept-note,
  .cookie-policy-page__choice-list,
  .cookie-policy-page__consequence-note,
  .cookie-policy-page__third-party-note {
    inline-size: 100%;
  }

  .cookie-policy-page__reader-copy p,
  .cookie-policy-page__categories-intro p:not(.eyebrow),
  .cookie-policy-page__concept-note p:not(.meta),
  .cookie-policy-page__step-copy p,
  .cookie-policy-page__consequence-note p,
  .cookie-policy-page__third-party-note p:not(.meta) {
    max-inline-size: 100%;
  }

  .cookie-policy-page__concept-note,
  .cookie-policy-page__consequence-note {
    padding: var(--space-4);
  }

  .cookie-policy-page__category-grid {
    inline-size: 100%;
    gap: var(--space-3);
    margin-block-start: var(--space-5);
  }

  .cookie-policy-page__category-card {
    padding: var(--space-4);
  }

  .cookie-policy-page__choice-list {
    gap: var(--space-5);
    margin-block-start: var(--space-5);
  }

  .cookie-policy-page__choice-item {
    flex-direction: column;
    gap: var(--space-2);
    padding-block-end: var(--space-5);
  }

  .cookie-policy-page__step-number {
    flex: 0 0 auto;
    min-inline-size: 0;
  }

  .cookie-policy-page__third-party-note {
    padding: var(--space-4);
  }

  .cookie-policy-page__effective-line {
    inline-size: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cookie-policy-page__hero::before,
  .cookie-policy-page__hero::after {
    animation: none;
  }
}
