/* Page-owned styles for the Cookie Policy page. Scoped to .cookies-page. */

.cookies-page {
  background-color: var(--color-reef-deep);
  color: var(--color-off-white);
  padding-block: var(--space-64) var(--space-96);
}

/* Hero */
.cookies-hero {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-padding-mobile);
  margin-block-end: var(--space-64);
}

.cookies-hero__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
  max-width: 800px;
  margin-inline: auto;
}

.cookies-hero__title {
  color: var(--color-sand-warm);
  font-size: var(--text-display-l);
  line-height: var(--leading-display-l);
  letter-spacing: var(--tracking-display);
  text-transform: uppercase;
  margin-block-end: 0;
}

.cookies-hero__lead {
  font-size: var(--text-body-l);
  line-height: var(--leading-body-l);
  color: var(--color-off-white);
  max-width: 60ch;
  margin-block-end: 0;
}

/* Main content wrapper */
.cookies-content {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-padding-mobile);
  display: flex;
  flex-direction: column;
  gap: var(--space-64);
}

/* Sections */
.cookies-section {
  width: 100%;
}

.cookies-section__inner {
  max-width: 800px;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.cookies-section h2 {
  color: var(--color-sand-warm);
  font-size: var(--text-heading-l);
  line-height: var(--leading-heading-l);
  letter-spacing: var(--tracking-heading);
  text-transform: uppercase;
  margin-block-end: 0;
}

.cookies-section p {
  max-width: 60ch;
  margin-block-end: 0;
}

/* Panels */
.cookies-panel {
  width: 100%;
  border-radius: var(--radius-irregular-a);
  border: var(--border-mineral);
  overflow: hidden;
}

.cookies-panel--off-white {
  background-color: var(--color-off-white);
  color: var(--color-reef-deep);
  border-block-start: 4px solid var(--color-coral-action);
}

.cookies-panel--teal {
  background-color: var(--color-teal-dark);
  color: var(--color-off-white);
}

.cookies-panel__inner {
  max-width: 800px;
  margin-inline: auto;
  padding: var(--space-24);
  display: flex;
  flex-direction: column;
  gap: var(--space-16);
}

.cookies-panel h2 {
  color: var(--color-sand-warm);
  font-size: var(--text-heading-l);
  line-height: var(--leading-heading-l);
  letter-spacing: var(--tracking-heading);
  text-transform: uppercase;
  margin-block-end: 0;
}

.cookies-panel p {
  max-width: 60ch;
  margin-block-end: 0;
}

.cookies-panel--off-white h2 {
  color: var(--color-reef-deep);
}

.cookies-panel--off-white p {
  color: var(--color-reef-deep);
}

/* Lists */
.cookies-list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.cookies-list li {
  position: relative;
  padding-inline-start: var(--space-24);
  font-size: var(--text-body-m);
  line-height: var(--leading-body-m);
}

.cookies-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.65em;
  width: 8px;
  height: 8px;
  background-color: var(--color-coral-action);
  border-radius: 50%;
}

.cookies-list--instructional {
  border-inline-start: 3px solid var(--color-mineral-grey);
  padding-inline-start: var(--space-24);
}

.cookies-list--instructional li {
  padding-inline-start: 0;
}

.cookies-list--instructional li::before {
  display: none;
}

/* Cookie categories */
.cookies-category {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  border-block-start: 1px solid var(--border-contour);
  padding-block-start: var(--space-24);
  margin-block-start: var(--space-8);
}

.cookies-category:first-of-type {
  border-block-start: none;
  padding-block-start: 0;
  margin-block-start: 0;
}

.cookies-category h3 {
  color: var(--color-sand-warm);
  font-size: var(--text-heading-m);
  line-height: var(--leading-heading-m);
  letter-spacing: var(--tracking-heading);
  text-transform: uppercase;
  margin-block-end: 0;
}

.cookies-category p {
  max-width: 60ch;
  margin-block-end: 0;
}

/* Contact list */
.cookies-contact-list {
  list-style: none;
  padding-inline-start: 0;
  margin-block-end: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
}

.cookies-contact-list li {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
  font-size: var(--text-body-m);
  line-height: var(--leading-body-m);
}

.cookies-contact-label {
  font-size: var(--text-body-s);
  line-height: var(--leading-body-s);
  letter-spacing: var(--tracking-caption);
  text-transform: uppercase;
  color: var(--color-mineral-grey);
}

.cookies-contact-list a {
  color: var(--color-coral-action);
  transition: color var(--transition-fast);
}

.cookies-contact-list a:hover {
  color: var(--color-coral-deep);
}

/* Effective date emphasis */
.cookies-effective-date {
  color: var(--color-coral-action);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Responsive */
@media (min-width: 768px) {
  .cookies-page {
    padding-block: var(--space-96) var(--space-128);
  }

  .cookies-hero,
  .cookies-content {
    padding-inline: var(--container-padding-desktop);
  }

  .cookies-hero {
    margin-block-end: var(--space-96);
  }

  .cookies-panel__inner {
    padding: var(--space-32);
  }

  .cookies-contact-list li {
    flex-direction: row;
    align-items: baseline;
    gap: var(--space-8);
  }

  .cookies-contact-label {
    min-width: 80px;
  }
}

@media (min-width: 1024px) {
  .cookies-content {
    gap: var(--space-96);
  }
}

@media (max-width: 390px) {
  .cookies-page {
    padding-block: var(--space-48) var(--space-64);
  }

  .cookies-hero__title {
    font-size: var(--text-display-m);
  }

  .cookies-panel__inner {
    padding: var(--space-16);
  }

  .cookies-contact-list li {
    flex-direction: column;
    gap: var(--space-2);
  }
}
