/*
  RESET https://www.joshwcomeau.com/css/custom-css-reset/
*/
/*
  1. Use a more-intuitive box-sizing model.
*/
*,
*::before,
*::after {
  box-sizing: border-box;
}
/*
  2. Remove default margin
*/
* {
  margin: 0;
}
/*
  3. Allow percentage-based heights in the application
*/
html,
body {
  height: 100%;
}
/*
  Typographic tweaks!
  4. Add accessible line-height
  5. Improve text rendering
*/
body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}
/*
  6. Improve media defaults
*/
img,
picture,
video,
canvas,
svg {
  display: block;
  max-width: 100%;
}
/*
  7. Remove built-in form typography styles
*/
input,
button,
textarea,
select {
  font: inherit;
}
/*
  8. Avoid text overflows
*/
p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}
/*
  9. Create a root stacking context
*/
#root,
#__next {
  isolation: isolate;
}
/* END RESET */

/* Typography */
body {
  font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 16px;
}

.flow > * + * {
  margin-top: 1.5em;
}

/* Landing Page */
body.landing {
  background: linear-gradient(
      120deg,
      transparent 0,
      transparent 10%,
      hsla(245, 27%, 75%, 5%) 10%,
      hsla(245, 27%, 75%, 5%) 18%,
      hsla(245, 27%, 75%, 10%) 18%,
      hsla(245, 27%, 75%, 10%) 42%,
      hsla(245, 27%, 75%, 5%) 42%,
      hsla(245, 27%, 75%, 5%) 50%,
      transparent 50%,
      transparent 100%
    ),
    linear-gradient(120deg, hsl(245, 56%, 36%), hsl(284, 76%, 49%)) no-repeat
      100%;
  background-repeat: no-repeat no-repeat;
  background-size: 100% 100%, 100% 100%;
  background-position: 0 0, 0 0;

  display: grid;
  grid-template-rows:
    1fr
    min-content;
}

.landing main {
  color: white;
  font-size: 1.25em;
  display: grid;
  gap: 1em;
  grid-template-rows:
    1fr
    min-content;
  padding-inline: 1rem;
  align-items: center;
  width: 100%;
  max-width: 1250px;
  margin-inline: auto;
}

@media screen and (min-width: 760px) {
  .landing main {
    font-size: 2em;
    align-items: end;
  }
}

.happier-people-logo {
  width: 100%;
  max-width: 500px;
  height: auto;
}

.landing .happier-people-logo {
  margin-inline-end: auto;
  margin-block-start: 1em;
}

.landing .people {
  width: 100%;
  max-width: 617px;
  height: auto;
  margin-inline-start: auto;
  filter: brightness(120%);
  opacity: 0.7;
}

.landing .content-wrapper {
  align-self: center;
  max-width: 700px;
  text-align: center;
}

@media screen and (min-width: calc(500px + 2rem)) {
  .landing .content-wrapper {
    text-align: left;
  }
}

/* FOOTER */
.landing footer {
  background-color: white;
  color: black;
  padding: 2em;
  text-align: center;
}

.landing footer a {
  color: black;
  text-decoration: none;
}

.landing footer a:hover {
  text-decoration: underline;
}

.landing footer a:active,
.landing footer a:visited {
  text-decoration: none;
  opacity: 0.9;
}

.landing footer nav a {
  display: block;
}

.landing footer nav a + a {
  margin-top: 1em;
}

@media screen and (min-width: 480px) {
  .landing footer nav {
    display: flex;
    gap: 1em;
    justify-content: center;
    align-items: center;
  }

  .landing footer nav a {
    display: flex;
    gap: 1em;
  }
  .landing footer nav a + a {
    margin-top: 0;
  }
  .landing footer nav a + a::before {
    content: "\2022";
  }
}

/* LEGAL */
.legal .happier-people-logo {
  width: 100%;
  max-width: ;
}

.legal svg.happier-people-logo path,
.legal svg.happier-people-logo rect {
  fill: black;
}

.legal main {
  padding: 1em;
  max-width: 800px;
  margin-inline: auto;
}

@media screen and (min-width: 760px) {
  .legal main {
    padding-inline: 2em;
  }
}
