header.home-header,
footer.home-footer,
#intro,
#para,
#early-tester,
#trial,
#features,
#pricing {
  padding: min(3vw, 1.5em);
  font-size: clamp(0.75rem, 3vw, 1rem);
}

#intro {
  background-color: hsl(205, 70%, 50%);
  color: white;
  background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22m0%2032%2032-3v3H0Z%22%3E%3Canimate%20attributeName%3D%22d%22%20dur%3D%2240s%22%20repeatCount%3D%22indefinite%22%20values%3D%22M%200%2032%20L%2032%2029%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2031%20L%2032%2030%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2032%20L%2032%2029%20L%2032%2032%20L%200%2032%20Z%22%2F%3E%3C%2Fpath%3E%3C%2Fsvg%3E);
  background-size: cover;
  background-position: bottom;
  padding-bottom: 0;
}
#intro h1 {
  font-size: 3em;
  font-weight: 600;
  margin-bottom: -0.5em;
}
#intro p.lead {
  font-size: 2em;
  font-weight: 400;
}
#intro p.buttons {
  font-size: 1.25em;
}
#intro p.buttons a.button {
  font-weight: 400;
  margin-bottom: 1em;
  margin-right: 1em;
}
@media screen and (min-width: 70em) {
  #intro .row {
    display: flex;
    gap: 1.5em;
  }
  #intro .row .col {
    width: 50%;
  }
}

#para,
#trial {
  color: hsl(205, 100%, 25%);
  background-color: white;
}
#trial {
  text-align: center;
  color: #000;
  background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22hsl%28205%2C%2070%25%2C%2050%25%29%22%20d%3D%22m0%2029%2032%203H0Z%22%3E%3Canimate%20attributeName%3D%22d%22%20dur%3D%2240s%22%20repeatCount%3D%22indefinite%22%20values%3D%22M%200%2029%20L%2032%2032%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2030%20L%2032%2031%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2029%20L%2032%2032%20L%2032%2032%20L%200%2032%20Z%22%2F%3E%3C%2Fpath%3E%3C%2Fsvg%3E);
  background-size: cover;
  background-position: bottom;
  padding-bottom: 8vw;
}
#para p,
#trial p.lead {
  margin: 0;
  font-size: 1.75em;
}
#trial p.lead {
  border-top: 1px solid hsl(205, 67%, 50%);
  margin-top: 1.5em;
  padding-top: 1.5em;
}
#trial p.buttons {
  font-size: 1.25em;
  margin: 0;
}
#trial p.buttons a.button {
  font-weight: 400;
  color: #fff;
  margin: 1em;
}

#early-tester .box {
  background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20preserveAspectRatio%3D%22none%22%20viewBox%3D%220%200%20128%20128%22%3E%3Cpath%20fill%3D%22hsl%2825%2C%20100%25%2C%2050%25%29%22%20d%3D%22m0%208%20120-8%208%20120-120%208L0%208Z%22%20transform-origin%3D%2264%2064%22%3E%3CanimateTransform%20attributeName%3D%22transform%22%20dur%3D%2260s%22%20repeatCount%3D%22indefinite%22%20type%3D%22rotate%22%20values%3D%220%3B6%3B0%22%2F%3E%3C%2Fpath%3E%3C%2Fsvg%3E);
  padding: 2vw 6vw;
  font-size: 1.25em;
  color: #fff;
  text-align: center;
}
#early-tester .box .button {
  background-color: hsl(25, 100%, 100%);
  color: hsl(25, 100%, 50%);
  padding: 0.5em 1em;
  border: none;
  border-radius: 0.25em;
  cursor: pointer;
}
#early-tester .box .button:hover {
  background-color: hsl(25, 100%, 90%);
}

