/*
 * The legal documents — consent, privacy policy, terms, how Earth Guide works.
 *
 * Their tables have three and four columns. On a phone the theme let the
 * last column run off the edge of the screen, clipped rather than scrolled,
 * so a person reading what they were about to agree to could not read the
 * retention periods at all. Below 700px each row becomes a card with the
 * column name above each value (from the data-label the build writes).
 */

.eu-legal [hidden] { display: none !important; }

.eu-legal {
  color: #1e2132;
  line-height: 1.65;
}

.eu-legal h2 {
  margin: 32px 0 12px;
  font-size: 20px;
  line-height: 1.3;
  color: #331a38;
}

.eu-legal .eu-legal-meta {
  font-size: 13px;
  color: #7d7489;
}

.eu-legal .eu-legal-table {
  margin: 12px 0 20px;
  overflow-x: auto;
}

.eu-legal .eu-legal-table table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.5;
}

.eu-legal .eu-legal-table th,
.eu-legal .eu-legal-table td {
  padding: 10px 12px;
  border: 1px solid #e6dde4;
  text-align: start;
  vertical-align: top;
}

.eu-legal .eu-legal-table th {
  background: #f6eff4;
  color: #331a38;
  font-weight: 600;
}

@media (max-width: 700px) {
  .eu-legal .eu-legal-table { overflow-x: visible; }

  .eu-legal .eu-legal-table table,
  .eu-legal .eu-legal-table tbody,
  .eu-legal .eu-legal-table tr,
  .eu-legal .eu-legal-table td { display: block; width: 100%; }

  .eu-legal .eu-legal-table thead { display: none; }

  .eu-legal .eu-legal-table tr {
    margin: 0 0 12px;
    border: 1px solid #e6dde4;
    border-radius: 10px;
    overflow: hidden;
  }

  .eu-legal .eu-legal-table td {
    border: 0;
    border-top: 1px solid #f0e8ee;
    padding: 8px 12px;
  }

  .eu-legal .eu-legal-table td:first-child {
    border-top: 0;
    background: #f6eff4;
    font-weight: 600;
    color: #331a38;
  }

  .eu-legal .eu-legal-table td:not(:first-child)::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 2px;
    font-size: 11px;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #7d7489;
  }
}
