/* Preview brief 1.2 modal single form — entry inside #lead-form, form inside .bp-brief-dialog. */

#cta #cta-brief {
  scroll-margin-top: calc(var(--header-h, 72px) + 16px);
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  font-family: var(--font-body, "Commissioner", sans-serif);
  font-size: 18px;
  line-height: 1.45;
  color: var(--color-ink, #0a0a0a);
}

#cta-brief *,
#cta-brief *::before,
#cta-brief *::after,
.bp-brief-dialog,
.bp-brief-dialog *,
.bp-brief-dialog *::before,
.bp-brief-dialog *::after {
  box-sizing: border-box;
}

#cta-brief h3,
#cta-brief p {
  max-width: none;
}

.bp-launcher__lead {
  margin: 0;
  font-size: 16px;
  line-height: 1.45;
}

#cta-brief .bp-banner,
form#lead-form .bp-lead-preview-note,
.bp-brief-dialog .bp-banner {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  background: #0a0a0a;
  color: #fff;
  font-size: 16px;
  line-height: 1.4;
}

form#lead-form .bp-lead-preview-note {
  margin-top: 12px;
}

#cta-brief .cta-brief__title,
.bp-brief-dialog .bp-dialog-title {
  font-family: var(--font-display, "Geologica", sans-serif);
  font-size: clamp(28px, 4vw, 36px);
  line-height: 1.15;
  font-weight: 300;
  letter-spacing: -0.03em;
  margin: 0;
}

#cta-brief .bp-btn {
  appearance: none;
  align-self: flex-start;
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  padding: 10px 14px;
  border: 1px solid #0a0a0a;
  border-radius: 10px;
  background: #0a0a0a;
  color: #fff;
  font: inherit;
  font-size: 16px;
  line-height: 1.2;
  cursor: pointer;
}

#cta-brief .bp-save {
  margin: 0;
  min-height: 0;
  font-size: 16px;
  line-height: 1.45;
  color: #3f3f46;
}

#cta-brief .bp-save:empty,
.bp-brief-dialog .bp-dialog-status:empty {
  display: none;
}

html.bp-modal-open {
  overflow: hidden;
  overflow-anchor: none;
}

html.bp-modal-open body {
  position: fixed;
  top: calc(var(--bp-scroll-y, 0px) * -1);
  left: 0;
  right: auto;
  width: var(--bp-body-width, auto);
  overflow: hidden;
}

.bp-brief-dialog {
  position: fixed;
  inset: auto;
  margin: 0;
  padding: 0;
  border: 0;
  overflow: hidden;
  background: #fff;
  color: #0a0a0a;
  font-family: var(--font-body, "Commissioner", sans-serif);
  font-size: 16px;
  line-height: 1.45;
  width: min(960px, calc(100vw - 48px));
  height: min(760px, calc(100dvh - 48px));
  max-width: calc(100vw - 48px);
  max-height: calc(100dvh - 48px);
  border-radius: 16px;
  box-shadow: 0 24px 64px rgb(10 10 10 / 0.28);
}

.bp-brief-dialog::backdrop {
  background: rgb(10 10 10 / 0.55);
}

.bp-brief-dialog[open] {
  animation: bp-dialog-in 160ms ease-out;
}

@keyframes bp-dialog-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

.bp-dialog-shell {
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 0;
}

.bp-dialog-head,
.bp-dialog-foot {
  flex: 0 0 auto;
}

.bp-dialog-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 16px 12px;
  border-bottom: 1px solid #ececee;
  background: #fff;
}

.bp-dialog-head__main {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.bp-brief-dialog p {
  max-width: none;
}

.bp-dialog-note,
.bp-dialog-status {
  margin: 0;
  color: #3f3f46;
  font-size: 16px;
  line-height: 1.4;
}

.bp-dialog-status {
  min-height: 0;
}

#bp-dialog-kicker {
  min-height: 2.9em;
}

.bp-dialog-close {
  appearance: none;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  border: 1px solid #0a0a0a;
  border-radius: 10px;
  background: #fff;
  color: #0a0a0a;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.bp-dialog-body {
  flex: 1 1 auto;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-gutter: stable;
  padding: 16px;
}

.bp-dialog-foot {
  height: 76px;
  display: flex;
  align-items: center;
  padding: 12px 16px;
  border-top: 1px solid #ececee;
  background: #fff;
}

.bp-dialog-foot .bp-nav {
  width: 100%;
  flex-wrap: nowrap;
}

.bp-brief-dialog .bp-intro {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 0 16px;
}

