/* *********************************** */
/* ***** GRAVITY STYLES FOR MAST ****** */
/* *********************************** */

/* FONT & TEXT */

body .gform_wrapper .gform_body p {
    font-size: 1.2rem;
    font-weight: 400;
}
body .gform_wrapper .gform_body p.mastdlp_lead_question {
    font-size: 1.2rem;
    font-weight: 500;
}

body .gform_wrapper .gform_body h3 {
    font-weight: 500;
}

body .gform_wrapper .gform_body .gfield .gfield_label {
    margin-bottom: 8px;
    font-size: 1.1rem;
    font-weight: 500;
}

.gform_wrapper.gravity-theme input[type=color], .gform_wrapper.gravity-theme input[type=date], .gform_wrapper.gravity-theme input[type=datetime-local], .gform_wrapper.gravity-theme input[type=datetime], .gform_wrapper.gravity-theme input[type=email], .gform_wrapper.gravity-theme input[type=month], .gform_wrapper.gravity-theme input[type=number], .gform_wrapper.gravity-theme input[type=password], .gform_wrapper.gravity-theme input[type=search], .gform_wrapper.gravity-theme input[type=tel], .gform_wrapper.gravity-theme input[type=text], .gform_wrapper.gravity-theme input[type=time], .gform_wrapper.gravity-theme input[type=url], .gform_wrapper.gravity-theme input[type=week], .gform_wrapper.gravity-theme select, .gform_wrapper.gravity-theme textarea {
    font-size: 1.2rem !important;
}

body .gform_wrapper .gform_body .gform_fields Legend {
    font-size: 1.1rem;
    font-weight: 500;
}

body .gform_wrapper .gform_body .gform_fields .gfield_description {
    font-size: 1.1rem;
}

/* SPACING */
body .gform_wrapper .gform_body .gform_fields {
  grid-row-gap: 36px;
}

body .gform_wrapper .gform_body .gform_fields .ginput_complex label {
    margin-top: 0.2em !important;
}

/* STEPS */
body .gform_wrapper .gf_page_steps {
    border-top: 1px solid lightgrey !important;
    border-bottom: 1px solid lightgrey !important;
    padding-top: 8px !important;
    
    padding-bottom: 8px !important;
    margin-top: 1em;
}

body .gform_wrapper .gf_page_steps::before {
    content: "Steps";
    display: block;
    width: 100%;
    font-weight: 500;
    font-size: 1.1rem;
    margin-bottom: 0.5em;
}

body .gform_wrapper .gf_page_steps .gf_step {
    margin-right: 16px;
}

body .gform_wrapper .gf_page_steps .gf_step_number {
    font-size: 1rem;
    font-weight: 500;
}

body .gform_wrapper .gf_page_steps .gf_step_label {
    font-size: 0.92rem;
    font-weight: 500;
    padding-left: 8px;
}



/* SECTION BREAKS */
body .gform_wrapper .gform_body .gform_fields .gsection:not(.mastdlp_first_section) {
    margin-top:44px;
    padding-top: 24px;
    border-top: 4px dashed #253e4aaa;
    border-bottom: none;
    padding-bottom: 0;
}


body .gform_wrapper .gform_body .gform_fields .gsection.mastdlp_first_section {
    border-bottom: none;
    padding-bottom: 0;
}