#pricing {
  background-color: hsl(205, 70%, 50%);
  color: #fff;
  padding-top: 0;
  text-align: center;
  padding-bottom: 4em;
}
#pricing h2 {
  font-size: 2.25em;
  font-weight: 700;
  margin: 0;
  margin-bottom: 0.5em;
}
#pricing .col {
  display: inline-block;
  padding: 0.5em;
  vertical-align: top;
}
#pricing .card {
  background: #fff;
  color: #000;
  max-width: 30em;
  border: 0.1875em solid hsl(205 100% 35%);
  border-radius: 1em;
}
#pricing .card h3 {
  background-color: hsl(205 100% 35%);
  color: #fff;
  margin: 0;
  padding: 0.5em 1em;
  font-weight: 500;
}
#pricing .card .content {
  padding: 1em;
}
#pricing .card p.price {
  color: hsl(205, 100%, 35%);
  border-bottom: 0.125em solid hsl(205, 100%, 85%);
  padding-bottom: 1em;
  margin: 0.5em 0;
}
#pricing .card p.price span {
  display: inline-block;
  line-height: 1;
}
#pricing .card p.price span.dollar {
  vertical-align: 0.625em;
  font-size: 1.75em;
  font-weight: 600;
}
#pricing .card p.price span.number {
  font-size: 3.75em;
  font-weight: 700;
}
#pricing .card p.price span.term {
  font-size: 1.75em;
  vertical-align: 0.125em;
}
#pricing .card ul.features {
  list-style-type: "\2714\2002";
  width: 22em;
  text-align: left;
  font-size: 1.125em;
  font-weight: 300;
  padding-left: 1.5em;
  height: 7em;
}
#pricing .card ul.features li {
  padding-bottom: 0.75em;
}
#pricing .card ul.features li::marker {
  color: hsl(205, 100%, 65%);
  padding-right: 1em;
}
#pricing .card p.signup {
  margin: 0;
  font-size: 1.25em;
}
#pricing .card p.signup a.button {
  display: block;
}

/* footer styles are imported */

/* Features Section */
#features {
  background-color: hsl(205, 100%, 95%);
  background-image: url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22m0%2029%2032-3v6H0Z%22%3E%3Canimate%20attributeName%3D%22d%22%20dur%3D%2240s%22%20repeatCount%3D%22indefinite%22%20values%3D%22M%200%2029%20L%2032%2026%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2028%20L%2032%2027%20L%2032%2032%20L%200%2032%20Z%3B%20M%200%2029%20L%2032%2026%20L%2032%2032%20L%200%2032%20Z%22%2F%3E%3C%2Fpath%3E%3C%2Fsvg%3E),
    url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2032%2032%22%3E%3Cpath%20fill%3D%22%23fff%22%20d%3D%22M0%200h32v6L0%203Z%22%3E%3Canimate%20attributeName%3D%22d%22%20dur%3D%2240s%22%20repeatCount%3D%22indefinite%22%20values%3D%22M%200%200%20L%2032%200%20L%2032%206%20L%200%203%20Z%3B%20M%200%200%20L%2032%200%20L%2032%205%20L%200%204%20Z%3B%20M%200%200%20L%2032%200%20L%2032%206%20L%200%203%20Z%22%2F%3E%3C%2Fpath%3E%3C%2Fsvg%3E);
  background-size: cover, cover;
  background-position: bottom, top;
}

#features h2 {
  font-size: 2.25em;
  font-weight: 700;
  margin: 0;
  margin-bottom: 1em;
  text-align: center;
}
#features .row {
  display: flex;
  flex-direction: column;
  gap: 1.5em;
  margin: 1.5em auto;
}
#features .col {
  flex: 1;
}
#features .card {
  background: #fff;
  border: 0.1875em solid hsl(205, 100%, 85%);
  border-radius: 1em;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
}
#features .card .image {
  flex-shrink: 0;
  max-width: 34em;
  margin: 0 auto;
}
#features .three-col .card .image {
  max-width: 22em;
}
#features .card .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
#features .card .content {
  padding: 1.5em;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  box-shadow: 0 0 4em hsl(205deg 10% 60% / 100%);
}
#features .card h3 {
  margin: -0.5em 0 0.5em 0;
  font-size: 1.25em;
  font-weight: 600;
}
#features .card p {
  margin: 0;
  font-size: 1em;
  line-height: 1.5;
  flex-grow: 1;
}
@media screen and (min-width: 55em) {
  #features .row {
    flex-direction: row;
    align-items: stretch;
  }
}
