.legal-page {
  --panel: var(--day-silver);
  --gutter: clamp(20px, 4vw, 56px);
  background: var(--day-paper);
  color: var(--day-ink);
  font-family: var(--day-body);
  overflow-wrap: anywhere;
}

.legal-page .page {
  max-width: 1280px;
}

.legal-page .masthead {
  grid-template-columns: 44px minmax(0, 1fr);
}

.legal-page .masthead::after,
.legal-page .rail {
  display: none;
}

.legal-page .masthead__inner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  padding: 16px var(--gutter);
}

.legal-page .masthead__nav {
  flex-wrap: wrap;
  margin-left: auto;
}

.legal-page .masthead__slogan {
  flex-basis: 100%;
  border: 0;
  padding: 0;
  color: var(--day-muted);
}

.legal-page .masthead__place {
  display: none;
}


.legal-page .plate {
  display: block;
}

.legal-page .display {
  font-family: var(--day-display);
  font-stretch: 75%;
}

.legal-page .legal h1 {
  color: var(--day-blue);
  max-width: none;
}

.legal-page .legal__intro {
  color: var(--day-muted);
}

.legal-page a:focus-visible {
  outline: 3px solid var(--day-blue);
  outline-offset: 3px;
}

.legal-page .legal a,
.legal-page .colophon dd a {
  color: var(--day-blue);
  text-underline-offset: 4px;
}

.legal-contents {
  background: var(--day-silver);
  margin-top: 36px;
  padding: 24px;
}

.legal-contents h2 {
  font-size: 1.125rem;
  margin-bottom: 12px;
}

.legal-contents__groups {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
  gap: 24px;
}

.legal-contents ul {
  list-style: none;
}

.legal-contents__groups > div:first-child ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 20px;
}

.legal-contents__groups > div > a {
  font-weight: 700;
}

.legal-contents a {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 8px 0;
  font-size: 1rem;
  line-height: 1.4;
}

.legal-page .doc__head {
  border-color: var(--day-blue);
}

.legal-page .doc__body {
  margin-bottom: 32px;
}

.legal-page .clause {
  grid-template-columns: minmax(0, 1fr) minmax(0, 2.4fr);
}

.legal-page .clause__body,
.legal-page .doc__body {
  min-width: 0;
  font-size: 1.0625rem;
  line-height: 1.75;
}

.legal-page .clause h3 {
  line-height: 1.3;
}

.legal-page .clause__body h4 {
  font-stretch: 100%;
  line-height: 1.5;
}

@media (max-width: 900px) {
  .legal-page .masthead__nav {
    margin-left: 0;
  }

  .legal-page .clause {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }

  .legal-page .clause h3 {
    position: static;
  }

  .legal-contents__groups {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 600px) {
  .legal-page .masthead__inner {
    padding: 12px 16px;
  }

  .legal-page .masthead__nav a {
    padding: 0 8px;
  }

  .legal-page .plate__body {
    padding-top: 40px;
  }

  .legal-contents {
    padding: 16px;
  }

  .legal-contents__groups > div:first-child ul {
    grid-template-columns: minmax(0, 1fr);
  }

  .legal-page .clause h3 {
    grid-template-columns: 1.75rem minmax(0, 1fr);
    column-gap: 12px;
  }

  .legal-page .colophon__rows > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
  }

  .legal-page .colophon dd a {
    display: block;
    padding: 10px 0;
  }
}
