/* ───────── Limited-seats + "See if you qualify" quiz (shared by lp / lp1) ───────── */

/* seats pill — used in the ribbon, hero and contact headline */
.seats-pill {
  display: inline-block; line-height: 1.4;
  padding: .3rem .8rem;
  border-radius: 999px;
  background: var(--orange-l, #FCEEDF);
  color: var(--orange-ink, #B15B1A);
  font-family: var(--display);
  font-size: 14px; font-weight: 700; letter-spacing: .01em;
  white-space: nowrap;
}
.seats-pill::before {
  content: ""; display: inline-block; vertical-align: middle; position: relative; top: -1px; width: 8px; height: 8px; border-radius: 50%; margin-right: .5rem;
  background: var(--orange-btn, #DE7221);
  box-shadow: 0 0 0 0 rgba(222,114,33,.55);
  animation: seats-pulse 1.8s ease-out infinite;
}
@keyframes seats-pulse { 0% { box-shadow: 0 0 0 0 rgba(222,114,33,.55); } 100% { box-shadow: 0 0 0 9px rgba(222,114,33,0); } }
@media (prefers-reduced-motion: reduce) { .seats-pill::before { animation: none; } }

/* ribbon variant — white on green */
.ribbon .seats-pill { background: rgba(255,255,255,.16); color: #fff; }
.ribbon .seats-pill::before { background: #FFB36B; box-shadow: none; animation: none; }

/* hero line under the bullets */
.hero__seats { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem .9rem; margin: 1.25rem 0 1.25rem; font-size: 16px; color: var(--ink-2); }
.hero__seats strong { color: var(--ink); }

/* quiz card — inherits .form chrome */
.qualify { position: relative; }
.qualify__progress { display: grid; gap: .5rem; }
.qualify__progress-label { font-size: 13px; font-weight: 600; color: var(--ink-3); letter-spacing: .02em; text-transform: uppercase; }
.qualify__progress-track { display: block; height: 5px; border-radius: 999px; background: var(--gray-3); overflow: hidden; }
.qualify__progress-fill { display: block; height: 100%; width: 0; border-radius: 999px; background: var(--green, #00AD68); transition: width .3s ease; }

.qualify__step { border: 0; margin: 0; padding: 0; min-width: 0; display: grid; gap: 1rem; }
.qualify__step[hidden] { display: none; }
.qualify__q {
  font-family: var(--display); font-weight: 700; font-size: clamp(20px, 2vw, 24px); line-height: 1.2; color: var(--ink);
  padding: 0; margin: 0;
}
.qualify__hint { margin: -.35rem 0 0; font-size: 15px; color: var(--ink-3); line-height: 1.45; }

.qualify__options { display: grid; gap: .6rem; }
.qualify__opt { position: relative; display: block; cursor: pointer; }
.qualify__opt input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.qualify__opt span {
  display: flex; align-items: center; gap: .85rem;
  padding: .95rem 1.1rem;
  border: 1.5px solid var(--rule-2);
  border-radius: var(--radius-s);
  font-size: 16.5px; font-weight: 500; color: var(--ink); line-height: 1.35;
  background: var(--white);
  transition: border-color .15s, background .15s, box-shadow .15s;
}
.qualify__opt span::before {
  content: ""; flex: none; width: 20px; height: 20px; border-radius: 50%;
  border: 2px solid var(--rule-2); background: var(--white);
  transition: border-color .15s, background .15s, box-shadow .15s;
}
.qualify__opt:hover span { border-color: var(--green, #00AD68); }
.qualify__opt input:focus-visible + span { box-shadow: 0 0 0 3px rgba(0,173,104,.28); }
.qualify__opt input:checked + span { border-color: var(--green-ink, #007E4C); background: var(--green-l, #E6F7EF); font-weight: 600; }
.qualify__opt input:checked + span::before { border-color: var(--green-ink, #007E4C); background: var(--green-ink, #007E4C); box-shadow: inset 0 0 0 4px var(--white); }

.qualify__summary {
  padding: .9rem 1.1rem; border-radius: var(--radius-s);
  background: var(--green-l, #E6F7EF); border: 1px solid rgba(0,126,76,.18);
  color: var(--ink); font-size: 15.5px; line-height: 1.45;
}
.qualify__summary--soft { background: var(--gray-1); border-color: var(--rule-2); }
.qualify__summary strong { color: var(--green-ink, #007E4C); }

.qualify__nav { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: .25rem; }
.qualify__back {
  appearance: none; background: none; border: 0; padding: .5rem 0; cursor: pointer;
  font-family: var(--body); font-size: 15px; font-weight: 600; color: var(--ink-3);
}
.qualify__back:hover { color: var(--ink); }
.qualify__back[hidden] { display: none; }
.qualify__nav .btn { margin-left: auto; }
.qualify__next[hidden] { display: none; }

.qualify__result { display: grid; gap: 1rem; }
.qualify__result[hidden] { display: none; }
.qualify__result-icon { width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; background: var(--green-l, #E6F7EF); color: var(--green-ink, #007E4C); }
.qualify__result h3 { font-family: var(--display); font-size: clamp(22px, 2.2vw, 28px); line-height: 1.15; margin: 0; }
.qualify__result p { margin: 0; font-size: 16.5px; line-height: 1.5; color: var(--ink-2); }
.qualify__result .btn { justify-self: start; }

.qualify__legal { font-size: 13.5px; color: var(--ink-3); line-height: 1.45; margin: 0; }

@media (max-width: 640px) {
  .qualify__opt span { font-size: 15.5px; padding: .85rem .95rem; }
}
.qualify__body { display: grid; gap: 1rem; }
.qualify__body[hidden] { display: none; }

/* no mobile menu — header keeps logo + CTA only */
@media (max-width: 880px) {
  .nav__toggle, .nav-backdrop { display: none !important; }
}
/* ribbon: intake pill only */
.ribbon__inner { padding-block: .5rem; }
.ribbon .seats-pill { font-size: 15px; }