.bp-brief-dialog .bp-intro p,
.bp-brief-dialog .bp-more p,
.bp-brief-dialog .bp-note,
.bp-brief-dialog .bp-hint,
.bp-brief-dialog .bp-progress,
.bp-brief-dialog label,
.bp-brief-dialog legend,
.bp-brief-dialog input,
.bp-brief-dialog textarea,
.bp-brief-dialog button,
.bp-brief-dialog .bp-error,
.bp-brief-dialog .bp-summary {
  font-size: 16px;
  line-height: 1.45;
}

.bp-brief-dialog .bp-step {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 12px;
  min-width: 0;
}

.bp-brief-dialog .bp-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 0;
  color: #3f3f46;
}

.bp-brief-dialog .bp-progress strong,
.bp-brief-dialog #bp-dialog-kicker {
  color: #0a0a0a;
  font-weight: 600;
}

.bp-brief-dialog .bp-bar {
  height: 3px;
  background: #ececee;
  border-radius: 2px;
  overflow: hidden;
}

.bp-brief-dialog .bp-bar > span {
  display: block;
  height: 100%;
  background: var(--color-accent, #ff6200);
  max-width: 100%;
}

.bp-brief-dialog .bp-q {
  margin: 0;
  font-family: var(--font-body, "Commissioner", sans-serif);
  font-size: 17px;
  line-height: 1.35;
  font-weight: 650;
}

.bp-brief-dialog .bp-hint,
.bp-brief-dialog .bp-note {
  margin: 0;
  color: #71717a;
}

.bp-brief-dialog fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.bp-brief-dialog .bp-options,
.bp-brief-dialog .bp-cards,
.bp-brief-dialog .bp-rows,
.bp-brief-dialog .bp-summary {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.bp-brief-dialog .bp-option,
.bp-brief-dialog .bp-check {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-height: 44px;
  min-width: 0;
  padding: 14px 16px;
  border: 1px solid rgba(10, 10, 10, 0.1);
  border-radius: 16px;
  background: #fff;
  cursor: pointer;
  transition: border-color 0.35s ease, box-shadow 0.35s ease, background 0.35s ease;
}

.bp-brief-dialog .bp-option:has(input:checked),
.bp-brief-dialog .bp-check:has(input:checked) {
  border-color: var(--color-accent, #ff6200);
  background: #fff7f2;
}

.bp-brief-dialog .bp-option span,
.bp-brief-dialog .bp-check span,
.bp-brief-dialog .bp-summary,
.bp-brief-dialog .bp-card,
.bp-brief-dialog .bp-row {
  overflow-wrap: anywhere;
  min-width: 0;
}

.bp-brief-dialog input[type="text"],
.bp-brief-dialog input[type="email"],
.bp-brief-dialog input[type="tel"],
.bp-brief-dialog input[type="url"],
.bp-brief-dialog textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 44px;
  margin: 0;
  padding: 12px 16px;
  border: 1px solid rgba(10, 10, 10, 0.1);
  border-radius: 16px;
  background: #fff;
  color: #0a0a0a;
  font: inherit;
  font-size: 16px;
  transition: border-color 0.35s ease, box-shadow 0.35s ease, transform 0.35s ease;
}

.bp-brief-dialog input[type="text"]:focus,
.bp-brief-dialog input[type="email"]:focus,
.bp-brief-dialog input[type="tel"]:focus,
.bp-brief-dialog input[type="url"]:focus,
.bp-brief-dialog textarea:focus {
  border-color: var(--color-accent, #ff6200);
  box-shadow: 0 10px 28px rgba(10, 10, 10, 0.06);
  outline: none;
}

.bp-brief-dialog textarea {
  min-height: 96px;
  max-height: 160px;
  resize: vertical;
}

.bp-brief-dialog .bp-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.bp-brief-dialog .bp-field > span,
.bp-brief-dialog .bp-card__label {
  font-size: 16px;
}

.bp-brief-dialog .bp-card,
.bp-brief-dialog .bp-row,
.bp-brief-dialog .bp-group {
  min-width: 0;
  border: 1px solid var(--color-border, #c2cad2);
  border-radius: 12px;
  padding: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: #fff;
}

.bp-brief-dialog .bp-row__panel[hidden],
.bp-brief-dialog .bp-group__body[hidden],
.bp-brief-dialog [hidden] {
  display: none !important;
}

.bp-brief-dialog .bp-nav,
.bp-brief-dialog .bp-inline-actions,
.bp-brief-dialog .bp-group__head {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.bp-brief-dialog .bp-group__head h4,
.bp-brief-dialog .bp-card h4,
.bp-brief-dialog .bp-summary h4 {
  margin: 0;
  font-size: 18px;
  line-height: 1.3;
  font-weight: 600;
}

.bp-brief-dialog .bp-btn {
  appearance: none;
  min-height: 44px;
  min-width: 44px;
  max-width: 100%;
  padding: 10px 14px;
  border: 1px solid #0a0a0a;
  border-radius: 10px;
  background: #fff;
  color: #0a0a0a;
  font: inherit;
  font-size: 16px;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
  cursor: pointer;
}

.bp-brief-dialog .bp-btn--next {
  background: #0a0a0a;
  color: #fff;
}

.bp-brief-dialog .bp-nav .bp-btn--next,
.bp-brief-dialog .bp-finish {
  margin-left: auto;
}

.bp-brief-dialog .bp-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.bp-brief-dialog .bp-error {
  margin: 0;
  color: var(--color-accent, #ff6200);
  font-size: 16px;
}

.bp-brief-dialog input[aria-invalid="true"],
.bp-brief-dialog textarea[aria-invalid="true"] {
  border-color: var(--color-accent, #ff6200);
  box-shadow: 0 10px 28px rgba(10, 10, 10, 0.06);
}

.bp-brief-dialog .is-invalid > .bp-option,
.bp-brief-dialog fieldset.is-invalid .bp-option,
.bp-brief-dialog fieldset.is-invalid > .bp-check,
.bp-brief-dialog .is-invalid > .bp-check,
.bp-brief-dialog .bp-btn[aria-invalid="true"] {
  border-color: var(--color-accent, #ff6200);
  box-shadow: 0 10px 28px rgba(10, 10, 10, 0.06);
}

.bp-brief-dialog .bp-problems {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.bp-brief-dialog .bp-problem {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
}

.bp-brief-dialog .bp-problem p {
  margin: 0;
}

.bp-brief-dialog .bp-error:empty {
  display: none;
}

.bp-brief-dialog .bp-more {
  border-top: 1px solid #ececee;
  padding-top: 8px;
}

.bp-brief-dialog .bp-more summary,
.bp-brief-dialog details.bp-fold > summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  font-size: 16px;
}

.bp-brief-dialog .bp-fold__hide {
  display: none;
}

.bp-brief-dialog details[open] > summary .bp-fold__show {
  display: none;
}

.bp-brief-dialog details[open] > summary .bp-fold__hide {
  display: inline;
}

.bp-brief-dialog .bp-kpis {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.bp-brief-dialog .bp-kpis li {
  overflow-wrap: anywhere;
}

.bp-brief-dialog details.bp-fold {
  border-top: 1px solid #ececee;
  padding-top: 8px;
}

.bp-brief-dialog .bp-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: flex-start;
  justify-content: space-between;
  min-width: 0;
}

.bp-brief-dialog .bp-line p {
  margin: 0;
  min-width: 0;
  flex: 1 1 12rem;
}

#cta-brief :focus,
.bp-brief-dialog :focus {
  outline: none;
}

#cta-brief :focus-visible,
.bp-brief-dialog :focus-visible,
form#lead-form .bp-lead-preview-note:focus-visible {
  outline: 2px solid var(--color-accent, #ff6200);
  outline-offset: 2px;
}

.bp-brief-dialog input[type="checkbox"],
.bp-brief-dialog input[type="radio"] {
  width: 20px;
  height: 20px;
  margin-top: 2px;
  flex: 0 0 auto;
  accent-color: var(--color-accent, #ff6200);
}

@media (max-width: 600px) {
  .bp-brief-dialog {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    border-radius: 0;
    box-shadow: none;
  }

  .bp-dialog-shell {
    padding-top: env(safe-area-inset-top, 0px);
    padding-left: env(safe-area-inset-left, 0px);
    padding-right: env(safe-area-inset-right, 0px);
  }

  .bp-dialog-head,
  .bp-dialog-body,
  .bp-dialog-foot {
    padding-left: 12px;
    padding-right: 12px;
  }

  .bp-dialog-head {
    padding-top: 12px;
  }

  .bp-dialog-foot {
    height: auto;
    min-height: calc(128px + env(safe-area-inset-bottom, 0px));
    align-items: stretch;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
  }

  .bp-dialog-foot .bp-nav {
    flex-direction: column;
    align-items: stretch;
  }

  .bp-brief-dialog .bp-nav .bp-btn,
  .bp-brief-dialog .bp-nav .bp-btn--next {
    width: 100%;
    margin-left: 0;
    flex: 1 1 auto;
  }

  .bp-brief-dialog .bp-dialog-title {
    font-size: 22px;
  }
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-head {
  gap: 8px;
  padding: 6px 10px;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-head__main {
  gap: 4px;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-title {
  font-size: 16px;
  line-height: 1.2;
}

.bp-brief-dialog.bp-dialog-compact #bp-dialog-kicker {
  min-height: calc(1.25em * 2);
  font-size: 14px;
  line-height: 1.25;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-body {
  padding: 8px 12px;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-body > .bp-dialog-note,
.bp-brief-dialog.bp-dialog-compact .bp-dialog-body > .bp-dialog-status {
  font-size: 13px;
  line-height: 1.35;
  margin: 0 0 6px;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-foot {
  height: calc(72px + env(safe-area-inset-bottom, 0px));
  align-items: stretch;
  padding: 8px 10px;
  padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-foot .bp-nav {
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: stretch;
  width: 100%;
  height: 100%;
}

.bp-brief-dialog.bp-dialog-compact .bp-dialog-foot .bp-btn,
.bp-brief-dialog.bp-dialog-compact .bp-dialog-foot .bp-btn--next {
  width: auto;
  flex: 1 1 0;
  min-width: 0;
  min-height: 0;
  height: 100%;
  margin-left: 0;
  padding: 4px 6px;
  font-size: 13px;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

@media (prefers-reduced-motion: reduce) {
  .bp-brief-dialog,
  .bp-brief-dialog *,
  #cta-brief,
  #cta-brief * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important;
  }
}

#cta .cta-grid {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

#cta #lead-form.form {
  width: 100%;
  max-width: 760px;
  height: auto;
  flex: 0 1 760px;
  margin-left: 0;
  margin-right: auto;
  padding: 24px clamp(16px, 4vw, 24px);
}

#cta .bp-card-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  max-width: 100%;
  margin: 0;
}

#cta .bp-card-actions__row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-start;
  gap: 12px 16px;
  width: 100%;
  min-width: 0;
}

@media (max-width: 720px) {
  #cta .bp-card-actions__row {
    flex-wrap: wrap;
  }
}

#cta .bp-card-exclaim {
  flex: 0 1 auto;
  max-width: 100%;
}

#cta .bp-card-exclaim--ink {
  color: #0a0a0a;
}

#cta .bp-card-exclaim--ink .btn-exclaim__label {
  color: #fff;
}

#cta .bp-card-exclaim--ink .btn-exclaim__arrow--line,
#cta .bp-card-exclaim--ink .btn-exclaim__arrow--line path {
  fill: none;
  stroke: #fff;
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .btn-exclaim--on-light {
  color: #0a0a0a;
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .btn-exclaim--on-light .btn-exclaim__label {
  color: #fff;
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .btn-exclaim--on-light .btn-exclaim__arrow--line,
#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .btn-exclaim--on-light .btn-exclaim__arrow--line path {
  fill: none;
  stroke: #fff;
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .bp-card-exclaim--ink {
  color: var(--color-accent, #ff6200);
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .bp-card-exclaim--ink .btn-exclaim__label {
  color: #0a0a0a;
}

#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .bp-card-exclaim--ink .btn-exclaim__arrow--line,
#cta #lead-form .bp-card-actions__row:is(
  :has(.btn-exclaim--on-light:hover),
  :has(.btn-exclaim--on-light:focus),
  :has(.btn-exclaim--on-light:focus-visible),
  :has(.btn-exclaim--on-light:active),
  :has(.bp-card-exclaim--ink:hover),
  :has(.bp-card-exclaim--ink:focus),
  :has(.bp-card-exclaim--ink:focus-visible),
  :has(.bp-card-exclaim--ink:active)
) .bp-card-exclaim--ink .btn-exclaim__arrow--line path {
  fill: none;
  stroke: #0a0a0a;
}

#cta .bp-card-entry {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
}

#cta #lead-form .form__error.is-visible {
  color: var(--color-accent, #ff6200);
}

#cta #lead-form .form__field input.is-invalid,
#cta #lead-form .form__field textarea.is-invalid {
  border-color: var(--color-accent, #ff6200);
  box-shadow: 0 10px 28px rgba(10, 10, 10, 0.06);
}

#cta #lead-form .form__consent {
  border: 1px solid transparent;
  border-radius: 16px;
  transform: scale(1);
  transform-origin: center;
  transition-property: border-color, box-shadow, transform;
  transition-duration: 0.35s;
  transition-timing-function: ease;
}

#cta #lead-form .form__consent.is-invalid {
  border-color: var(--color-accent, #ff6200);
  box-shadow: 0 10px 28px rgba(10, 10, 10, 0.06);
  outline: none;
  transform: scale(1.01);
}

@media (prefers-reduced-motion: reduce) {
  #cta #lead-form .form__consent {
    transition-duration: 0.01ms;
  }
}

#cta .bp-card-entry__lead {
  margin: 0;
  max-width: none;
  color: #0a0a0a;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.45;
}

#cta .bp-card-btn {
  --bp-fill: var(--color-accent, #ff6200);
  --bp-ink: #0a0a0a;
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  box-sizing: border-box;
  width: max-content;
  max-width: 100%;
  min-width: 44px;
  min-height: 56px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--bp-ink);
  font-family: var(--font-body, "Commissioner", sans-serif);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  letter-spacing: normal;
  text-align: left;
  cursor: pointer;
  transition: transform 180ms ease-out;
}

#cta .bp-card-btn--send {
  --bp-fill: var(--color-accent, #ff6200);
  --bp-ink: #0a0a0a;
}

#cta .bp-card-btn--ink {
  --bp-fill: #0a0a0a;
  --bp-ink: #ffffff;
}

#cta .bp-card-btn__label {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  box-sizing: border-box;
  min-width: 0;
  min-height: 56px;
  margin: 0;
  padding: 8px 36px 8px 22px;
  border-radius: 28px 0 0 28px;
  background: var(--bp-fill);
  color: var(--bp-ink);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.25;
  white-space: normal;
  overflow-wrap: break-word;
  -webkit-mask-image: radial-gradient(circle 28px at calc(100% + 12px) 50%, transparent 27.5px, #000 28.5px);
  mask-image: radial-gradient(circle 28px at calc(100% + 12px) 50%, transparent 27.5px, #000 28.5px);
  transition: background-color 180ms ease-out, color 180ms ease-out;
}

#cta .bp-card-btn__orb {
  display: block;
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  margin-left: -16px;
  color: var(--bp-ink);
}

#cta .bp-card-btn__orb svg {
  display: block;
  width: 56px;
  height: 56px;
}

#cta .bp-card-btn__orb circle {
  fill: var(--bp-fill);
  transition: fill 180ms ease-out;
}

#cta .bp-card-btn__orb path {
  fill: none;
  stroke: var(--bp-ink);
  stroke-width: 3.12;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: stroke 180ms ease-out;
}

#cta .bp-card-btn:focus {
  outline: none;
}

#cta .bp-card-btn:focus-visible {
  outline: 3px solid #0a0a0a;
  outline-offset: 4px;
}

