/* Deliberately minimal. The probe measures the promise, not the design --
   but a page that looks broken measures neither, so: readable, one column. */
:root { --fg: #1a1a1a; --muted: #666; --accent: #2a5d4e; }

body {
  font: 17px/1.6 system-ui, -apple-system, "Segoe UI", sans-serif;
  color: var(--fg); margin: 0; padding: 0 1.25rem;
}
main { max-width: 42rem; margin: 4rem auto 2rem; }
h1 { font-size: 2.1rem; line-height: 1.2; margin: 0 0 .5rem; }
h2 { font-size: 1.25rem; margin: 2.5rem 0 .75rem; }
.sub { font-size: 1.15rem; color: var(--muted); margin: 0 0 2rem; }

.home { text-align: center; }
.home p { text-align: left; }
.hero { display: block; width: 100%; max-width: 380px; height: auto; margin: 0 auto 2rem; }
.sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

.bundle ul { padding-left: 1.2rem; }
.bundle li { margin: .4rem 0; }
.price { font-weight: 600; margin-top: 1.25rem; }

.signup { margin: 2.5rem 0; padding: 1.5rem; background: #f6f6f4; border-radius: 8px; }
.signup label { display: block; margin: 1rem 0; }
.signup input[type=email], .signup input[type=text] {
  display: block; width: 100%; padding: .55rem; margin-top: .3rem;
  border: 1px solid #ccc; border-radius: 4px; font: inherit; box-sizing: border-box;
}
.signup fieldset { border: 0; padding: 0; margin: 1.25rem 0; }
.signup fieldset label { margin: .35rem 0; font-size: .95rem; }
.signup button {
  margin-top: 1rem; padding: .7rem 1.4rem; font: inherit; font-weight: 600;
  color: #fff; background: var(--accent); border: 0; border-radius: 4px; cursor: pointer;
}

footer {
  max-width: 42rem; margin: 3rem auto 4rem; padding-top: 1.5rem;
  border-top: 1px solid #e5e5e5; font-size: .9rem; color: var(--muted);
}
.status { font-weight: 600; }
