/* Converted from src/components/site/legal/LegalPage.module.css (CSS Module): local classes are prefixed "legal-legal-page__". */
/*
 * Legal pages — Elementor layout of the former site (post-228413/228530/228626.css):
 * boxed 1300px section, columns 49% / 51% from 768px (stacked below), left column padded
 * 0 16px, right column padded 30px, 20px between widgets, 32px headings.
 */

.legal-legal-page__legal {
  /* bottom spacers of the original: 1vh + 4vh (6vh + 6vh on mobile) */
  padding-bottom: 5vh;
}

.legal-legal-page__grid {
  display: flex;
  flex-wrap: wrap;
  max-width: var(--container-boxed);
  margin-inline: auto;
}

.legal-legal-page__aside {
  width: 49%;
  /* 2vh spacer + 20px widget gap above the title */
  padding: calc(2vh + 20px) 16px 0;
}

.legal-legal-page__main {
  width: 51%;
  min-width: 0;
  padding: 30px;
}

/* Text widgets keep their paragraph margins inside (Elementor widgets are flex items). */
.legal-legal-page__text {
  display: flow-root;
  overflow-wrap: break-word;
}

.legal-legal-page__section + .legal-legal-page__section {
  margin-top: 20px;
}

.legal-legal-page__legal .legal-legal-page__title {
  margin: 0 0 20px;
  font-size: 2rem; /* 32px */
}

.legal-legal-page__legal .legal-legal-page__lookH3 {
  line-height: var(--h3-leading);
  letter-spacing: -0.035em;
}

.legal-legal-page__legal .legal-legal-page__lookH4 {
  line-height: var(--h4-leading);
  letter-spacing: -0.03em;
}

.legal-legal-page__legal .legal-legal-page__indent {
  padding-left: 40px;
}

.legal-legal-page__legal .legal-legal-page__email {
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  transition: color var(--duration) var(--ease);
}

.legal-legal-page__legal .legal-legal-page__email:hover {
  color: var(--color-brand);
}

/* ----- Credits: sub-sections and lists ----- */
.legal-legal-page__subsection {
  margin-top: 20px;
}

/* the first one follows a 3vh spacer widget */
.legal-legal-page__subsection:first-child {
  margin-top: calc(3vh + 20px);
}

.legal-legal-page__legal .legal-legal-page__subtitle {
  margin: 0 0 20px;
  font-size: var(--h5-size);
  line-height: var(--h5-leading);
  letter-spacing: -0.025em;
}

.legal-legal-page__list {
  display: flow-root;
  margin: 0;
  padding: 0;
  list-style: none;
}

.legal-legal-page__list li {
  margin: 1em 0;
}

.legal-legal-page__dense {
  line-height: 23px;
}

@media (max-width: 767px) {
  .legal-legal-page__legal {
    padding-bottom: 12vh;
  }

  .legal-legal-page__aside,
  .legal-legal-page__main {
    width: 100%;
  }

  .legal-legal-page__aside {
    padding-top: calc(6vh + 20px);
  }
}