#cta .bp-card-btn--send:focus-visible {
  --bp-fill: #0a0a0a;
  --bp-ink: #ffffff;
}

#cta .bp-card-btn--ink:focus-visible {
  --bp-fill: var(--color-accent, #ff6200);
  --bp-ink: #0a0a0a;
}

@media (hover: hover) and (pointer: fine) {
  #cta .bp-card-btn--send:hover {
    --bp-fill: #0a0a0a;
    --bp-ink: #ffffff;
    transform: translateY(-2px);
  }

  #cta .bp-card-btn--ink:hover {
    --bp-fill: var(--color-accent, #ff6200);
    --bp-ink: #0a0a0a;
    transform: translateY(-2px);
  }

  #cta .bp-card-btn:focus-visible {
    transform: translateY(-2px);
  }
}

@media (prefers-reduced-motion: reduce) {
  #cta .bp-card-btn,
  #cta .bp-card-btn__label,
  #cta .bp-card-btn__orb circle,
  #cta .bp-card-btn__orb path {
    transition: none;
  }

  #cta .bp-card-btn:hover,
  #cta .bp-card-btn:focus-visible {
    transform: none;
  }
}

.bp-brief-dialog .bp-nav .bp-exclaim,
.bp-brief-dialog .bp-finish {
  margin-left: auto;
  max-width: 100%;
  flex: 0 1 auto;
}

.bp-brief-dialog .bp-done {
  margin: 0;
  color: #0a0a0a;
  font-size: 16px;
  font-weight: 600;
}

.bp-exclaim:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

@media (max-width: 600px) {
  .bp-brief-dialog .bp-nav .bp-exclaim,
  .bp-brief-dialog .bp-finish {
    margin-left: 0;
    align-self: flex-start;
  }
}
