/* Intake: service finder + fit form + thank you */

.geez-intake .geez-form {
  display: grid;
  gap: var(--geez-space-4);
  margin-block: var(--geez-space-5);
}

.geez-finder__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--geez-space-3);
}

.geez-btn-link--secondary {
  background: transparent;
  color: var(--geez-color-burgundy);
  box-shadow: inset 0 0 0 2px var(--geez-color-burgundy);
}

.geez-btn-link--secondary:hover {
  background: color-mix(in srgb, var(--geez-color-burgundy) 8%, transparent);
}

.geez-choice {
  display: flex;
  align-items: flex-start;
  gap: var(--geez-space-2);
  min-height: var(--geez-touch);
  margin-bottom: var(--geez-space-2);
  cursor: pointer;
}

.geez-choice input[type="checkbox"],
.geez-choice input[type="radio"] {
  width: 1.25rem;
  height: 1.25rem;
  min-width: 1.25rem;
  min-height: 1.25rem;
  margin-top: 0.35rem;
  flex-shrink: 0;
  accent-color: var(--geez-color-burgundy);
}

.geez-field--consent {
  padding: var(--geez-space-3);
  border-inline-start: 4px solid var(--geez-color-gold-ink);
  background: color-mix(in srgb, var(--geez-color-burgundy) 4%, transparent);
}

.geez-hp {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  /* Keep in DOM for bots; exclude from hit-testing / AT where supported */
  pointer-events: none;
}

.geez-form__live {
  min-height: 1.5em;
  color: var(--geez-color-ink-muted);
  font-size: var(--geez-text-sm);
}

.geez-form__status {
  padding: var(--geez-space-3);
  border: 1px solid var(--geez-color-border);
  border-radius: var(--geez-radius-md);
}

.geez-finder__result {
  margin-top: var(--geez-space-6);
  padding: var(--geez-space-5);
  border-inline-start: 4px solid var(--geez-color-burgundy);
  background: color-mix(in srgb, var(--geez-color-gold-ink) 8%, transparent);
}

.geez-finder__result:focus {
  outline: 3px solid var(--geez-color-focus, var(--geez-color-gold-ink));
  outline-offset: 2px;
}

.geez-finder__pick {
  font-size: var(--geez-text-lg);
}

/* Finder: pathway line grows under the form */
.geez-finder {
  position: relative;
}

.geez-finder::before {
  content: "";
  position: absolute;
  left: -0.75rem;
  top: 0.5rem;
  bottom: 0.5rem;
  width: 1px;
  background: linear-gradient(
    180deg,
    var(--geez-color-gold-accent),
    transparent
  );
  transform-origin: top;
  animation: geez-finder-path 1.1s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes geez-finder-path {
  from {
    transform: scaleY(0);
  }
  to {
    transform: scaleY(1);
  }
}

.geez-intake .geez-form .geez-field {
  animation: geez-intake-field 550ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.geez-intake .geez-form .geez-field:nth-child(1) {
  animation-delay: 40ms;
}
.geez-intake .geez-form .geez-field:nth-child(2) {
  animation-delay: 90ms;
}
.geez-intake .geez-form .geez-field:nth-child(3) {
  animation-delay: 140ms;
}
.geez-intake .geez-form .geez-field:nth-child(4) {
  animation-delay: 190ms;
}

@keyframes geez-intake-field {
  from {
    opacity: 0;
    transform: translateY(0.4rem);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .geez-finder::before,
  .geez-intake .geez-form .geez-field {
    animation: none !important;
  }

  .geez-finder::before {
    transform: none;
  }
}
