/* Get Started form: readable fields and aligned choices (2026-09-22).
   Scoped to this webform only; the theme's generic form rules made inputs
   invisible and split checkboxes/radios from their labels. */
.webform-submission-get-started-form {
  --gs-ink: #14212b;
  --gs-muted: #56687a;
  --gs-line: #9aa9b7;
  --gs-soft: #f3f7fb;
  --gs-blue: #0066cc;
  --gs-green: #26fd26;
  max-width: 920px;
  margin: 0 auto;
  color: var(--gs-ink);
}

/* Labels: normal capitalisation, readable weight. */
.webform-submission-get-started-form label,
.webform-submission-get-started-form legend,
.webform-submission-get-started-form .fieldset-legend {
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--gs-ink);
}
.webform-submission-get-started-form .form-item > label,
.webform-submission-get-started-form fieldset.webform-type-radios > legend,
.webform-submission-get-started-form fieldset.webform-type-checkboxes > legend,
.webform-submission-get-started-form fieldset.radios--wrapper > legend,
.webform-submission-get-started-form fieldset.checkboxes--wrapper > legend {
  display: block;
  font-size: 15px !important;
  font-weight: 600 !important;
  margin: 0 0 6px !important;
}
.webform-submission-get-started-form .description {
  color: var(--gs-muted);
  font-size: 13px;
  margin-top: 4px;
}
.webform-submission-get-started-form .form-required::after,
.webform-submission-get-started-form .js-form-required::after {
  color: #c0262d;
}

/* Text boxes, dropdowns, dates: visible boxes you can see to type into. */
.webform-submission-get-started-form input[type="text"],
.webform-submission-get-started-form input[type="email"],
.webform-submission-get-started-form input[type="tel"],
.webform-submission-get-started-form input[type="number"],
.webform-submission-get-started-form input[type="date"],
.webform-submission-get-started-form select,
.webform-submission-get-started-form textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  color: var(--gs-ink) !important;
  border: 1.5px solid var(--gs-line) !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  font-size: 16px !important;
  line-height: 1.4 !important;
  min-height: 44px;
  box-shadow: inset 0 1px 2px rgba(20, 33, 43, 0.06) !important;
}
.webform-submission-get-started-form input[type="number"] {
  max-width: 220px !important;
}
.webform-submission-get-started-form input:focus,
.webform-submission-get-started-form select:focus,
.webform-submission-get-started-form textarea:focus {
  outline: none !important;
  border-color: var(--gs-blue) !important;
  box-shadow: 0 0 0 3px rgba(0, 102, 204, 0.25) !important;
}
.webform-submission-get-started-form .form-item {
  margin: 0 0 18px !important;
}

/* Choices (checkboxes and radios): a grid of bordered rows, box left of label. */
.webform-submission-get-started-form .form-checkboxes,
.webform-submission-get-started-form .form-radios,
.webform-submission-get-started-form .webform-options-display-one-column {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 8px;
  margin: 4px 0 0 !important;
}
.webform-submission-get-started-form .form-checkboxes > .form-item,
.webform-submission-get-started-form .form-radios > .form-item,
.webform-submission-get-started-form .js-form-type-checkbox,
.webform-submission-get-started-form .js-form-type-radio {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1.5px solid #d3dce5;
  border-radius: 6px;
  background: #ffffff;
  text-align: left !important;
  cursor: pointer;
}
.webform-submission-get-started-form .js-form-type-checkbox:hover,
.webform-submission-get-started-form .js-form-type-radio:hover {
  border-color: var(--gs-blue);
}
.webform-submission-get-started-form .js-form-type-checkbox:has(input:checked),
.webform-submission-get-started-form .js-form-type-radio:has(input:checked) {
  border-color: var(--gs-blue);
  background: #e8f1fb;
}
.webform-submission-get-started-form input[type="checkbox"],
.webform-submission-get-started-form input[type="radio"] {
  position: static !important;
  float: none !important;
  display: inline-block !important;
  flex: 0 0 auto;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  opacity: 1 !important;
  accent-color: var(--gs-blue);
}
.webform-submission-get-started-form .js-form-type-checkbox > label,
.webform-submission-get-started-form .js-form-type-radio > label,
.webform-submission-get-started-form label.option {
  display: inline !important;
  flex: 1 1 auto;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  cursor: pointer;
}
.webform-submission-get-started-form label.option::before,
.webform-submission-get-started-form label.option::after {
  display: none !important;
}

/* The consent tickbox stands alone: full width, not a grid cell. */
.webform-submission-get-started-form .form-item-consent {
  max-width: 100%;
}

/* One card per service on the Details page. */
.webform-submission-get-started-form fieldset.webform-type-fieldset {
  border: 1px solid #d3dce5 !important;
  border-top: 4px solid var(--gs-green) !important;
  border-radius: 8px;
  background: var(--gs-soft);
  padding: 16px 18px 6px !important;
  margin: 0 0 20px !important;
}
.webform-submission-get-started-form fieldset.webform-type-fieldset > legend {
  float: none;
  width: auto;
  padding: 0 6px !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--gs-blue) !important;
}

@media (max-width: 600px) {
  .webform-submission-get-started-form .form-checkboxes,
  .webform-submission-get-started-form .form-radios {
    grid-template-columns: 1fr;
  }
}
