@media (min-width: 1200px) {
   .paragraph--type--register-form.paragraph_container {
      max-width: 1320px;
   }
}

.register-layout {
   --register-error: #B3261E;
   display: grid;
   grid-template-columns: 0.9fr 1fr;
   gap: clamp(60px, 11%, 150px);
   align-items: start;
}

.register-layout__title {
   color: var(--purple);
   font-family: Quicksand;
   font-size: 32px;
   font-weight: 600;
   line-height: 40px;
   margin-bottom: 24px;
}

.register-layout__intro p {
   color: var(--navy);
   font-family: Montserrat;
   font-size: 17px;
   font-weight: 500;
   line-height: 27px;
   margin-bottom: 22px;
}

.register-layout__form {
   background: #FFF;
   border-radius: 24px;
   box-shadow: 0 8px 30px rgba(var(--navy-rgb), 0.10);
   padding: 34px 36px 28px;
}

.register-form__group,
.register-layout__form #edit-account {
   display: grid;
   grid-template-columns: 1fr 1fr;
   column-gap: 22px;
   align-items: start;
}

.register-form__group-title {
   grid-column: 1 / -1;
   color: var(--purple);
   font-family: Quicksand;
   font-size: 21px;
   font-weight: 700;
   margin: 20px 0 14px;
}

.register-layout__form .field--name-field-practitioner-type,
.register-layout__form .field--name-field-educational-institution,
.register-layout__form .field--name-field-clinic-name,
.register-layout__form .field--name-field-addr-line-1,
.register-layout__form .field--name-field-addr-line-2,
.register-layout__form .field--name-field-pst-number,
.register-layout__form .field--name-field-mail-addr-line-1,
.register-layout__form .field--name-field-mail-addr-line-2,
.register-layout__form .field--name-field-ship-addr-line-1,
.register-layout__form .field--name-field-ship-addr-line-2,
.register-layout__form .field--name-field-scope-permits,
.register-layout__form .field--name-field-additional-certs,
.register-layout__form .field--name-field-additional-certs-list,
.register-layout__form .field--name-field-supervision-required,
.register-layout__form .field--name-field-supervision-details,
.register-layout__form .field--name-field-professional-assoc,
.register-layout__form .field--name-field-professional-assoc-nm,
.register-layout__form .field--name-field-education-extra-info,
.register-layout__form .field--name-field-supervisor-name,
.register-layout__form .field--name-field-different-shipping,
.register-layout__form .field--name-field-terms-agreed,
.register-layout__form #edit-account,
.register-layout__form #edit-account .js-form-item-pass {
   grid-column: 1 / -1;
}

.register-layout__form .js-form-type-password-confirm {
   display: grid;
   grid-template-columns: 1fr 1fr;
   column-gap: 22px;
   row-gap: 16px;
}

.register-layout__form .js-form-type-password-confirm > .js-form-item {
   margin-bottom: 0;
}

.register-layout__form .js-form-item {
   margin-bottom: 16px;
}

.register-layout__form label {
   color: var(--navy);
   display: block;
   font-family: Montserrat;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 0.4px;
   margin-bottom: 6px;
   text-transform: uppercase;
}

.register-layout__form .field--type-list-string > label,
.register-layout__form .field--name-field-education-extra-info label,
.register-layout__form .field--name-field-supervisor-name label,
.register-layout__form legend {
   font-size: 15px;
   font-weight: 500;
   letter-spacing: 0;
   line-height: 22px;
   text-transform: none;
}

.register-layout__form input[type="text"],
.register-layout__form input[type="email"],
.register-layout__form input[type="password"],
.register-layout__form input[type="number"],
.register-layout__form input[type="tel"],
.register-layout__form select,
.register-layout__form textarea {
   background: #FFF;
   border: 1px solid rgba(var(--navy-rgb), 0.55);
   border-radius: 10px;
   color: var(--navy);
   font-family: Montserrat;
   font-size: 15px;
   padding: 12px 16px;
   width: 100%;
}

.register-layout__form textarea {
   min-height: 110px;
}

.register-layout__form input::placeholder,
.register-layout__form textarea::placeholder {
   color: rgba(var(--navy-rgb), 0.45);
}

.register-layout__form input:focus,
.register-layout__form select:focus,
.register-layout__form textarea:focus {
   border-color: var(--purple);
   box-shadow: 0 0 0 3px rgba(57, 44, 181, 0.12);
   outline: none;
}

