.dr,
.block-demo-registration {
  --dr-line:   rgba(0, 0, 0, .18);
  --dr-err:    #c0392b;
  --dr-ink:    #10151c;
  --dr-accent: #0b5cff; }

.block-demo-registration__title {
  margin-bottom: 1.5rem; }

.dr {
  max-width: 46rem; }
  .dr__intro {
    margin: 0 0 1.5rem;
    opacity: .8; }
  .dr__row {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1rem;
    align-items: flex-start; }
    .dr__row > .dr__field {
      flex: 1 1 100%;
      min-width: 0; }
    .dr__row--pair > .dr__field {
      flex: 1 1 calc(50% - .5rem);
      min-width: 0; }
  .dr__field {
    display: flex;
    flex-direction: column;
    gap: .375rem; }
  .dr__label {
    font-weight: 600;
    font-size: .9375rem;
    margin: 0; }
  .dr__input-wrap {
    position: relative; }
  .dr__input {
    width: 100%;
    padding: .75rem 1rem;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: .25rem;
    font: inherit;
    background: #fff; }
    .dr__input:focus-visible {
      outline: 2px solid currentColor;
      outline-offset: 1px; }
    .dr__input.has-error {
      border-color: #c0392b; }
  .dr__textarea {
    resize: vertical;
    min-height: 6.5rem;
    line-height: 1.5; }
  .dr__check {
    display: flex;
    align-items: flex-start;
    gap: .625rem;
    font-size: .9375rem;
    line-height: 1.45;
    cursor: pointer; }
    .dr__check input {
      flex: 0 0 auto;
      margin-top: .2em;
      width: 1.05rem;
      height: 1.05rem; }
    .dr__check input.has-error {
      outline: 2px solid #c0392b;
      outline-offset: 2px; }
    .dr__check span {
      flex: 1 1 auto; }
  .dr__field--consent {
    margin: 1.25rem 0; }
  .dr__field--newsletter {
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .dr__news-done {
    margin: .5rem 0 0 1.675rem;
    font-size: .875rem;
    opacity: .75; }
  .dr__actions {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: 1.25rem; }
  .dr__cta.is-loading {
    opacity: .65;
    pointer-events: none; }
  .dr__cta[disabled] {
    opacity: .65; }
  .dr__skip {
    background: none;
    border: 0;
    padding: .5rem 0;
    font: inherit;
    text-decoration: underline;
    cursor: pointer;
    opacity: .75; }
    .dr__skip:hover {
      opacity: 1; }
  .dr__step-title {
    margin: 0 0 .5rem; }
  .dr__error {
    display: flex;
    align-items: flex-start;
    gap: .375rem;
    margin: 0;
    color: #c0392b;
    font-size: .875rem;
    line-height: 1.4; }
    .dr__error-icon {
      flex: 0 0 auto;
      width: 1rem;
      height: 1rem;
      margin-top: .15em;
      fill: currentColor; }
  .dr__form-error {
    margin-top: 1rem; }
  .dr__hp {
    position: absolute !important;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap; }
  .dr__meet {
    width: 100%;
    margin-top: 1rem; }
    .dr__meet iframe {
      border: 0;
      width: 100%; }
  .dr__done {
    display: flex;
    align-items: flex-start;
    gap: 1rem; }
    .dr__done h3 {
      margin: 0 0 .25rem; }
    .dr__done p {
      margin: 0; }
  .dr__done-tick {
    flex: 0 0 auto;
    width: 1.75rem;
    height: 1.75rem;
    margin-top: .125rem; }
  .dr__done-body {
    flex: 1 1 auto;
    min-width: 0; }
  @media (max-width: 47.9375em) {
    .dr__row--pair > .dr__field {
      flex: 1 1 100%; } }

.dr__setup-notice {
  margin: 0 0 1rem;
  padding: .75rem 1rem;
  border: 1px dashed #c0392b;
  border-radius: .5rem;
  color: #c0392b;
  font-size: .875rem;
  line-height: 1.45; }