/* CHECK BOX */

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox {
    border: none;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox .gform-field-label {
    font-size: 1.1rem;
    font-weight: 500;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox .gchoice {
    display: grid;
    grid-template-columns: 44px auto;
    gap: 0.5em;
    margin-bottom: 0.5em;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox label {
    max-width: 100%;
}

#mati_newsletter_checkbox_field .optional {
    display: none;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox input[type=checkbox] {
    appearance: none;
    color: #253e4a;
    width: 32px;
    height: 32px;
    background-color: #fff;
    border: 2px solid #253e4a;
    border-radius: 4px;
    display: grid;
    place-content: center;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox input[type=checkbox]::before {
    content: "";
    width: 24px;
    height: 24px;
    clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
    transform: scale(0);
    transform-origin: bottom left;
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em;

}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox input[type=checkbox]:checked::before {
  transform: scale(1);
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox input[type=checkbox]:hover {
  border: 3px solid #253e4a;
}

/* RADIO BUTTONS */

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio {
    border: none;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio .gform-field-label {
    font-size: 1.1rem;
    font-weight: 500;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio .gchoice {
    display: grid;
    grid-template-columns: 44px auto;
    gap: 0.5em;
    margin-bottom: 0.5em;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio label {
    width: 100%;
    max-width: 100%;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio input[type=radio] {
    appearance: none;
    -webkit-appearance: none;
    color: #253e4a;
    width: 28px;
    height: 28px;
    background-color: #fff;
    border: 2px solid #253e4a;
    border-radius: 50%;
    display: grid;
    place-content: center;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio input[type=radio]::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    transform: scale(0);
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em;
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio input[type=radio]:checked::before {
  transform: scale(1);
}

body .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio input[type=radio]:hover {
  outline: 1px solid #253e4a;
  outline-offset: -3px;
}


.gform_wrapper.gravity-theme .gfield.gf_list_2col .gfield_checkbox, .gform_wrapper.gravity-theme .gfield.gf_list_2col .gfield_radio {
    
    grid-row-gap: 12px;
}


/* SELECT FIELD */
body .gform_wrapper .gform_body .gform_fields .gfield:not(.gfield--type-address) select {
  box-sizing: border-box;
  appearance: none;
  background-color: transparent;
  border: none;
  margin: 0;
  padding: 0;
  width: 100%;
  font-family: inherit;
  font-size: inherit;
  cursor: inherit;
  line-height: inherit;
  z-index: 1;
  outline: none !important;
  &::-ms-expand {
    display: none;
  }


}

body .gform_wrapper .gform_body .gform_fields .gfield:not(.gfield--type-address) .ginput_container_select {
    box-sizing: border-box;
    display: grid;
    grid-template-areas: "select";
    align-items: center;
    position: relative;
    
    select, 
    &::after {
      grid-area: select;
    }
    
    min-width: 15ch;
    max-width: 100%;
    border: 2px solid #253e4a;
    border-radius: 4px;
    padding: 0.8em;

    font-size: 1.1rem;
    font-weight: 400;
    cursor: pointer;
    line-height: 1.2;
    background-color: #fff;
    
    &::after {
      content: "";
      justify-self: end;
      width: 1.2em;
      height: 0.8em;
      background-color: #253e4a;
      clip-path: polygon(100% 0%, 0 0%, 50% 100%);
    }
    &:focus-within {
        outline: 3px solid #78AEF2;
    }
}

/* TIME FIELD */

body .gform_wrapper .gform_body .gform_fields .gfield--type-time .ginput_container {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
}

body .gform_wrapper .gform_body .gform_fields .gfield--type-time .ginput_container .hour_minute_colon {
    font-size: 1.2rem;
    font-weight: 600;
}

body .gform_wrapper .gform_body .gform_fields .gfield--type-time .ginput_container .gfield_time_ampm {
    font-size: 1.1rem;
    font-weight: 600;
    display: grid;
    grid-template-areas: "select";
    align-items: center;
    position: relative;
    min-width: 5ch;
    background-color: #fff;
    border: 2px solid #253e4a;
    border-radius: 4px;
    padding: 12px 8px;
}

body .gform_wrapper .gform_body .gform_fields .gfield--type-time .ginput_container .gfield_time_ampm::after {
    content: "";
    grid-area: select;
    justify-self: end;
    width: 0.8em;
    height: 0.5em;
    background-color: #253e4a;
    clip-path: polygon(100% 0%, 0 0%, 50% 100%);
}


body .gform_wrapper table.gsurvey-likert td.gsurvey-likert-choice {
    padding: 1.5em 0;
}

body .gform_wrapper table.gsurvey-likert th.gsurvey-likert-choice-label {
    font-size: 1rem;
    font-weight: 600;
}

body .gform_wrapper table.gsurvey-likert .gsurvey-likert-row-label {
    font-size: 1rem;
    font-weight: 500;
    padding: 4px;
}


/* GRAVITY FOOTER (Submit buttons etc) */

body .gform_wrapper .gform_footer {
    margin-top: 32px;
    margin-bottom: 44px;
}

/* READ ONLY FIELDS */

body .gform_wrapper .gform_body .gform_fields .mati_read_only_field {
    width: 100%;
    display: grid;
    grid-template-columns: 16ch auto !important;
    column-gap: 12px;
    justify-items: start;
    align-items: center;
}

body .gform_wrapper .gform_body .gform_fields .mati_read_only_field .gform-field-label {
    font-weight: 700 !important;
    line-height: 1em;
    margin: 0;
}

body .gform_wrapper .gform_body .gform_fields .mati_read_only_field input {
    width: 100% !important;
    border: 0;
    padding: 0;
    background-color: transparent;
    line-height: 1em;
}

body .gform_wrapper .gform_body .gform_fields .mati_read_only_field .ginput_container {
    width: 100% !important;
}

body .gform_wrapper .gform_body .gform_fields .mati_indent_sub_q {
    margin-top: -20px;
    padding: 0 0 0 36px;
    border-left: 3px solid #253e4aaa;
}
body .gform_wrapper .gform_body .gform_fields .mati_indent_sub_q legend {
    padding-top: 20px;
}


/* POST-SUBMISSION CONFIRMATION MESSAGE */
body .gform_confirmation_wrapper {
    margin-top: 24px;
    margin-bottom: 48px;
    font-weight: 700;
}


/* POST-SUBMISSION FIELD VALIDATION ERROR */
body .gform_wrapper .gform_body .gform_fields .gfield_error {
    outline: 3px dashed red;
    outline-offset: 12px;
}

body .gform_wrapper .gform_body .gform_fields .gfield_error .gfield_validation_message {
   font-weight: 700;
   color: #cc0000;
   margin-top: 6px;
}



/* SAVE AND CONTINUE BUTTON FOR APPLICATION FORM */
#gform_wrapper_7 .gform-page-footer {
    height: 6em;
}

#gform_wrapper_7 .gform-page-footer .gform_save_link {
    position: absolute;
    border: none;
    background-color: transparent;
    text-decoration: underline;
    bottom: 0;
    right: 0;
    padding-right: 40px !important;
    margin-left: 0 !important;
    margin-bottom: 1em !important;
}


#gform_wrapper_7 .gform-page-footer .gform_save_link svg {
    display: none;
}

body .gform_wrapper .form_saved_message {
    padding: 16px 24px 24px 16px;
    margin-top: 2em;
    border: 1px solid #666;
    border-radius: 16px;
}


body .gform_wrapper .form_saved_message h4 {
    margin-top: 1em;
}

body .gform_wrapper .form_saved_message label {
    font-size: 1.4rem;
}

/* APPLICATION FORM PREVIEW PAGE */

body .gform_review_page > div > div > div > table > tbody > tr > td:first-child {
  padding: 0;
  border: none;
}


body .gform_review_page table tbody tr td font {
    font-size: 1rem !important;
    line-height: 110% !important;
}


body .gform_review_page table tbody tr td font a {
    font-size: 1rem !important;
    line-height: 110% !important;
}

body .gform_review_page table tbody tr td .map-it-link {
    display: none;
}


body .gform_review_page table tbody tr td ul {
    padding-left: 12px;
}


body .gform_review_page table tbody tr td ul li:not(:last-child) {
    margin-bottom: 1em;
}




/* MOBILE SYLES */

@media screen and (max-width: 767px) {
body .gform_wrapper .gform_body .gform_fields .mati_read_only_field {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr !important;
    column-gap: 12px;
    justify-items: start;
    align-items: start;
}

body .gform_wrapper .gform_body .gform_fields .mati_indent_sub_q {
    margin-top: -50px;
    padding: 0 0 0 20px;
}
body .gform_wrapper .gform_body .gform_fields .mati_indent_sub_q legend {
    padding-top: 50px;
}

}