.register-layout__form div.radio:not(.js-form-item) {
   display: flex;
   flex-wrap: wrap;
   gap: 4px 28px;
   margin-top: 4px;
}

.register-layout__form .js-form-type-radio,
.register-layout__form .js-form-type-checkbox {
   align-items: center;
   display: flex;
   gap: 10px;
   margin-bottom: 0;
}

.register-layout__form .js-form-type-radio label,
.register-layout__form .js-form-type-checkbox label {
   margin-bottom: 0;
}

.register-layout__form input[type="radio"],
.register-layout__form input[type="checkbox"] {
   height: 20px;
   margin: 0;
   width: 20px;
}

.register-layout__form .field--name-field-different-shipping .js-form-item,
.register-layout__form .field--name-field-terms-agreed .js-form-item {
   margin-bottom: 0;
}

.register-layout__form .field--name-field-different-shipping {
   margin: 34px 0 30px;
}

.register-layout__form .field--name-field-terms-agreed {
   margin: 30px 0 10px;
}

.register-layout__form .js-form-type-radio:has(> input[type="radio"][value="_none"]) {
   display: none;
}

.register-layout__form input[type="radio"][value="_none"],
.register-layout__form input[type="radio"][value="_none"] + label {
   display: none;
}

.register-layout__form .password-strength,
.register-layout__form .password-confirm-message,
.register-layout__form .description {
   display: none;
}

.register-layout__form .register-required > .js-form-item > label::after,
.register-layout__form .register-required .fieldset-legend::after {
   content: '';
   vertical-align: super;
   display: inline-block;
   background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='16'%20height='16'%3E%3Cpath%20fill='%23EE0000'%20%20d='M0,7.562l1.114-3.438c2.565,0.906,4.43,1.688,5.59,2.35C6.398,3.553,6.237,1.544,6.22,0.447h3.511%20c-0.05,1.597-0.234,3.6-0.558,6.003c1.664-0.838,3.566-1.613,5.714-2.325L16,7.562c-2.05,0.678-4.06,1.131-6.028,1.356%20c0.984,0.856,2.372,2.381,4.166,4.575l-2.906,2.059c-0.935-1.274-2.041-3.009-3.316-5.206c-1.194,2.275-2.244,4.013-3.147,5.206%20l-2.856-2.059c1.872-2.307,3.211-3.832,4.017-4.575C3.849,8.516,1.872,8.062,0,7.562'/%3E%3C/svg%3E");
   background-repeat: no-repeat;
   background-size: 7px 7px;
   width: 7px;
   height: 7px;
   margin: 0 0.3em;
}

.register-layout__form .register-form__group-title::after {
   content: none;
}

.register-layout__form .form-actions {
   display: flex;
   grid-column: 1 / -1;
   justify-content: flex-end;
   margin-top: 24px;
}

.register-layout__form .form-submit,
#content .register-layout__form .form-submit {
   background: var(--purple);
   border: 0;
   border-radius: 100px;
   color: #FFF;
   font-family: Montserrat;
   font-size: 14px;
   font-weight: 600;
   letter-spacing: 0.5px;
   padding: 13px 34px;
   text-transform: uppercase;
}

.register-layout__form .form-submit:hover,
#content .register-layout__form .form-submit:hover {
   background: var(--purple-dark);
}

@media (max-width: 1199.98px) {
   .register-layout {
      grid-template-columns: 1fr;
      gap: 30px;
   }
}

@media (max-width: 575px) {
   .register-form__group,
   .register-layout__form #edit-account,
   .register-layout__form .js-form-type-password-confirm {
      grid-template-columns: 1fr;
   }

   .register-layout__form {
      padding: 24px 20px;
   }
}

.register-layout__form select {
   appearance: none;
   -webkit-appearance: none;
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%23211F54' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
   background-position: right 18px center;
   background-repeat: no-repeat;
   background-size: 16px;
   padding-right: 46px;
}

.register-layout__form .form-check {
   padding-left: 0;
}

.register-layout__form .form-check-input,
.register-layout__form .form-switch .form-check-input {
   background-color: #FFF;
   background-image: none;
   background-position: center;
   background-repeat: no-repeat;
   border: 1px solid rgba(var(--navy-rgb), 0.55);
   flex: 0 0 auto;
   height: 22px;
   margin: 0;
   width: 22px;
}

.register-layout__form input[type="checkbox"].form-check-input {
   border-radius: 5px;
}

.register-layout__form input[type="radio"].form-check-input {
   border-radius: 50%;
}

