.local-toast {
  position: fixed;
  right: 1.5rem;
  bottom: 1.5rem;
  z-index: 1000;
  max-width: min(24rem, calc(100vw - 3rem));
  border: 1px solid hsl(var(--border));
  border-radius: var(--radius);
  background: hsl(var(--card));
  color: hsl(var(--card-foreground));
  box-shadow: 0 16px 40px rgb(0 0 0 / 18%);
  padding: 0.9rem 1rem;
  font-size: 0.875rem;
  line-height: 1.45;
}

.local-toast[data-kind="error"] {
  border-color: hsl(var(--destructive) / 45%);
}

.local-form-status {
  margin: 0;
  border: 1px solid hsl(var(--accent) / 45%);
  border-radius: var(--radius);
  background: hsl(var(--accent) / 10%);
  color: hsl(var(--primary-foreground));
  padding: 0.8rem 1rem;
  font-size: 0.875rem;
  line-height: 1.45;
}

.local-form-status[data-kind="error"] {
  border-color: hsl(var(--destructive) / 55%);
  background: hsl(var(--destructive) / 12%);
}

.local-form-status[data-kind="pending"] {
  border-color: hsl(var(--primary-foreground) / 20%);
  background: hsl(var(--primary-foreground) / 5%);
}

.local-consent-check {
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 1;
}

@media (max-width: 767px) {
  html,
  body {
    max-width: 100%;
    overflow-x: clip;
  }

  header > div {
    gap: 0.75rem;
    padding-inline: 1rem;
  }

  header .eyebrow {
    max-width: 9rem;
    font-size: 0.65rem;
    line-height: 1.35;
  }

  header a[href="#form"] {
    flex-shrink: 0;
    padding-inline: 0.75rem;
  }

  .px-6 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }

  .py-20 {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }

  body > div > section:first-of-type > div {
    gap: 2rem;
    padding-top: 3.5rem;
    padding-bottom: 4rem;
  }

  body > div > section:first-of-type h1 {
    font-size: clamp(2.1rem, 10vw, 2.6rem);
    line-height: 1.12;
  }

  body > div > section:first-of-type .mt-10.flex.flex-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  body > div > section:first-of-type .mt-10.flex.flex-wrap > a {
    width: 100%;
  }

  body > div > section:first-of-type > div > div:last-child {
    padding: 1.5rem;
  }

  body > div > section:first-of-type [class~="grid-cols-3"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem 1rem;
  }

  body > div > section:first-of-type [class~="grid-cols-3"] > div {
    min-width: 0;
  }

  body > div > section:first-of-type [class~="grid-cols-3"] > div:last-child {
    grid-column: 1 / -1;
  }

  body > div > section:first-of-type [class~="grid-cols-3"] .text-xs {
    overflow-wrap: anywhere;
  }

  .p-7 {
    padding: 1.25rem;
  }

  #form form {
    padding: 1.5rem;
  }

  #form input,
  #form textarea,
  #form button[type="submit"] {
    max-width: 100%;
  }
}

@media (max-width: 359px) {
  header .eyebrow {
    max-width: 7.5rem;
  }

  header a[href="#form"] {
    font-size: 0.7rem;
    padding-inline: 0.6rem;
  }

  body > div > section:first-of-type h1 {
    font-size: 2rem;
  }

  body > div > section:first-of-type [class~="grid-cols-3"] {
    grid-template-columns: minmax(0, 1fr);
  }

  body > div > section:first-of-type [class~="grid-cols-3"] > div:last-child {
    grid-column: auto;
  }
}

.legal-details {
  display: grid;
  max-width: 34rem;
  gap: 0.35rem;
  line-height: 1.5;
}

.legal-details strong {
  color: hsl(var(--primary-foreground));
}

.legal-details address {
  font-style: normal;
}

.lead-form-row {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lead-form-select {
  color-scheme: dark;
}

.lead-form-select option {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}

@media (max-width: 767px) {
  footer > div {
    align-items: flex-start;
    flex-direction: column;
  }

  .legal-details {
    max-width: 100%;
  }

  .lead-form-row {
    grid-template-columns: minmax(0, 1fr);
  }
}