.register-layout__form .form-check-input:checked,
.register-layout__form .form-switch .form-check-input:checked {
   background-color: var(--purple);
   border-color: var(--purple);
}

.register-layout__form input[type="checkbox"].form-check-input:checked {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 16 16' fill='none' stroke='%23ffffff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.5 3.5L13 5'/%3E%3C/svg%3E");
   background-size: 14px;
}

.register-layout__form input[type="radio"].form-check-input:checked {
   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Ccircle cx='4' cy='4' r='4' fill='%23ffffff'/%3E%3C/svg%3E");
   background-size: 8px;
}

.register-layout__form .js-form-item:has(> label.visually-hidden)::before {
   content: "\00a0";
   display: block;
   font-family: Montserrat;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: 0.4px;
   line-height: normal;
   margin-bottom: 6px;
}

.register-layout__form .form-check-label a {
   color: inherit;
   text-decoration: underline;
}

.register-layout__form .form-check-label a:hover {
   color: var(--purple);
}
.register-layout__form .password-suggestions:empty {
   display: none !important;
}

.register-layout__form .password-suggestions {
   background: rgba(var(--navy-rgb), 0.045);
   border-radius: 10px;
   color: var(--navy);
   font-family: Montserrat;
   font-size: 13px;
   font-weight: 500;
   grid-column: 1 / -1;
   line-height: 19px;
   margin: 12px 0 0;
   padding: 14px 18px;
}

.paragraph--type--register-form .register-layout__form .password-suggestions ul {
   display: flex;
   flex-direction: column;
   gap: 4px;
   list-style: none;
   margin: 8px 0 0;
   padding: 0;
}

.paragraph--type--register-form .register-layout__form .password-suggestions li {
   color: var(--navy);
   font-family: Montserrat;
   padding-left: 15px;
   position: relative;
}

.paragraph--type--register-form .register-layout__form .password-suggestions li::before {
   background: var(--purple);
   background-image: none;
   border: 0;
   border-radius: 50%;
   content: "";
   height: 5px;
   left: 0;
   position: absolute;
   top: 7px;
   width: 5px;
}

.register-layout__form .form-item--error-message,
.register-layout__form .invalid-feedback {
   color: var(--register-error);
   display: block;
   font-family: Montserrat;
   font-size: 12.5px;
   font-weight: 500;
   line-height: 17px;
   margin-top: 5px;
}

.register-layout__form .has-error input[type="text"],
.register-layout__form .has-error input[type="email"],
.register-layout__form .has-error input[type="password"],
.register-layout__form .has-error input[type="number"],
.register-layout__form .has-error select,
.register-layout__form .has-error textarea,
.register-layout__form input.error,
.register-layout__form select.error,
.register-layout__form textarea.error {
   background: rgba(179, 38, 30, 0.03);
   border-color: var(--register-error);
}

.register-layout__form .has-error input:focus,
.register-layout__form .has-error select:focus,
.register-layout__form .has-error textarea:focus {
   border-color: var(--register-error);
   box-shadow: 0 0 0 3px rgba(179, 38, 30, 0.12);
}

.register-layout__form .has-error > label,
.register-layout__form .has-error .form-check-label {
   color: var(--register-error);
}

.register-layout__form input[type="checkbox"].error,
.register-layout__form input[type="radio"].error {
   border-color: var(--register-error);
}

body.has-register-form [data-drupal-messages] {
   clip: rect(0, 0, 0, 0);
   height: 1px;
   overflow: hidden;
   position: absolute;
   white-space: nowrap;
   width: 1px;
}

form.user-form.register-layout__form {
   margin: 2.5rem auto 4rem;
   max-width: 900px;
}

.register-layout__form .field-locked {
   background: rgba(var(--navy-rgb), 0.035);
   border-left: 3px solid rgba(var(--navy-rgb), 0.18);
   border-radius: 0 8px 8px 0;
   margin-bottom: 16px;
   padding: 12px 16px;
}

.register-layout__form .field-locked > label {
   margin-bottom: 4px;
}

.register-layout__form .field-locked__value {
   color: var(--navy);
   font-family: Montserrat;
   font-size: 16px;
   font-weight: 500;
   line-height: 24px;
}

.register-layout__form .field-locked__note {
   color: rgba(var(--navy-rgb), 0.6);
   font-family: Montserrat;
   font-size: 12.5px;
   font-style: italic;
   line-height: 18px;
   margin-top: 5px;
}
